Back-End Development Diploma Plan (PHP & Laravel)
Module 1: Introduction to Backend Development (4 Lectures)
Lecture 1: Introduction to Backend Development
- Client-side vs Server-side programming.
- Overview of PHP and its role in backend development.
- Installing XAMPP/WAMP/MAMP (Windows/Linux/Mac).
- Setting up the local development environment.
- Writing your first PHP script.
Lecture 2: PHP Basics
- PHP syntax and semantics.
- Variables, data types, and operators.
- Printing functions (echo, print).
- Conditional statements (if, else, elseif, ternary operator).
- Hands-on: Build a simple PHP program (e.g., a calculator).
Lecture 3: Loops and Arrays
- for, while, and do…while loops.
- switch statements.
- Indexed, associative, and multi-dimensional arrays.
- Array manipulation: push, pop, sort, search.
- Hands-on: Create a dynamic list using arrays and loops.
Lecture 4: Functions and Superglobals
- String manipulation: concatenation, searching, replacing.
- Regular expressions for pattern matching.
- Creating custom functions.
- Understanding $_GET, $_POST, $_REQUEST.
- Handling form data.
- Hands-on: Create a form validator using PHP.
Module 2: Database & MySQL (6 Lectures)
Lecture 5: Introduction to Databases
- What is a database? (DBMS, SQL, ERD).
- Introduction to MySQL and phpMyAdmin.
- Creating, altering, and dropping tables.
- Hands-on: Design a simple database schema.
Lecture 6: MySQL Basics
- DML: INSERT, UPDATE, DELETE.
- SELECT statements and filtering data.
- Sorting and aggregation functions (COUNT, SUM, AVG).
- Hands-on: Perform CRUD operations on a sample database.
Lecture 7: Advanced MySQL
- Joins: INNER JOIN, LEFT JOIN, RIGHT JOIN.
- Subqueries and nested queries.
- Indexing and optimization basics.
- Hands-on: Build a complex query for a reporting system.
Lecture 8: PHP and MySQL Integration
- Connecting PHP to MySQL using mysqli and PDO.
- Executing queries and fetching results.
- Preventing SQL injection.
- Hands-on: Build a dynamic blog with PHP and MySQL.
Lecture 9: Authentication & Sessions
- Cookies and session management.
- Creating a login and registration system.
- Secure authentication techniques.
- Hands-on: Implement a user authentication system.
Lecture 10: Workshop 1 – Full Project
- Build a PHP project integrating database, authentication, and sessions.
- Deploy the project locally.
Module 3: Laravel Framework (10 Lectures)
Lecture 11: Introduction to Laravel
- What is Composer? Installing Laravel.
- Laravel directory structure.
- Routing and views.
- Hands-on: Build a simple Laravel app.
Lecture 12: Laravel Blade Templates
- Introduction to Blade templating engine.
- Template inheritance and components.
- Hands-on: Create a reusable layout for a Laravel app.
Lecture 13: Laravel Controllers and Middleware
- Creating and using controllers.
- Middleware: concept and usage.
- Hands-on: Add authentication middleware to routes.
Lecture 14: Laravel Eloquent ORM
- Introduction to Eloquent.
- Defining models and relationships.
- CRUD operations with Eloquent.
- Hands-on: Build a blog with Eloquent.
Lecture 15: Laravel Authentication
- Setting up authentication.
- Customizing authentication logic.
- Hands-on: Add user registration and login to the blog.
Lecture 16: Laravel Forms and Validation
- Form handling in Laravel.
- Validation rules and custom error messages.
- Hands-on: Create a contact form with validation.
Lecture 17: Laravel API Development
- Introduction to RESTful APIs.
- API routes and controllers.
- Hands-on: Build a simple API for the blog.
Lecture 18: Laravel and AJAX
- Using AJAX with Laravel.
- Hands-on: Add live comments to the blog using AJAX.
Lecture 19: Laravel File Handling
- Uploading and storing files.
- Hands-on: Add a profile picture upload feature.
Lecture 20: Workshop 2 – Laravel Project
- Build a full-featured project integrating authentication, APIs, Eloquent, etc.
Module 4: Advanced Laravel & Deployment (4 Lectures)
Lecture 21: Advanced Laravel Features
- Queues, jobs, and task scheduling.
- Events and listeners.
- Hands-on: Implement email notifications.
Lecture 22: Laravel Testing
- Introduction to PHPUnit.
- Writing tests for Laravel applications.
- Hands-on: Write tests for the blog.
Lecture 23: Deployment and Hosting
- Domain vs hosting.
- Deploying Laravel applications.
- Hands-on: Deploy a Laravel project online.
Lecture 24: Final Project Planning & Presentation
- Planning a final project (e.g., a dashboard or API for a mobile app).
- Project presentation and feedback session.
🚀 By the end of this diploma, students will be proficient in building and deploying full-stack web applications using PHP, MySQL, and Laravel.
خطة دبلومة تطوير الباك-إند (PHP & Laravel)
الوحدة 1: مقدمة في تطوير الباك-إند (4 محاضرات)
المحاضرة 1: مقدمة في تطوير الباك-إند
- الفرق بين البرمجة على جهة العميل (Frontend) والجهة الخادم (Backend).
- لمحة عامة عن PHP ودورها في تطوير الباك-إند.
- تثبيت XAMPP/WAMP/MAMP (ويندوز/لينكس/ماك).
- إعداد بيئة التطوير المحلية.
- كتابة أول كود PHP.
المحاضرة 2: أساسيات PHP
- قواعد وتركيبة PHP.
- المتغيرات، أنواع البيانات، والمشغلات.
- دوال الطباعة (echo, print).
- عبارات التحكم (if, else, elseif, ternary operator).
- تطبيق عملي: بناء برنامج بسيط بـ PHP (مثل آلة حاسبة).
المحاضرة 3: الحلقات والمصفوفات
- الحلقات (for, while, do…while).
- عبارات التبديل (switch).
- المصفوفات (مؤشرة، مترابطة، متعددة الأبعاد).
- معالجة المصفوفات (push, pop, sort, search).
- تطبيق عملي: إنشاء قائمة ديناميكية باستخدام المصفوفات والحلقات.
المحاضرة 4: الدوال والمتغيرات الفائقة
- معالجة النصوص (الدمج، البحث، الاستبدال).
- التعبيرات النمطية لمطابقة الأنماط.
- إنشاء دوال مخصصة.
- فهم $_GET, $_POST, $_REQUEST.
- التعامل مع بيانات النماذج.
- تطبيق عملي: إنشاء نموذج تحقق باستخدام PHP.
الوحدة 2: قواعد البيانات & MySQL (6 محاضرات)
المحاضرة 5: مقدمة في قواعد البيانات
- ما هي قاعدة البيانات؟ (DBMS, SQL, ERD).
- مقدمة في MySQL وphpMyAdmin.
- إنشاء، تعديل، وحذف الجداول.
- تطبيق عملي: تصميم مخطط قاعدة بيانات بسيط.
المحاضرة 6: أساسيات MySQL
- أوامر DML: (INSERT, UPDATE, DELETE).
- عبارات SELECT وتصفيتها.
- عمليات الفرز والتجميع (COUNT, SUM, AVG).
- تطبيق عملي: تنفيذ عمليات CRUD على قاعدة بيانات نموذجية.
المحاضرة 7: MySQL المتقدمة
- الربط بين الجداول (INNER JOIN, LEFT JOIN, RIGHT JOIN).
- الاستعلامات الفرعية والمُتداخلة.
- الفهرسة وتحسين الأداء.
- تطبيق عملي: بناء استعلام معقد لنظام تقارير.
المحاضرة 8: تكامل PHP مع MySQL
- الاتصال بقاعدة البيانات باستخدام mysqli وPDO.
- تنفيذ الاستعلامات وجلب النتائج.
- منع هجمات SQL Injection.
- تطبيق عملي: إنشاء مدونة ديناميكية باستخدام PHP وMySQL.
المحاضرة 9: المصادقة والجلسات
- إدارة الجلسات والكوكيز.
- إنشاء نظام تسجيل دخول وتسجيل مستخدمين.
- تقنيات المصادقة الآمنة.
- تطبيق عملي: تنفيذ نظام مصادقة للمستخدمين.
المحاضرة 10: ورشة عمل 1 – مشروع متكامل
- بناء مشروع PHP متكامل يشمل قاعدة البيانات، المصادقة، والجلسات.
- نشر المشروع محليًا.
الوحدة 3: إطار Laravel (10 محاضرات)
المحاضرة 11: مقدمة إلى Laravel
- ما هو Composer؟ تثبيت Laravel.
- هيكل مجلدات Laravel.
- التوجيهات والعروض Views.
- تطبيق عملي: إنشاء تطبيق Laravel بسيط.
المحاضرة 12: قوالب Laravel Blade
- مقدمة إلى محرك القوالب Blade.
- توريث القوالب والمكونات.
- تطبيق عملي: إنشاء تصميم قابل لإعادة الاستخدام في Laravel.
المحاضرة 13: التحكم في Laravel والـ Middleware
- إنشاء واستخدام وحدات التحكم (Controllers).
- مفهوم واستخدام الـ Middleware.
- تطبيق عملي: إضافة Middleware للمصادقة على المسارات.
المحاضرة 14: ORM في Laravel – Eloquent
- مقدمة إلى Eloquent ORM.
- تعريف النماذج والعلاقات بين الجداول.
- تنفيذ عمليات CRUD باستخدام Eloquent.
- تطبيق عملي: إنشاء مدونة باستخدام Eloquent.
المحاضرة 15: المصادقة في Laravel
- إعداد نظام المصادقة.
- تخصيص منطق المصادقة.
- تطبيق عملي: إضافة تسجيل المستخدمين وتسجيل الدخول إلى المدونة.
المحاضرة 16: النماذج والتحقق في Laravel
- التعامل مع النماذج في Laravel.
- قواعد التحقق ورسائل الخطأ المخصصة.
- تطبيق عملي: إنشاء نموذج اتصال مع التحقق.
المحاضرة 17: تطوير واجهات برمجية API في Laravel
- مقدمة في RESTful APIs.
- إنشاء مسارات وواجهات API.
- تطبيق عملي: إنشاء API بسيط للمدونة.
المحاضرة 18: Laravel و AJAX
- استخدام AJAX مع Laravel.
- تطبيق عملي: إضافة تعليقات مباشرة على المدونة باستخدام AJAX.
المحاضرة 19: التعامل مع الملفات في Laravel
- رفع وتخزين الملفات.
- تطبيق عملي: إضافة ميزة رفع صور الملفات الشخصية.
المحاضرة 20: ورشة عمل 2 – مشروع Laravel متكامل
- إنشاء مشروع متكامل يشمل المصادقة، واجهات API، Eloquent وغيرها.
الوحدة 4: Laravel المتقدم & النشر (4 محاضرات)
المحاضرة 21: ميزات Laravel المتقدمة
- الطوابير والوظائف وجدولة المهام.
- الأحداث والمستمعين.
- تطبيق عملي: تنفيذ إشعارات البريد الإلكتروني.
المحاضرة 22: اختبار Laravel
- مقدمة في PHPUnit.
- كتابة اختبارات لتطبيقات Laravel.
- تطبيق عملي: كتابة اختبارات للمدونة.
المحاضرة 23: نشر واستضافة Laravel
- الفرق بين النطاق والاستضافة.
- نشر تطبيق Laravel.
- تطبيق عملي: نشر مشروع Laravel على الإنترنت.
المحاضرة 24: تخطيط وتقديم المشروع النهائي
- التخطيط لمشروع التخرج (مثل لوحة تحكم أو API لتطبيق جوال).
- تقديم المشروع وجلسة التغذية الراجعة.
🚀 بنهاية هذه الدبلومة، سيكون الطلاب قادرين على تطوير ونشر تطبيقات ويب متكاملة باستخدام PHP, MySQL, وLaravel.