Laravel/ Lumen Advanced Programming
What sets Laravel apart from other PHP web frameworks? Speed and Simplicity with Clean Code. This rapid application development framework and its vast ecosystem of tools let you quickly build new applications with clean, readable code. With this practical training, Mikiyas Amdu—a lead developer and contributor in the Laravel community—provides the definitive real world implementation of one of today’s most popular web frameworks.
Prerequisites
- Previous experience in an object oriented programming language
- a little bit PHP
Module Materials
Required Learning Materials
Module Requirements
Atom, composer, git, PHP7 and RDBMS/NoSQL
Module Structure
We will have more practical based lessons with a bit of lectures. Every topic will be accompanied by a class lab exercise as well as lots of class live coding sessions. Exploration and discussions are highly encouraged.
Trainee Learning Outcomes
- Reinforce foundations of Object Oriented programming
- Learn new syntaxes, language features and PHP7
- Learn practical object oriented programming techniques
- Learn practical design patterns
- Learn best practice deployment, optimization and security
- Build a real world production ready API with Laravel and the new PHP7
Week 1: General overview, accelerated coverage of Laravel fundamentals
In this week we make sure the trainee has the foundations in OO PHP and Laravel before moving to more advanced topics.
- Introduction to Laravel
- Accelerated coverage of OO PHP 7 new features
- Setup and configure composer, docker and test suits for PHP7
- Routing
- Middleware
- CSRF Protection
- Controllers
- Request, Response
- Views
- Session (Token for API), Validation
- Error & Logging
Week 2: Advanced Laravel Topics
In week 2, we will look at some of the advanced topics in PHP7 & Laravel like Eloquent and Events, Queues etc.
- ORM (Object Relational Mapping), Migration
- Events and Jobs
- Service Container, Inversion of Container(IOC)
- Query Builder
- Pagination
- Migration
- Seeding
- Redis (cache server)
Week 3: Deep Dive Laravel
In this week, We will look at more advanced topics like Design Patterns, Broadcasting, security etc.
- Design Patterns
- Task Scheduling
- Asynchronous programing with PHP7 (for Speed)
- Security (Hashing, Encryption, Authorization)
- Serialization, Mutators
Week 4: Real World Laravel
In this last week, We will look at more practical topics like Testing, Collections, Notifications and Mail etc.
- HTTP Testing and database testing
- Package Development
- Mail, Eloquent, Route model binding
- Shipping laravel microservice with Docker