في هذا الدرس 6تصفّح المواضيع
introduction
introduction
laravel هي اطار عمل تستخدم لأنشاء تطبيقات الويب في شكل بنائي منظم ودقيق , توفر بيئة عمل Laravel لك نقطة البداية التي يمكنك من خلالها البداية في انشاء تطبيق الويب web application الخاص بك حيث انها أيضا تمكنك من انشاء تطبيق كبير البنية
لماذا تستخدم laravel ؟
لماذا تستخدم laravel ؟
هناك مجموعة متنوعة من الأدوات والأطر المتاحة لك عند إنشاء تطبيق ويب. ومع ذلك ، يعتقد أن Laravel هو الخيار الأفضل لبناء تطبيقات ويب حديثة full-stack واليك بعض المميزات التي تميزها عن غيرها من إطارات العمل frameworks الأخرى :
- يمتلك دعم كبير ، ونمو متسارع ، لهذا ستجد حلول للمشاكل التي تواجهك بسهولة تامة.
- تركيبة الكود سهلة وقابلة للقراءة مما يجعله مناسب اكثر للشركات ونظام العمل المشترك بحيث يستطيع اي مبرمج فهم الية عمل الكود المكتوب امامه وتكملة المشروع بصورة طبيعية دون مشاكل
- يمتلك نظام خاص Eloquent ORM للتعامل مع قواعد البيانات ، مما يجعل العمل اسهل والإنتاجية اكثر.
- إمكانية استخدام مكتبات خارجية جاهزة في مشروعك ، باستخدام الــ Composer.
- يجمع بين الأمنية العالية والمرونة والبساطة ، مما يجعلك تتعلمه كإطار عمل frame work لجميع مشاريعك
Laravel's features
Laravel's features
Laravel تمتلك العديد من الخصائص التي تميزها عن بيئات العمل frameworks الأخرى واهم هذه الخصائص هي :
1 – استخدام Eloquent ORM ، وهو عبارة عن آلية للتعامل مع قواعد البيانات ، من انشاء وحذف ، بالإضافة الى الاستعلامات عن طريق الكود بطريقة سهلة وممتعة ، بدلا عن كتابة استعلامات SQL يدويا ، ضمن محركات قواعد البيانات المدعومة وإعداداتها؛ وقد تحتاج الميزات الخاصة بمحرك معين إلى معالجة خاصة. فهو ينشئ الاستعلام بشكل آلي لقواعد البيانات المحددة مسبقا في ملف الإعدادات ، ويعتبر من اقوى خصائص اطار العمل Laravel.
2 – منشئ الاستعلامات (Query builder) طريقة أخرى للتعامل مع قواعد البيانات وانشاء الاستعلامات.
3 – نظام التوجيه (Routing) للتعامل مع الروابط بطريقة رائعة وقوية ، ويعتبر من اهم مميزاته حيث يتميز بالمرونة والبساطة.
4 – نظام قوالب مميز (Blade templating engine) ، حيث يستخدم في الـ View بحيث يكون امتداد الملفات filename.blade.php ، و تستخدم لسهولة التعامل بين View والـــ Controller بالإضافة الى ذلك تستخدم لزيادة الأمنية ، وهي من المميزات الخاصة بـ Laravel .
5 – استخدام الـ Composer لإدارة الاعتماديات بواسطة منفذ الأوامر ، حيث يثبت اعتماديات المشروع وحزمه الخارجية. أما إنشاء Controllers وViews فيتم بأوامر Artisan مثل php artisan make:controller وphp artisan make:view في الإصدارات التي تدعم الأمر ،
A Progressive Framework
A Progressive Framework
يطلق علي laravel ب "progressive " بمعنى أنها تنمو مع احتياجاتك وخبرتك؛ فتتيح بداية بسيطة ثم أدوات أوسع عند بناء تطبيقات أكثر تقدمًا
فاذا كنت مبتدئ فهناك دروس سوف تعملك أشياء بدائية مثل video tutorials
واذا كنت محترف فستمنحك laravel أدوات قوية لما يلي
- dependency injection : هو أسلوب حيث يقوم كائن معين بإمداد كائن آخر بكل ما يحتاجه من Dependencies، و Dependency هو كائن يقوم باستخدامه كائن آخر ليقوم بمهمة ما .. ويتم بناء الـ Dependency كجزء من حالة العميل أو النظام، شرط هذا الأسلوب هو أن يتم تمرير الـ Dependency بدلًا من بنائها داخل الكائن المُستخدِم.
- unit testing :اختبار الدوال functions أو المناطق - أو الوحدات - في الأكواد. و هذا يجعلنا نثق في الدوال والاكواد اثناء كتابتها real-time events
وهناك الكثير أيضا من الادوات المتاحة لتساعدك في عملك
A Community Framework
A Community Framework
يجمع Laravel بين أفضل الحزم في نظام PHP ecosystem لتقديم إطار عمل متاح أكثر قوة وصديقًا للمطورين. بالإضافة إلى ذلك ، ساهم الآلاف من المطورين الموهوبين من جميع أنحاء العالم في إطار العمل
دعم MVC
دعم MVC
وهو اختصار لModel-View-Controller وهو نمط يستخدم لفصل مكونات المشروع المنطقية عن بعضها وهذه المكونات هى model , view , controller وهو من افضل النظم لأنشاء تطبيق ويب web application قابل للتوسع
مكونات MVC
- view: هو عبارة عن الواجهة التي يتعامل معها المستخدم فى التطبيق مثل القوائم و حقول البحث و السليدات وغيرها
- model: يمثل بيانات التطبيق وقواعد التعامل معها؛ وتوفّر نماذج Eloquent في Laravel واجهة للتعامل مع جداول قاعدة البيانات والعلاقات بينها.
- controller: ينظم معالجة الطلبات ويتعاون مع model وview فهو يعالج العمليات المنطقية والطلبات القادمة (requests) وكذلك التعامل مع البيانات القادمة من قواعد البيانات لإخراجها على view في صورة ملائمة
سجّل الدخول لحفظ تقدمك
تابع إنجاز المواضيع والمصطلحات والمهام، وكمّل من آخر خطوة على أي جهاز.