
Познакомиться с PHP фреймворком CodeIgniter 4 достаточно просто.
Нужно потратить вечер, выполняя инструкции из раздела «Build Your First Application» («Создайте свое первое приложение»). Поскольку документация написана хорошим, технически понятным языком, то в процессе ознакомления с этим и другими разделами возможно получить даже некоторое эстетическое удовольствие.
Ощущение воздушности и состоятельности проекта CodeIgniter 4 будет присутствовать с вами теперь повсеместно. И Когда вы будете изучать (или уже изучили) другие платформы на PHP: Laravel , Symfony и т.п. Или на Python, как иногда в шутку, но со всем уважением, говорят язык одного фреймворка : Django .
Чем же привлекателен CodeIgniter 4 , именно 4 (последний на написание этого поста)?
В CodeIgniter 4 есть практически всё, что требуется при разработке современного web-проекта практически любой сложности. В достаточно компактной документации охватываются все направления современной web-разработки. Разделы, где это требуется, наполнены понятными примерами, даются объяснения как использовать "гибкость" заложенную во фреймворк изначально.
Возможно исходя из заботы о программистах, которые разработчики CodeIgniter 4 проявили в отношении специалистов, начинающих знакомиться с их проектом, всё изложено очень последовательно, логично и легко для понимания.
Но есть один момент, который возможно будет решён в CodeIgniter 5, нет возможности сразу получить целиком «рабочий пример» из «Installation» или «Command Line» (через php spark) .
Неудобство отсутствия «рабочего примера» особенно сказывается тогда, когда возникает необходимость «освежить в памяти» всю специфику фреймворка CodeIgniter 4.
Столкну��шись «с таким моментом» несколько раз, подумалось, что будет полезно иметь под рукой «рабочий пример» «Build Your First Application» («Создайте свое первое приложение»), разместив его
Возможно в репозитории слишком детально всё изложено, но это лишь с целью свести к минимуму время на развёртывание «рабочего примера» на локальном компьютере. В представленном на github репозитории в оcнове лежат XAMPP (windows), git bash. Во всяком случае всё развёртывалось и функционировало у автора данного скромного поста.
Есть ещё один полезный момент.
«Развёртывание» базы данных из репозитория «рабочего примера» реализовано не через SQL, как в документации, хотя дамп базы данных присутствует, а с использованием Database Migrations (миграций) и Database Seeding (семян). Именно того, что в том числе, делает надёжным production: сопровождение, масштабирование и etc. любого современного web-project'а командой из любого количества специалистов и разного уровня подготовки и опыта.
Реализация тестирования на PHPUnit для web-проекта любой сложности также представляется удобной и логичной, но это видимо требует отдельного «лёгкого репозитория» на github'е и отдельной статьи на Хабр . Конечно, при условии, что данные вопросы интересны инженерному сообществу, а не только автору.
Буду рад, если этот пост окажется для кого-то полезным.