الجمعة، 8 أبريل، 2011

5 بيئات عمل لبناء المواقع بواسطة Ruby بعيدا عن Ruby on Rails

ارتبط كثيرا اسم اللغة Ruby ببيئة عمل المواقع Ruby on Rails، والتي وصلت الآن إلى نسختها الثالثة وأخدت شهرة واسعة في عالم الويب و تستعمل في أشهر المواقع العالمية أمثال: Twitter, Github, Gruppon...

لكن يمكن أن تكون عندك صعوبات في تعلم التعامل مع بيئة العمل هذه، أو لا تحبذ العمل مع نموذج التصميم MVC، اذن ما عليك إلا الاختيار بين مجموعة بيئات العمل المتوافرة على الانترنت و التي تخص لغة Ruby، لن أطيل عليكم و لنقم بالتعرف عليها :) .

Sinatra

اخترت البدء بها لأني رأيت مشروعا عربيا أنجز بها و هو مشروع Hsoub Ads، و كما رأيت في أحد تعليقات صاحب المشروع أنهم قاموا بإنجاز فراموورك مبني على Sinatra، لنعد إلى الحديث عن بيئة العمل هذه و التي تعتبر إحدى أسهل بيئات العمل حيث يمكن بناء مشروع متكامل في ملف وحيد أو تقسيم العمل على ملفات متعددة، وهي مفتوحة المصدر و مجانية و استعملت في مشاريع مشهورة مثلاً: BBC, Github, Heroku, Songbird...

دون أن نهمل أن Sinatra كان مصدر استلهام للعديد من بيئات العمل في لغات أخرى.



Merb

هده البيئة تعتمد على نموذج التصميم MVC و لديها ارتباط كبير كما يحكى عنها بـ Ruby on Rails لأني شخصياً لم يسبق لي تجربتها، وتمتاز بثلاث أسس تميزها (السرعة، البساطة، القوة)، وهي أيضاً حديثة النشأة.

و تمتاز Merb بتوفرها على نظام الـ Plugins و أيضاً Documentation جيدة.

Ramaze

أول مرة تعرفت عليها و هو حين قرأت عنها في كتاب Apress Beginning Ruby .. ، و تم ذكر ثلاث بيئات عمل و كانت هي ruby on rails , sinatra, ramaza، و هي بيئة عمل تعتمد أيضاً على MVC، أصحاب المشروع يمدحونه لكونه بسيطاً وخفيفاً، و يجمع بين قوة ما سبقه من بيئات عمل، تتميز أيضاً Ramaze بتوفرها على ORMs من بينها الشهير Active Record و Javascript Libraries و Templating Engines...

Camping framwork

تعتبر Camping بيئة عمل مصغرة (Micro-Framework) بحيث أنها صغيرة جداً، ولديها HTML خاص بها، يمكن استغلالها عن طريق الـ MVC، وتعتبر بيئة عمل لا بأس بها   . 


نصل إلى آخر بيئة عمل سوف نتطرق إليها في هذا الموضوع تمتاز بدعمها للـ Templating Language مثل: ERB, HAML ,SASS ... وهي بسيطة لأنها تجمع بين صفحات الـ HTML و كما يصفها الموقع الرسمي على أنها تشبه CMS ببساطتها.

إلى هنا نكون قد أنهينا هده التدوينة التعريفية ببيئات عمل الويب بعيدا عن Ruby on Rails، و أتمنى أن تكون هذه طريقكم لتعلم احداها، كما يمكن الاستفسار في التعليقات او طرح الاضافات :D.

دمتم بود..