يعتبر لارافيل Laravel من أشهر إطارات العمل التي تبنى بها المواقع الإلكترونية في العالم، ففي غضون سنوات قليلة أصبح واحدا من أكثر إطارات العمل طلبا في سوق الشغل، فماهي خصوصيات هذا الفريموورك Framework ؟ وما هي أبرز نقاط قوته ؟
ما معنى إطار العمل ؟
إطار العمل بكل بساطة هو مجموعة من الأدوات التي نجمعها ونربطها مع بعض في مكان واحد وتمكن المطور من القيام بإنشاء مشاريعه في وقت أقل ورفع انتاجيته إلى أقصى حد ممكن.
لكل لغات البرمجة المعروفة إطارات عمل خاصة بها، و PHP واحد من هذه اللغات، فهناك العديد من المهام التي نقوم بها في كل مشروع تقريبا تم دمجها في إطارات العمل الخاصة بهذه اللغة، لارافيل واحد منها، كآليات التسجيل والدخول (Authentication)، الكاش Cache، الإتصال بقاعدة البيانات إلخ… مما يجعل هذه العمليات أكثر سهولة في الإستعمال وإعادة الإستعمال وتكون بذلك في غنى عن إعادة اختراع العجلة التي اخترعها آخرون قبلك :-)
إطارات العمل مفيدة جدا فيما يخص ترتيب وتنقية الشفرة البرمجية لمشروعك، حيث تكون أكثر قابلية للفهم من طرف أشخاص آخرين يعملون معك على نفس المشروع أو يأتون من بعدك لإستكمال ما بدأته فيجدون أساسا متينا ومفهوما دون بدل أي مجهود في محاولة قراءة وفهم الكود.
مميزات إطار العمل لارافيل
إطار العمل لارافيل مدعوم وموثق بصورة مثيرة للإعجاب فيكفي أن تبحث في غوغل عن حل لأحد المشاكل التي قد تواجهك إلا وتجد عشرات النتائج والأجوبة عن تساؤلاتك وهذه نقطة محورية في نجاح أو فشل أي مشروع مفتوح المصدر على الإنترنت. ونشير إلا أن لارافيل هو الأكثر متابعة على منصة Github من بين جميع أقرانه.
لارافيل كذلك يتميز بسهولته، كتابة وتعلما، فيكفي أن تقارن بينه وبين سيمفوني مثلا لتجد أن الأخير أكثر تعقيدا ومن الصعب على المبتدأ الخوض فيه دون فترة إعدادية لا بأس بها.
نقاط قوة لارافيل
لعل نقطة قوة لارافيل هي تواضعه واستلهامه أفكارا جميلة وإبداعية عند إطارات العمل المنافسة، فلقد أخذ نظام Routing الخاص بسيمفوني وقام بالتعديل عليه ليصنع نظاما خاصا به سهل الإستعمل مقارنة بنظام سيمفوني (بالنسبة للمبتدئين) مع الحفاظ على نقاط قوة الأخير. لارافيل يعتمد أيضا على مكتبة سيمفوني Symfony/Console القوية الخاصة بكتابة سطور الأوامر Command lines ويستعملون كذلك مكتبة SwiftMailer لإرسال والتعامل مع الإيميلات…
فريق عمل لارافيل فهموا أن لا جدوى من إعادة اختراع ما سبقك إليه الآخرون، عوضا عن ذلك استفد مما عند غيرك وأضف عليه لمستك لتخلق الفارق.
كخلاصة، لارافيل يقدم لنا مجموعة من الإمكانيات :
- نظام لإرسال الإيميلات.
- نظام قوالب قوي (Blade).
- نظام التعامل مع الروابط Routing System فعال وقوي.
- وحدة تجريد والتعامل مع قواعد البيانات Eloquent ORM جد فعالة وسهلة جدا في الإستعمال.
- نظام للإثبات الهوية Authentication System جميل ومتطور. إلخ…
حقن التبعية
كما أن نظام إدارة حقن التبعية Dependency Injection والمسمى IoC يعد من أقوى الأنماط (IoC Design Pattern) المتبعة ويمنح للمطور ليونة ومرونة في التعامل مع الكلاسات والتبعيات. ولتكوين نظرة عن مدى قوة ومدى فعالية هذا النمط يرجى زيارة هذا الرابط.
نمط Model-View-Controller أو MVC
وبطبيعة الحال لارافيل يتبع نظام MVC في ترتيب الكود وتوزيع المهام حيث أن :
- Model : يهتم بالتعامل مع قاعدة البيانات.
- View : كل ما يراه للمستخدم.
- Controller : شرطي المرور الذي ينظم حركة المرور بين Model و View :-)
خلاصة
لارافيل إطار عمل رائع وقوي بكل ما للكلمة من معنى، يجمع بين الجمال والقوة، كما أنه مرن للغاية مقارنة بمنافسيه. المجتمع الداعم له أيضا نشيط ومتفاعل مع كل صغيرة وكبيرة، لذلك لن تجد أي صعوبة في التعلم وإيجاد حلول لمشاكلك، وهذا ما يجعل كل الملتحقين به يقعون في غرامه ويصبح محالا عليهم مفارقته بعد ذلك.