استثمر للحياة

مواضيعنا

مقدمة و تعاريف Laravel

حجم الخط
 

لارافل مقدمة و تعاريف Laravel

ما هوComposer  و الحزم البرمجية   package  و البرمجة ثلاثية الطبقات MVC


الحزم البرمجية  package
هي عبارة عن  مجموعة من الأدوات البرمجية  تقوم بمهمة خاصة مثل ختم أو تصغير الصور أو ارسال ايميلات  , كثيراً ما يستخدمها مبرمجي مواقع PHP على الويب . بغرض إداء مهمة معينة فى وقت زمني قصير و أيضاً بإحترافية عالية . منها مكتبة Packagist  وكذلك مكتبة packalyst .

 


مدير الاعتمادات " المايسترو composer
 هو نظام إدارة الحزم البرمجية  packageفي لغة PHP, من حيث  تركيب، وتطوير، و تكوين، وإزالة الحزم برمجية  من و إلى نظام التشغيل الخاص بالكمبيوتر بطريقة متسقة , و بشكل آلي . مما يوفر الوقت والمال و الجهد . و هو من يعمل من خلال سطر الأوامر Command Prompt  . ويقوم بتثبيت الحزم مثل المكتبات و التطبيقات وهي متوفرة فى مواقع عدة مثل   Packagist .

 


 

فمثلاً ..  إذا كان لدينا مشروع نرغب في  تطويره ، سوف  تختار إطار عمل مُعين لتنفيذ هذه المهمة ، و سنحتاج  - إيضاً - إلى بضعة مكتبات إضافية للقيام بذلك ، و سنجد – بإذن الله - المكتبة التي نرغب في استخدامها لكنها  قد تكون معتمدة  على مكتبة أخرى.  ماذا يحدث إذا تم تحديث إحدي المكتبات التي نعتمد عليها , ستقوم بإعادة تحميلها من جديد واستبدال الإصدار القديم بالجديد . سيكون هذا متعب و مكلف للجهد و الوقت معاً . لذا يُمَكنناcomposer من تحميل المكتبات التي نحتاجها في المشروع  والإبقاء عليها مُحدثة دون الحاجة إلى تحميلها ونقلها يدوياً . هذا و يُشير موقع composer  الرسمي بأنه  لا يقوم بتنصيب هذه الحزم بشكل عام فى النظام كله  ,  بل تتم إدارة الحزم داخل كل مشروع على حدة ، ولهذا يُطلق عليه وصف مُدير الاعتمادات Dependency Manager..
و جدير بالذكر ...  لا داعي أن يقوم المُطور باستدعاء هذه المكتبات مرة تلو الاخرى لدى كتابته لمشروعه ، بل يقومcomposer بإنشاء ملف .phpautoloader  داخل مجلد vendorsالذي يتولى إدارة ذلك نيابة عنا , حيث يكفي استدعاء هذا الملف لتتمكن من استخدام المكتبات التي حملتها من دون الحاجة إلى القيام بذلك يدوياً . و في حال إحتيجنا لإستخدام مكتبة ما سنقوم باستخدام المكتبة  بشكل طبيعي  و يقومcomposer  بعملload لها بشكل تلقائي .

 
MVC 
 أي  نموذج  "Model" – عرض " View" – وحدة التحكم Controller  .

و  هو أحد نماذج المعمارية للبرمجيات –و هو يعتمد على عزل منطقة العملModel   "المطبخ"  عن واجهة الاستخدام View"السفرة" و يتم إدارة كلاً منهما من خلال وحدة التحكم  Controller  "عبده السفرجي"  . معنى هذا أن MVCحققً بذلك استقلالية لكل منهما في التطوير ، والفحص والصيانة .  فهو يقوم بتقسيم البرنامج المطلوب إلى ثلاث أجزاء مُنفصلة هي :
.
النموذج  : و يقصد به الأكواد التي ستقوم بالتحكم فى قواعد البيانات من حيث عمليات الادخال و التعديل و إخراج محتواها و البحث .. و غيرها , و يقوم بإخطار  وحدات التحكم  بأي تعديل يحدث فى قاعدة البيانات , و من ثم تقوم وحدة التحكم بإخطار  العرض لتحديث للمُخرجات على الشاشة .
العرض : و يقصد به الأكواد التي ستقوم بعرض المعلومات على الشاشة , العرض  يقوم بطلب/استقبال  المعلومات من وحدة التحكم  , ويستخدم تلك المعلومات لتحديث المُخرجات إلى المُستخدم .

وحدة التحكم  Controller: و هي التي تتحكم فى الوحدتين السابقتين , عن طريق  إرسال / استقبال  استعلام  إلى / من النموذج ليقوم بتحديث قاعدة البيانات .  و يستطيع إرسال / استقبال  تعليمات   من/ إلى العرض المرتبطة به لتقوم بتغير المعلومات ليراها المستخدم .
 

إطارات العمل  Framework

من اهم الأدوات التي تستعمل مع لغات البرمجة لتسهيل البرمجة  لتبسيط العمل فى المشاريع الكبيرة أو الصغيرة , كما أنها تقلل من  نسبة كتابة الكود , توفر الحماية و الأمان الخاص بالمشروع  الذي نعمل عليه  , إضافة لمرونة تعديل المشروع حتى لو اختلف المبرمج .  و من أفضل إطارات العمل الخاصة بلغة Php   هي    Framework Laravel


إطار عمل   Framework Laravel


هو إطار عمل مرن و سلس  وسهل فى التعامل معه حيث يسهل لنا  بعض المهام منها ( التوثيق والتوجيه وجلسات التخزين ) وهو من اقوى الادوات التى قد تستعملها للتطوير,  هو يستعمل لانجاز المشاريع الضخمة و المشاريع الكبيرة و الصغيرة وتوفر لنا بنية قوية للمشروع , كما تسهل لنا امكانية التعديل و التطوير بمرونة كبيرة . و قد تم بناء الإصدار الأول من إطار عمل Laravel   للغة الـPHP  في ابريل / نيسان  من عام 2011 من قبل Taylor Otwell,   . و يعتمد لارافل على معمارية الـMVC لتنظيم الملفات,  ويمتاز بدعم العديد من التقنيات الحديثة وخصوصاً تلك التي ظهرت بعد صدور PHP 5  .
كما يعتمد لارافل على   composer  في ادارة المكتبات المستخدمة في المشروع  وبالتالي فهو يتيح لنا استخدام ألاف المكتبات والموجودة علىمواقع الويب المتخصصة مثل packagist     وغيرها .   وإدارة إعتمادها على بعضها بشكل سهل جداً  , كما يوفر إمكانية تحديث المكتبات آلياً ,  و يتوفر به ميزة  autoloading"التحميل التلقائي " للمكتبات  .


بعض مزايا لارفل Laravel   



التوثيق Authentication

يحتوي لارافل Laravel    على مكتبة Authentication المميزة  و التي  تساعدنا  في التأكد من بيانات  المستخدم , عند تسجيله دخول أو خروج والتحقق من دخول المستخدم وعمل إستعادة كلمة المرور   , ستجد كل هذه الدوال جاهزة ومضمنة تلقائياً وتستطيع إستخدامها بسهولة تامة .

محرر Blade

  محرر قوالب بسيط  و لكنه فعَّال جداً , موجود في لارافل  Laravel    ليساعدنا في ترتيب ملفات القوالب الخاصة   وايضاً يساعد على كتابتها بشكل بسيط و قوي  .   تحتوي  لارفل  أيضاً على   بـBlade Control Structures و الذي يمكنكنا من كتابة اكواد الـPHP ضمن ملفات العرض /  view  بشكل أسهل  من الطريقة العادية .

الرّاوت Routes

الرَاوت أو المُوجه هو واحد من أهم المكونات الأساسية في الهندسة المعمارية للبرمجيات. هذا الموجه يأخذ عناوين المواقع URL  و يوجهها إلى  تطبيق ما أو لتنفيذ إحدى دوال التطبيق   أو حتى لإظهار صفحة عادية. يحتوي لارافل Laravel   على نظام مميز لإدارة الـRoutes  و الذي يمكن  إدارته من خلال الملف“app/routes.php” حيث يتيح لك إمكانية تحويل طلب معين الى المكان الذي نريده  سواء صفحة Veiw      أو    Controller  أو حتى تنفيذ كود معين بدون الذهاب إلى الـController  , و يتم هذا التوجيه حسب نوع  الطلب سواء كان  post , get , put …

الفلتر Filters

يسمح لنا بتنقية فلترة الطلبات لصفحة معينة نحن من يحددها على سبيل المثال التحقق من دخول مستخدم او التحقق من صلاحيته لهذه الصفحة ... و غيرها , هذا و يمكن  تحديد اكثر من فلتر في المرة الواحدة و نستطيع إدارته والتعامل معه من خلال الملف“app/filters.php”.

مكتبة Eloquent ORM

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




 

الموضوع  :  *مقدمة و تعاريف Laravel* المرجع : استثمر للحياة  investolife 

اعلان تجاري
اعلان 468