Laravel was first introduced in 2011. In just a few years, it has managed to displace established frameworks (Codeigniter and CakePHP on particular) as the framework of choice for PHP projects. At the moment of writing this review of Laravel Up and Running, Laravel 5.4 is the latest stable release of the framework.
Given the popularity of the framework, it is no surprise that you would find a huge number of books and tutorial covering all aspects of the framework. The most damning problem with all this material is that a huge number goes out of date as soon as a new version is released.
At a Glance
Title: Laravel: Up and Running
Authors: Matt Stauffer
Publisher: O’Reilly Media Inc.
First Published: December 2016
This is why books like Laravel: Up and Running are the best option for developers looking to break into the framework. The book is written to be version independent and presents a comprehensive introduction to all aspects of Laravel. The result is a timeless classic that is suitable for both PHP beginners and veterans.
In the first glance, the book is laid out like a typical programming guide. There is a preface, the “introduction to the product” chapter, the obligatory “setup the product for various development environment” chapter, followed by chapters that cover individual topics.
However, Matt Stauffer has managed to keep the book engaging and informative without being dry and mechanical. Make no mistake though, there is plenty of details in every chapter!
After the first two chapters that discuss the history of the framework (Chapter 1) and framework setup (Chapter 2), the books dives straight into the technical waters of Laravel routing and controllers (Chapter 3).
Laravel has a powerful templating engine that simplifies the process of form creation and publication. Chapter 4 covers Blade Templating Engine in detail including custom blade directives.
Unlike many frameworks that ignore or deemphasize frontend development, Laravel has Elixir, a powerful tool to develop frontend assets that integrate well with the PHP backend of the web apps. Chapter 5 is all about the usage of Elixir for frontend component development.
User generated data lies at the heart of all PHP applications. Laravel offers several powerful tools for collecting, filtering and validating user generated and provided data. Chapter 6 details the full complement of these Laravel tools.
Command line has become very important in modern PHP application development. Chapter 7 offers detailed coverage of two important Laravel tools for using the command line. The first tool is Artisan, a set of utilities for streamlining application development process. The second tool is Tinker, a shell of sorts that allows you to work with your application.
Databases lie at the heart of PHP applications and Laravel provides a very powerful tool for working with databases. Aptly named Eloquent, the ORM offers a model to work with databases. Chapter 8 covers all aspects of using Eloquent for working with databases.
Security is the number one concern of every PHP developer. Laravel integrated a very comprehensive user authentication and authorization model that ensures that user and application security is ingrained into the application from the very start. Chapter 9 covers the user authentication model of Laravel.
In any PHP application, the standard communication model is based on requests and responses. Laravel implements this model and its middleware in a Response object. Chapter 10 covers this object and Laravel 5.4 middleware in detail.
Laravel service containers form the core of class dependency handling and resolution. Chapter 11 discusses Laravel containers, their role in class dependency injection and the various terms used when referring to containers.
Testing is a necessary evil of code development. Laravel integrated application testing as a core component of the framework. This functionality comes in the form of the integrated support for PHPUnit, Behat, Mockery and Faker. Chapter 12 covers all aspect of testing Laravel powered applications in great depth.
Applications use API to integrate and export services to other applications. API development is an essential task of almost modern PHP projects. Chapter 13 first presents the basics of Laravel API development and then moves on to cover the tools and structures that Laravel offers for API creation, testing and deployment.
PHP apps require storage for variables and files. This requirement is handled by a very well-developed mechanism that covers file and memory manipulation. Chapter 14 offers an indepth look into the various file handling, memory access, cookies and sessions management options available in Laravel.
Communication among the users and apps now include diverse channels including email, SMS, Slack, and IM. Laravel handles this multifaceted and complex communication landscape every efficiently, thanks to a very stable API that is consistent across the entire Laravel development spectrum. Chapter 15 covers this communication API in detail.
Many users do not realize that even simple looking PHP apps could use very complex elements such as schedules and broadcast components. Chapter 16 looks into the concept of queues, events, and broadcasts.
The last chapter covers the helper functions and programming structures. These two topics usually do not fit a specific pattern, and thus are often relegated to the end of the book. Chapter 17 covers common helper functions and programming structures such as arrays and collections.
Follow and Retweet Cloudways and three lucky people will get a FREE copy of the book! So login to Twitter on Tuesday, March 07, 2017 and get busy! Hurry Up! This contest ends in a week on March 15, 2017.
— Cloudways (@Cloudways) March 7, 2017
Themes & Topics
Laravel: UP and Running presents all major aspects of the framework in detail. Matt Stauffer has written this books for PHP developers who want a comprehensive introduction to Laravel. The intention of the author is to get the developers up-and-running with Laravel development in the minimum time. This is why the books adopt a very “developer-to-developer” style with little holding of hands and explanation for basic stuff!
The books start in with very customary manner but rapidly dives into the deep end of the pool with Chapter 3 on Routing and Controllers. Starting with a topic that is very close to the MVC architecture of the framework is a great way of bringing attention to the Laravel development philosophy.
The best thing about the book is its coverage of Laravel tools that define the reputation of the framework. The ecosystem of the framework comprises of popular tools and utilities such as Artisan, Tinker, Eloquent, and Passport. In addition to introducing these tools, the book goes into the details of using these tools in practical situations.
Many people forget that while Laravel is a PHP development framework, it does have frontend development capability in the form of Blade templating system and Elixir. An important benefit of preferring these native tools is that the underlying code is ready to be integrated with the PHP backend.
Laravel has very powerful database manipulation capabilities that greatly streamline the app production process. All this power is accessible via Eloquent, the native ORM of the framework. Using this abstract layer, the developer could easily work with the database(s) of the project without worrying about the underlying mechanism.
API have become an essential component of all major PHP projects. Laravel ensures that the developers are able to develop RESTful and conventional API for their projects. Chapter 13 covers the topic of API creation and implementation in depth.
User authentication is always a thorny issue in PHP projects. Laravel solves this problem through a dedicated user authentication and authorization system that could be easily integrated into any project without issues. In addition, Laravel offers Passport, an authentication and authorization server that takes care of all issues without any fuss.
An important element in the success of the Laravel is its emphasis on testing. Laravel integrates support for all major software testing libraries so that the developers could ensure that the code is free of bugs!.
The book also covers minor aspects of the framework in some detail. Many books on frameworks either ignore these areas of place undue emphasis on the usage of these elements. The balanced approach by Matt Stauffer is a refreshing take that ensures that the developers have a clear idea of these minor aspects in the over project development landscape.
Laravel: Up and Running is written by an industry veteran who understands the practicalities that PHP developers face while using a framework. The book is a thorough and very streamlined introduction to Laravel aimed at PHP developers who need to use the framework for their next project. There is little holding of the hands or fluffy introductions and initial chapters. The to-the-point approach is ideal for busy developers who have little time for appreciating the prose of the book!
Create Laravel apps without the worry of server management.
Deploy your app on optimized PHP hosting servers for Laravel.