لارافيل و بالإنجليزية “Laravel” هو منصة برمجية لتطبيقات الإنترنت مفتوح المصدر أو إطار عمل لتطوير تطبيقات الويب مكتوب بلغة PHP ، تم إطلاق لارافيل في فبراير 2012 بواسطة Taylor Otwell  . بعض مميزات لارافيل نظام التغليف المعياري و طرق مختلفة للوصول إلي قواعد البيانات ، و الأدوات المساعدة التي تساعد في نشر التطبيقات و صيانتها .

يتم استضافة كود لارافيل علي GitHub و مرخص بموجب شروط رخصة معهد ماساتشوستس للتكنولوجيا .

في شهر ديسمبر 2013 اصبحت Laravel من أشهر أطر العمل المعمولة بـ PHP و ذلك وفقاً لإحصائية تمت بواسطة المطورون ، و في شهر أغسطس 2014 أصبحت Laravel أكثر إطار عمل مشاهدة مبني علي لغة الـ PHP في موقع GitHub .

أنشأ Taylor Otwell لارافيل كمحاولة لتوفير بديل أكثر تقدماً لإطار CodeIgniter الذي لم يوفر مميزات معينة مثل الدعم المدمج لمصادقة المستخدم و الترخيص . تم إصدار الإصدار الأول من لارفيل بيتا في 9 يونيو 2011 ، يليه إصدار Laravel 1 في وقت لاحق من نفس الشهر . و تضم Laravel 1 دعماً مدمجاً للمصادقة و التوطين و نماذج الآراء و الجلسات و التوجيه و غير ذلك من الآليات ، و لكنها افتقرت إلي دعم أجهزة التحكم التي منعت كونها إطار MVC حقيقياً .

تم إصدار Laravel 2 في سبتمبر 2011 ، مما أدي إلي إدخال تحسينات مختلفة من المؤلف و المجتمع . و من المميزات الجديدة الرئيسية لهذه النسخة هي دعم وحدات التحكم مما جعل Laravel 2 إطاراً متوافقاً مع MVC بالكامل ، و دعماً مدمجاً لمبدأ التحكم في الانعكاس (IoC) ، و نظاماً للتدوير يسمي Blade . علي الجانب السلبي ، تمت إزالة دعم طرود الطرف الثالث في Laravel 2 .

تم إصدار Laravel 3 في فبراير 2012 مع مجموعة من المميزات الجديدة بما في ذلك واجهة سطر الأوامر (CLI) المسمي Artisan ، و الدعم المضمن للمزيد من أنظمة إدارة قواعد البيانات و أشياء أخري . زادت قاعدة Laravel لارافيل و شعبيتها من الإصدار الثالث .

تم إصدار Laravel 4 الذي يحمل الاسم الرمزي Illuminate في مايو 2013 ، تم تصميمه كإعادة كتابة كاملة لإطار Laravel ، حيث تم ترحيل تصميمه إلي مجموعة من الحزم المنفصلة الموزعة من خلال Composer ، و التي تعمل كمدير حزمة علي مستوي التطبيق . من الميزات الجديدة في إصدار Laravel 4 إنشاء قاعدة بيانات للمجموعات الأولية من قواعد البيانات ، و دعم قوائم انتظار الرسائل ، و الدعم المضمن لإرسال أنواع مختلفة من البريد الإلكتروني ، و دعم تأخير حذف سجلات قاعدة البيانات التي تسمي soft deletion .

تم إصدار Laravel 5 في فبراير 2015 كنتيجة للتغيرات الداخلية التي انتهي بها الأمر لإعادة ترقيم الإصدار إلي Laravel 4.3 في المستقبل . تشتمل المميزات الجديدة في إصدار Laravel 5 علي دعم جدولة الهعام التي يتم تفيذها بشكل دوري من خلال حزمة تسمي Scheduler ، و هي طبقة تجريد تسمي Flysystem تسمح بإستخدام التخزين البعيد بنفس طريقة استخدام أنظمة الملفات المحلية ، و تحسين التعامل مع أصول الحزم من خلال Elixir ، و مصادقة مبسط خارجياً من خلال حزمة Socialite . كما قدم Laravel 5 بنية شجرية داخلية للتطبيقات المتقدمة .

في مارس 2015 ، قام إستطلاع SitePoint بإدراج Laravel كإطار PHP الأكثر شعبية .

الإصدار الثاني Laravel 5.1 تم إصداره في يونيو 2015 ، هو الإصدار الاول من Laravel لتلقي الدعم طويل المدي (LTS) مع توافر خطط إصلاح الأخطاء لمدة عامين و تصحيحات الأمان لمدة ثلاث سنوات . و من المقرر إطلاق LTS من Laravel كل سنتين .

تم إطلاق Laravel 5.3 في 23 أغسطس 2016 . تركز المميزات الجديدة في الإصدار 5.3 علي تحسين سرعة المطورين بإضافة تحسينات إضافية من خارج الصندوق للمهام الشائعة .

تم إصدار Laravel 5.4 في 24 يناير 2017 . كان هذا الإصدار يحتوي علي العديد من المميزات الجديدة ، مثل Laravel Dusk, Laravel Mix, Blade Components and Slots, Markdown Emails و الواجهات التلقائية و تحسينات المسار و رسائل النظام للمجموعات و غيرها الكثير .

Laravel 5.5 تم إصداره في 30 أغسطس 2017 و Laravel 5.6 تم إصداره في 7 فبراير 2018 .

لماذا لارافيل ؟

هناك الكثير من الأساب التي تجعلك تختار لارافيل و منها (انتشار أكبر يعني فرصاً اكثر للحصول علي فرص توظيف) و منها ما هو تقني بحت . قبل أن نجيب علي سؤال لماذا لارافيل ؟ قد يكون من المفيد محاولة الإجابة عن “لماذا إطار عمل ؟” بمعنى آخر ألا يمكنك كمطوّر PHP البدء من الصفر وبناء تطبيقك حسب حاجتك ؟

بإختصار يمكنك أن نقول أن أطر العمل تجعلك تتخلص من ضرورة الاعتناء بتفاصيل كثيرة ، ترفع كثيراً من إنتاجك و تقيك من أخطاء التعامل المباشر مع بيئة لغة البرمجة من قبيل أخطاء التعامل مع استعلامات قواعد البيانات التي قد تنتج عنها هجمات الحق بتعلمات SQL المعروفة بـ SQL injection .

أطر العمل الجيدة تفرض علي مستخدميها الفصل بين أجزاء التطبيق و تنفيذ بنية Architecture مجربة تؤدي في النهاية إلي الرفع من تصميم التطبيق و جعل الشفرة المصدرية أسهل في القراءة و أسهل في الصيانة و الاختيار .

لديك الأن أهم الأسباب التي تجعل اختيار لارافيل مناسب :

  • سهولة الاستخدام .
  • الفصل بين عناصر التطبيق مما يسهل عمل فريق من المطوّرين وتقاسم المهامّ بينهم .
  • دعم التطوير السريع للتطبيقات Rapid Application Developing, RAD: توفر أداة Artisan وسيلة سريعة لإنشاء شفرة مصدرية نمطية للتعديل المباشر عليها. كما أنها تُستخدَم لمهامّ أخرى مثل تشغيل الاختبارات الأحادية Unit tests، تهجير قواعد البيانات، وغيرها .
  • التضمين الافتراضي لوظائف شائعة الاستخدام في تطبيقات الويب، مثل الاستيثاق Authentication، التوجيه Routing، إدارة قواعد البيانات، إرسال البريد الإلكتروني .
  • متحكمات RESTful: يعني هذا أنه يمكن الاستفادة من أفعال HTTP القياسية مثل PUT، POST، GET وDELETE .
  • إدارة الاعتماديات Dependencies باستخدام Composer وهو ما يعني إمكانية استخدام الحزم والمكتبات الموجودة على الموقع www.packagist.com بيُسر ضمن مشاريعك .
  • استخدام إطار العمل Eloquent وهو إطار للربط بين الكائنات في قاعدة البيانات والتصنيفات في شفرة التطبيق Object Relational Mapper .

شرح الأمر علي نحو أسهل :

  • يقوم المتحكم بإرسال امر إلي النماذج لتعديل حالته (تحرير فاتورة) . كما يمكنه إرسال أمر إلي العرض بتغيير طريقة تقديم البيانات (الانتقال بين أسطر الفاتورة) .
  • يخزّن النموذج البيانات المعثور عليها وفقا لأوامر المتحكّم وتلك المعروضة في العرض .
  • يولّد العرض مخرجات للمستخدم حسب البيانات الخزّنة في النموذج .