- Montreal 2024
Over the past years, the PHP language and its ecosystem have been greatly improved and got more professional. PHP 8 now supports full type hinting for class properties and methods. IDE such as PHPStorm can provide advanced code writing assistance and code refactoring capabilities. Quality monitoring tools have become more popular and also help toward maintaining hight code quality standards. In this workshop, we’ll dive into legacy code refactoring techniques augmented with the power of famous PHP quality tools such as PHPUnit, PHPStan, Rector, Deptrac, etc. Attendees will learn how they can leverage the power of PHP and its wide Open-Source ecosystem to refactor their legacy code instead of rewriting it from scratch.
- Leveraging design patterns and SOLID principles to encapsulate testable code
- Writing unit tests with PHPUnit
- Writing end-to-end tests with Panther
- Normalizing coding standards with Easy-Coding-Standard
- Monitoring code quality with static code analysis thanks to PHPStan
- Upgrading and refactoring code instantly with Rector
- Tracking code dependencies and coupling with Deptrac
- Leveraging PHPStorm refactoring built-in features to extract code
- 1 day
- 9:00 am to 5:00 pm
- 1 hour lunch break included at the hotel's restaurant
- 15 min coffee break every morning and afternoon
The whole workshop will be delivered in English by a French native speaking trainer.
The workshop is highly practical and mainly targeted to PHP backend developers who want to lean some techniques and tools to ease refactoring of their legacy PHP applications. A good knowledge of the PHP language and object oriented programming is highly recommended to jump onto this course.
Each attendee is required to bring their own laptop equipped with the at least the following software configuration:
- PHP 8.2 with enabled extensions: PDO, openssl, mbstring, intl, iconv, xdebug, zip, xml, dom,
- PostgreSQL or MySQL server
- Docker (optional)
- The IDEA of their choice they are more comfortable with (PHPStorm highly recommended)
Please be advised that the trainer will make his best to accommodate everyone’s technical requirements at the beginning of the workshop but without any guarantee according to the number of participants. In order for everyone to take the most of this training, we strongly advised each attendee to check their software configuration before the first day of the workshop takes place.