هيليكس (قاعدة بيانات)

هيليكس هو نظام إدارة قواعد بيانات لمنصة أبل ماكنتوش ، تم إنشاؤه عام ١٩٨٣. يستخدم هيليكس " لغة برمجة " رسومية لإضافة منطق إلى تطبيقاته، مما يسمح لغير المبرمجين بإنشاء تطبيقات متطورة. كان هيليكس أول قاعدة بيانات متعددة المستخدمين على أي منصة حاسوب شخصي، وأول أداة برمجة مرئية قائمة على الكائنات، وأول قاعدة بيانات علائقية على منصة حاسوب شخصي.

تاريخ

تم إنشاء Helix في الأصل بواسطة شركة Odesta Corporation في نورثبروك، إلينوي في عام 1983 على جهاز Macintosh الأصلي، وقد حظي بتقييمات رائعة عند إصداره لأول مرة في أواخر عام 1984.

في ذلك الوقت، كان نظام ماك يدعم أقراصًا مرنة بسعة 400 كيلوبايت فقط للتخزين. في البداية، كان المستخدمون يشغلون نظام Helix من قرص مرن مثبت عليه النظام، وهو القرص الذي كان يُخزّن عليه نظام التشغيل قبل ظهور الأقراص الصلبة . لم يترك هذا التكوين مساحة كافية للتطبيقات أو البيانات. كان يُفترض أن يُضيف المستخدمون محرك أقراص مرنة ثانيًا لأي استخدام عملي، بحيث يكون نظام التشغيل وHelix على قرص، والبيانات على قرص آخر. على الرغم من هذه القيود الأولية، كان Helix قاعدة بيانات علائقية قوية .

في مايو 1986، أصدرت شركة أوديستا برنامج Double Helix . أتاحت مجموعة الميزات الجديدة الرئيسية إمكانية إنشاء قوائم وأشرطة قوائم مخصصة، مما أدى إلى تطبيقات "مستقلة". بالمقارنة، كان برنامج Helix الأصلي يُنتج تطبيقات تعمل بوضوح داخل بيئة Helix. وقد تضمنت حزمة Helix، التي صدرت كجزء من مجموعة برامج أكبر، إصدارًا مستقلاً للتشغيل يُعرف باسم RunTime Helix، والذي يسمح للمستخدمين بتشغيل تطبيقات Double Helix دون تثبيت النسخة الكاملة، بالإضافة إلى MultiUser Helix الذي يعمل بنظام العميل والخادم .

شهدت سلسلة منتجات Helix تحديثات مستمرة خلال ثمانينيات القرن الماضي، لكن الشركة أنفقت وقتًا ومالًا طائلين على نسخة تُعرف باسم Remote Helix ، والتي كانت تُشغّل نظام تطوير Helix الأساسي على قواعد بيانات VAX . كان الهدف هو توفير تجربة استخدام شبيهة بنظام Mac على أنظمة الحواسيب الضخمة ، وهو توجه شائع في أوائل التسعينيات. كما أصدرت الشركة عددًا من الأدوات ذات الصلة، مثل GeoQuery و Data Desk ، لتحليل قواعد البيانات. مع ذلك، سرعان ما تراجعت شعبية VAX، ولم يحقق المنتج نجاحًا كبيرًا.

في عام ١٩٩٢، انفصلت شركة أوديستا، وانفصلت تطبيقات هيليكس الأصلية. وعادت دبل هيليكس للظهور باسم هيليكس إكسبريس في شركة هيليكس تكنولوجيز ، حيث تم تسويقها كشركة رائدة في الأداء بدلاً من كونها "سهلة الاستخدام". تورطت الشركة الأم في معركة قانونية مكلفة لا علاقة لها بالموضوع، وتراجعت هيليكس. في عام ١٩٩٨، استحوذت شركة ذا تشيب ميرشانت، وهي شركة توريد ذاكرة مقرها سان دييغو، على هيليكس تكنولوجيز، وأصدرت تحديثًا رئيسيًا في عام ٢٠٠٠، أضافت فيه إمكانيات بروتوكول TCP/IP إلى عميل/خادم هيليكس، وحسّنت أداء خط الإنتاج بأكمله بشكل ملحوظ. ومع ذلك، أدى انخفاض أسعار الذاكرة وتراجع الاقتصاد إلى إفلاس شركة ذا تشيب ميرشانت في عام ٢٠٠٢، مما أدخل هيليكس في مأزق قانوني. تم شراؤها في عام 2004 من قبل اثنين من الأشخاص الذين كانوا يديرون عملياتها اليومية، جيل نوميروف ومات سترينج، بدعم مالي من رجل أعمال لم يذكر اسمه ومستخدم قديم لبرنامج Helix، مما أدى إلى تشكيل شركة جديدة: QSA ToolWorks .

أعادت شركة QSA لاري أتكين، أحد مؤسسي Helix، إلى فريق العمل، ثم أعادت لاحقًا ستيف كايزر، المصمم الأصلي لـ MultiUser Helix. وبدأ هذا الفريق الجديد، الذي أُطلق عليه اسم " فريق استعادة Helix" ، مهمة إعادة كتابة منتجات Helix الكلاسيكية لتعمل بشكل أصلي على نظام التشغيل Mac OS X. وتم إطلاق خادم Helix لنظام التشغيل OS X، بالإضافة إلى ثلاث أدوات تشخيص وصيانة أصلية، في ديسمبر 2005.

بعد شهر واحد، أعلنت آبل عن أولى منتجاتها التي تعتمد على معالجات إنتل بدلاً من باور بي سي ، مما اضطر شركة QSA إلى تغيير استراتيجيتها والبدء في تحويل شفرتها البرمجية إلى صيغة Universal Binary . وقد أجبر هذا على الانتقال من بيئة التطوير المتكاملة CodeWarrior إلى Xcode ، وبعدها أصدرت الشركة نسخًا أصلية من منتجاتها الثلاثة الموجهة للمستخدم النهائي ، متوافقة مع معالجات إنتل. كانت الإصدارات الأولى (المعروفة باسم "إصدارات المعاينة") تفتقر إلى بعض الميزات وكانت غير مستقرة، ولكن التحديثات المتكررة (خمسة تحديثات في عام 2008 وحده) عالجت هذه المشكلات. وركزت تسعة تحديثات أخرى في عامي 2009 و2010 على استكمال مجموعة الميزات، والقضاء على الأخطاء المتبقية، وتحسين الأداء.

في الوقت نفسه، بدأت شركة QSA العمل على نقل بيئة تطوير Helix المتكاملة (المعروفة باسم "Helix RADE") إلى نظام التشغيل OS X. أُعلن عن المشروع لأول مرة في ديسمبر 2009، وكان يحمل الاسم الرمزي Europa ، في إشارة غير مباشرة إلى فيلم 2010. [ 1 ] في يونيو 2011 ، بدأت QSA بإصدار "إصدارات تجريبية" - وهي نسخ تتضمن بعض الميزات، وليس جميعها، التي تم نقلها إلى نظام التشغيل OS X. [ 2 ] استمر نقل الميزات حتى اكتماله في يونيو 2013. [ 3 ]

في سبتمبر 2022، باعت شركة QSA Toolworks عائلة برامج Helix إلى شركة Big Giant Donut Inc.، ومقرها نيو مكسيكو، وهي شركة سبق لها تطبيق حلول قائمة على Helix في العديد من شركات التصنيع والتكنولوجيا. [ 4 ] انضم لاري أتكين وستيف كايزر إلى Big Giant Donut للعمل على منصة برمجية جديدة تُسمى "Donut"، مبنية على مفاهيم Helix. [ 5 ] صُممت Donut للعمل على أجهزة حديثة 64 بت، ولتشغيل برامج العميل داخل متصفح الإنترنت. وفي إطار العمل على ذلك، أتاحت Big Giant Donut أحدث إصدارات برنامج Helix للتحميل مجانًا من موقعها الإلكتروني. [ 6 ]

وصف

يُعرف مشروع Helix باسم " مجموعة "، وهو "مستند" يُنشئه Helix RADE (اختصارًا لـ " بيئة تطوير التطبيقات السريعة "). ويُمثَّل في النظام بواجهة سطح مكتب افتراضية تُشبه Finder في نظام Macintosh. قد تحتوي المجموعة على آلاف قواعد البيانات الفردية (المعروفة أيضًا بالعلاقات أو الجداول). تفتح تطبيقات Helix مجموعة واحدة فقط في كل مرة. ومع ذلك، يُمكن شراء تراخيص للوصول إلى مجموعات متعددة في وقت واحد، ويقتصر ذلك بشكل أساسي على الذاكرة المتاحة.

يؤدي فتح مجموعة إلى ظهور نافذة مشروع تتألف من جزأين رئيسيين، يتم التحكم بهما بالكامل بواسطة مجموعة فريدة من عناصر واجهة المستخدم الرسومية . على اليسار، توجد مجموعة من مربعات الأيقونات ، التي تمثل العناصر الجديدة التي يمكن إنشاؤها، بينما تعرض نافذة قابلة للتمرير على اليمين (تُعرف بنافذة المجموعة ) العناصر التي أنشأها المستخدم. يتم سحب الأيقونات من مربعات الأيقونات على اليسار إلى النافذة لإنشاء عناصر جديدة في المجموعة. تشمل هذه العناصر العلاقات (الجداول) لتخزين البيانات، والتسلسلات (وحدات الماكرو) لأتمتة المهام، بالإضافة إلى إمكانية إنشاء قوائم مخصصة للمستخدم النهائي. تُعد هذه إحدى أبرز ميزات Helix وأكثرها قوة.

في قسم العلاقات، يتم إنشاء جداول قاعدة البيانات (مجموعات من البيانات ذات الصلة). تحتوي العلاقات على حقول لتحديد أنواع البيانات، وعداد لتحديد العلاقات بين البيانات وإنشاء معلومات لا يمكن للحقول وحدها تقديمها، وفهارس لتنظيم البيانات وتحسين الأداء، واستعلامات للعثور على البيانات، و"قوالب" لهيكلة المعلومات بصريًا ولإدخالها وتعديلها وحذفها وطباعتها من "طرق عرض" تجمع بين القوالب والاستعلامات والفهارس لمنح المستخدم إمكانية الوصول إلى المعلومات والتحكم فيها.

يستخدم المعداد نظامًا رسوميًا بالكامل لإجراء العمليات الحسابية. يمكنك وصف العملية الحسابية المطلوبة عن طريق سحب أيقونات تمثل العمليات والحقول إلى نافذة محرر المعداد، ثم ترتيبها في مخطط تدفق البيانات. على سبيل المثال، لكتابة "الاسم الأول متبوعًا بمسافة متبوعة باسم العائلة"، اسحب أيقونة "متبوعًا بـ"، ثم اسحب حقل "الاسم الأول" إلى الجزء الأول من الأيقونة، واضبط مسافة كجزء ثانٍ؛ ثم اسحب أيقونة "متبوعًا بـ" ثانية، وأدخل سهم الإخراج من الأولى إلى الجزء الأول من الثانية، واسحب حقل "اسم العائلة" إلى الجزء الثاني منها.

يعمل برنامج Helix RADE في وضعين: وضع التصميم ووضع المستخدم. في وضع المستخدم، تُفتح مجموعة Helix في أحد أشرطة قوائم المستخدم المُحددة، مما يسمح للمستخدم باستخدام قاعدة البيانات كما يستخدم أي تطبيق آخر. أما وضع التصميم، فيتيح للمطور (أو المستخدم المتقدم) تعديل تصميم قاعدة البيانات، وإضافة حقول، وإنشاء تقارير جديدة، وما إلى ذلك.

رغم أن لغات البرمجة التقليدية تهدف إلى تبسيط البرمجة، إلا أنها غالبًا ما تُغفل جوهرها: فالبرمجة ليست صعبة بسبب الكتابة، بل لأن التعقيد يصل سريعًا إلى مستوى يصعب معه فهم المشروع. نظريًا، يمكن للغة رسومية أن تُقلل هذا التعقيد بشكل كبير (انظر البرمجة المقصودة للاطلاع على أمثلة). في بعض الحالات، تُحقق هذه اللغات ذلك، ولكن في كثير من الأحيان تُفاقم المشكلة. تُعد Helix أداة سهلة الاستخدام، إذ تُتيح مسارات متعددة للوصول إلى النتيجة نفسها. في أيدي المستخدمين غير الماهرين، كما هو الحال مع أي أداة، قد تُصبح العمليات الحسابية المعقدة مُرهقة، مما يتطلب من المبرمج شاشة كبيرة (أو شاشتين) للعمل بكفاءة. مع ذلك، يجد المستخدمون الماهرون أن أسلوبها المرئي مُوفر للوقت ومُحرر، مع قيود قليلة جدًا.

على الرغم من كفاءة Helix العالية في التعامل مع قواعد البيانات الصغيرة والمتوسطة الحجم، إلا أن مشكلتها الشائعة تكمن في أنها، طوال معظم تاريخها، كانت تعمل فقط في بيئة تعدد المهام التعاونية لنظام التشغيل Mac OS الكلاسيكي ، مما يجعلها غير مستقرة نسبيًا مع قواعد البيانات الكبيرة. ورغم أن لغة البرمجة نفسها تتمتع بقابلية التوسع اللازمة لإنشاء قواعد بيانات معقدة، إلا أن عدم قدرتها على العمل بكفاءة في بيئة تعمل على مدار الساعة طوال أيام الأسبوع يحصر استخدام Helix في مجموعات عمل تضم 100 مستخدم أو أقل. مع ذلك، تتلاشى هذه القيود بسرعة. فقد أصدرت QSA نسخة من خادم Helix لنظام التشغيل OS X في ديسمبر 2005، وبدأت بطرح باقي منتجاتها بنسخ متوافقة مع نظام التشغيل OS X خلال عامي 2006 و2007.

بالنسبة لمن لديه خبرة في Helix، يمكن أن يكون التوفير في وقت التطوير كبيرًا. يُقدّر أحد الخبراء، وهو أيضًا مدرب/مطور رائد في Microsoft Access ، أنه اعتمادًا على حجم المشروع، يمكن إنجاز مشروع Helix في 30-70% من الوقت اللازم لإنجاز مشروع Access مماثل. ويعود هذا التوفير بشكل خاص إلى غياب "لغة" البرمجة، وبالتالي التخلص من جميع أخطاء بناء الجملة. وبما أن Helix يمنع المطور من ارتكاب أخطاء في بناء الجملة أو البرمجة، فإن مصادر المشاكل المتبقية تنبع من أخطاء في منطق العمل . تواجه جميع اللغات هذه المشكلة، لكن Helix يُسهّل مرة أخرى عملية تتبع المشاكل بفضل طبيعته القائمة على الكائنات والرسومات. ولأن جميع الكائنات مرتبطة (عبر أيقونات، وليس عبر البرمجة)، فإن النظام "يعرف" الكائنات التي تستخدمها الكائنات الأخرى وكيفية استخدامها، مما يُبسّط عملية تتبع أخطاء منطق العمل، كما يوفر طريقة سهلة لتحديد كل ما سيتأثر بتغيير مُقترح على أي كائن.

قيود البرمجة المرئية باستخدام Helix

في Helix، يجب على المرء أن يقوم بتأليف جميع التعليمات البرمجية بشكل رسومي - وبالتالي، يتم بناء بنية if...then...else باستخدام أدوات من نوع مخطط التدفق مثل معينات القرار، ويتم تنفيذ الحلقات باستخدام الموصلات.

على الرغم من أن البرمجة المرئية في Helix قد تكون أسهل للمبتدئين في التعلم (لأنها تستخدم نموذجًا لتخطيط التدفق يفهمه الأفراد غير التقنيين بشكل بديهي)، إلا أنها قد تصبح مملة عندما يصبح مقدار التعليمات البرمجية المطلوب كتابتها كبيرًا، خاصة بالنسبة لشخص يمكنه كتابة التعليمات البرمجية بسهولة وراحة أكبر بكثير مما لو اضطر إلى سحب الرموز من لوحة.

ولهذا الغرض، عندما تم تحديث Helix RADE ليعمل بشكل أصلي على أجهزة Intel Mac، تمت إضافة "لغة تعبير المعداد" لتوفير هذه الإمكانية لأولئك الذين يحتاجون إليها.

مراجع

  1. "آخر الأخبار: سيحدث شيء ما..." . مؤرشف من الأصل بتاريخ 16 مايو 2011. تم الاطلاع عليه بتاريخ 10 مارس 2011 .
  2. "آخر الأخبار: تفضلوا بالدخول: Helix RADE يصل إلى macOS (6.2 PR1)" . مؤرشف من الأصل بتاريخ 28 يوليو 2012. تم الاطلاع عليه بتاريخ 18 يونيو 2013 .
  3. "آخر الأخبار: Helix RADE 6.2: انتهت المرحلة التمهيدية" . مؤرشف من الأصل بتاريخ 21-10-2013 . تم الاطلاع عليه بتاريخ 18-06-2013 .
  4. مع استحواذها على شركة Helix Software من شركة QSA Toolworks، تراهن شركة Big Giant Donut بقوة على جاذبية تطوير التطبيقات بدون كتابة أكواد للجيل الجديد، 1 سبتمبر 2022
  5. "تنزيلات برنامج Helix" .