ما هي لغة البرمجة روبي Ruby ؟.. مميّزات وعيوب وأبرز إستخداماتها

ما هي لغة البرمجة روبي Ruby

تصنّف روبي ضمن فئة


لغات البرمجة


النصيّة scripting language، تمّ بنائها بالكامل من أجل استخدامها في مجالات تطوير الويب، مثل: تصميم واجهات المستخدم front end أو العمل على السيرفر back end أو التطبيقات المشابهة. تتميّز لغة روبي بالقوّة والسرعة، وبأنّ كتابتها وتخصيص الذاكرة فيها يتمّ بشكل ديناميكي، وباعتمادها مبادئ

البرمجة

كائنيّة التوجّه. إضافة إلى ذلك، يتّصف تركيب الجملة الخاصّ باللغة أو ما يُعرف بال syntax بأنّه عالي المستوى وسهل الفهم لدرجة يمكن اعتباره فيها بأنّه أقرب ما يكون لكتابة الأكواد باللغة الإنكليزّية.

حيث أظهر العديد من الأشخاص أنّهم قادرين على معرفة محتوى الأكواد البرمجيّة المكتوبة بلغة روبي، دون أن يمتلك أيّ خلفيّة معرفيّة عن عالم البرمجة.

تمّ إصدار لغة البرمجة روبي لأوّل مرّة في تسعينات القرن الماضي، وقد تمّ تطويرها من قبل

المبرمج

الياباني الذي يُدعى Yukihiro “Matz” Matsumoto، وبقيت اللغة مفتوحة المصدر إلى وقتنا هذا. وصرّح هذا المبرمج بأنّه عمل على تصميم تلك اللغة ليكون التعامل بها مُمتعًا مع ضمان أعلى مستويات الإنتاجيّة. ولغات البرمجة النصيّة هي أحد


أنواع لغات البرمجة


القادرة على تنفيذ الأوامر والتعليمات بشكل حُرًّ ومباشر، دون ضرورة تحويل كامل الكود وترجمته للغة الآلة قبل التنفيذ.

أبرز إستخدامات لغة البرمجة روبي

إنّ المجال الرئيسي الذي تستخدم فيه لغة البرمجة روبي هو بناء تطبيقات الويب والمواقع الإلكترونيّة. وعلى الرغم من ذلك، تعتبر تلك اللغة متعدّدة الاستعمالات بشكل يشبه واقع لغة البرمجة Python، لذا يمكن الاعتماد عليها ضمن تطبيقات أخرى، مثل: تحليل البيانات data analysis، وإعداد النماذج الأوليّة prototyping، وإثبات المفاهيم proof of concepts.

ربّما يكون

أشهر

تطبيقات تلك اللغة البرمجيّة هو إطار العمل الذي يُدعى Ruby on Rails، والذي تمّ بناءه بواسطة تلك اللغة من أجل تسهيل عمليّات تطوير تطبيقات الويب. من التطبيقات الأخرى ذات الشهرة الواسعة والتي تمّ بنائها باستخدام ذات اللغة، الأداة التي تُسمّى Homebrew والتي تستخدم لتنصيب وتثبيت حزم التطبيقات packages على نظام التشغيل macOS الخاصّ بشركة آبل. والأمر ذاته ينطبق على تطبيق الحماية الذي يُدعى Metasploit، والذي يسمح للمستخدمين بإجراء اختبارات الخصوصيّة والأمان للمواقع الإلكترونيّة والتطبيقات للوقوف على جاهزيّتها وقدرتها على مقاومة محاولات القرصنة والاختراق التي قد تتعرّض لها.

كما تتوفّر العديد من التطبيقات المعروفة بين عموم المستخدمين، والتي تمّ بناؤها بالكامل من قبل المطوّرين باستخدام لغة البرمجة روبي وإطار العمل Rails web. وهذا يتضمّن

موقع

إقامة الحجوزات الشهير AirBnB، والمنصّة التي تُقدّم خدمات البث التلفزيوني Hulu، وموقع Github الشهير الذي يُستخدم من قبل عموم المُبرمجين من جميع أنحاء

العالم

جنبًا إلى جنب مع نظام التحكّم بالنسخ وإدارة المُراجعات الذي يّدعى git، وموقع Goodreads الغني عن التعريف، والذي يعتبر الخيار المُفضّل لمُحبّي القراءة للاطّلاع على التقييمات الخاصّة بالكتب، مع إمكانيّة كتابة المُراجعات reviews لها ومعرفة الكتب التي يقرأها الأصدقاء. وكذلك تطبيق MyFitnessPal والذي يُوفّر إمكانيّة تتبّع مقادير السعرات الحراريّة التي يتناولها الأفراد يوميًّا من خلال وجباتهم.

بالنتيجة، يُمكن للغة البرمجة روبي وإطار عملها Ruby on Rails أن تُساعدك على بناء موقعك الإلكتروني وضمان حمايته تجاه عمليّات الاختراق، وإيجاد العرض التلفزيوني الذي يناسبك بينما أنت على متن رحلتك الترفيهيّة بالاعتماد على Airbnb، وتحقيق أهدافك من النظام الغذائي الذي تتّبعه عبر التحكّم بمقدار السُّعرات الحرارية الواردة من خلال الطعام. وهذا بطبيعة الحال أمرًا عظيمًا كونها بالنهاية عبارة عن لغة برمجة بسيطة. [1]

لمحة عن إطار العمل Ruby on Rails

ممّا لا شكّ فيه، أنً لإطار العمل Ruby on Rails النصيب الأكبر في المُساهمة بمقدار الشعبيّة والشهرة التي تحظى بها لغة البرمجة روبي. وقد تمّ إصدار النسخة الأولى من إطار العمل هذا في العام 2003، وبشكل مفتوح المصدر بالكامل كما هو الحال للغة البرمجة المُستخدمة في تطويره. ليُستخدما معًا في تطوير وبناء ما يُقارب ال 350,000 موقع إلكتروني منذ ذلك الحين حتّى هذه اللحظة، وما تزال تلك المعدّلات بازدياد مستمر وثابت في أيّامنا هذه. وكانت الفكرة الأساسيّة وراء تطوير إطار العمل ROR هي توفير الراحة للمبرمجين أثناء عمليّة تطوير التطبيقات، وكتابة الأكواد البرمجيّة بشكل أكثر أناقة. إذ لن يحتاج مطوّر الويب الذي يعمل من خلال ROR لكتابة جميع الأسطر البرمجيّة بنفسه، لما لذلك من آثار سلبيّة واضحة على سرعة عمليّة التطوير، وإنّما يمكن له الاستعانة ببعض الحلول الجاهزة والمزايا التي توفّرها له تلك التقنيّة والتي تأخذ على عاتقها تنفيذ جميع المهام الروتينيّة أو المُكررّة بشدّة، مثل: إنشاء ال forms أو الجداول أو القوائم، لإتاحة الفرصة أمام المبرمج للتركيز على إنجاز الأجزاء الأكثر أهميّة وخصوصيّة ضمن عمليّة تطوير تطبيقات الويب أو الموبايل.

مميّزات إطار العمل Ruby on Rails


  • نظام إيكولوجي واسع:

    وهنا يظهر تفوّق ROR مقارنة باللغات وإطارات العمل الأخرى. وتحديدًا بفضل خدمة استضافة الجواهر Ruby gems التي تلقى الدعم من قبل مجتمع المطوّرين، والتي تُتيح للجميع إمكانية الوصول لتلك الجواهر، التي عادةً ما تكون على شكل إضافات، أو مكتبات، أو أجزاء

    قصيرة

    من الأكواد، والتي تُمثّل حلولًا للصعوبات التي عادةً ما تُعيق التقدّم أثناء عمليّة التطوير.

  • اعتماد نمط التصميم MVC:

    اختصارًا لعبارة Model-View-Controller، والتي يتمّ من خلالها تقسيم مهمّة تطوير التطبيق لثلاث مهام فرعيّة، الأولى Models وظيفتها إدارة البيانات والمنطق المتعلّق بسوق العمل، والثانية Controllers تتولّى مهمّة التعامل مع واجهات المستخدم للتطبيقات، والثالثة Views للتحكّم بأداء وأجزاء الواجهات الرسوميّة.

  • الاستمراريّة ونظافة الكود:

    وهو ما يساعد على إجراء التعديلات مُستقبلًا بسلاسة وانسيابيّة، بفضل قابليّة القراءة high readability وسهولة فهم الأكواد من قبل المبرمجين الآخرين، ممّا يجعل عمليّة التطوير أكثر سرعة وأقل كلفة ماديّة.

  • اعتمادها مبدأ DRY:

    اختصارًا لعبارة Don’t repeat yourself، أي أنّك لن تحتاج لإضاعة أوقاتك الثمينة في أداء المهام الروتينيّة التي يتمّ تكرارها أكثر من مرّة.

  • إمكانيّات التوسّع اللامحدودة:

    وتعني قدرة التطبيق الذي تمّ تطويره من خلال ROR على الاستجابة لآلاف الطلبات requests التي تمّ إرسالها من قبل المستخدمين في الثانية الواحدة. وتُمثّل منصّة Shopify للتجارة الإلكترونيّة أحد أفضل الأمثلة لتوضيح تلك النقطة، إذ يمكنها التعامل مع ما يصل ل 80 ألف request في الثانية.
  • إضافةً للمستويات العالية من

    الأمان

    – وسرعة تطوير التطبيقات – وتوفّر بيئة متخصّصة لإجراء الاختبارات Testing – ووجود القواعد التي تحكم عمليّة إعداد الملفّات

عيوب إطار العمل Ruby on Rails


  • صعوبة التوثيق:

    قلّة هم المُطوّرين اللذين يتمكّنون من إجراء عمليّات التوثيق لكامل الأجزاء ضمن تطبيقهم.

  • سرعة التنفيذ:

    عند مقارنة ROR بالتقنيات المشابهة مثل JS أو GoLang، نجد أنّ الكفّة تميل لصالح تلك التقنيّات المُنافسة.

  • سرعة التمهيد:

    هي واحدة من الجوانب المُزعجة المرتبطة ب ROR، نظرًا لأنّها تستغرق وقتًا ليس بقليل، وذلك بحسب أعداد الملفّات والجواهر المُستخدمة.

  • استضافة الموقع:

    لا توفّر جميع منصّات استضافة المواقع الدعم لتقنيّة Ruby on Rails، وخصوصًا ضمن الفئة الاقتصاديّة، وذلك بسبب استهلاكها الكبير للموارد وتكلفتها العالية نسبيّا أثناء التشغيل. [2]