Що таке Yii2 і для чого він потрібен?
Yii2 - це високоефективний об'єктно-орієнтована PHP-фреймворк, заснований на компонентної структурі і реалізує парадигму MVC (Model View Controller). Щоб дійсно стало зрозуміло, що таке Yii2, потрібно мати уявлення, що таке взагалі PHP-фреймворк.
PHP-фреймворк - це каркас, основа або набір певних інструментів для розробки сайтів і web-додатків. Щоб було зрозуміліше, наведу приклад з практики. Наприклад, необхідно створити якийсь нестандартний сайт, жодна із загальнодоступних CMS не підходить для цього завдання, значить потрібно розробити власну систему управління контентом. Для цього потрібно продумати структуру сайту, реалізувати маршрутизатор і різні валідатори, продумати безпеку і роботу з БД і дуже багато ще всього.
Всі ці завдання можна вирішити по-різному:
- написати все з нуля;
- знайти в мережі і впровадити в структуру своєї CMS вже готові компоненти;
- скористатися PHP-фреймворком, в якому більшість компонентів вже доступні і готові до використання з коробки.
Простіше кажучи, використання PHP-фреймворку дозволяє істотно скоротити час розробки CMS. Встановлюється і «розгортається» такий фремворк за кілька хвилин, і відразу можна приступати безпосередньо до створення CMS, минаючи рутинну роботу і купу витраченого часу.
PHP-фреймворків багато, у кожного з них є свої нюанси і конвенції, плюси і мінуси. Всі сучасні й популярні з них (Yii2 не виняток) написані в об'єктно-орієнтованому стилі програмування і реалізують парадигму MVC. Про те, що таке MVC, докладно описано в Вікіпедії .
Yii2 один з найпопулярніших і найшвидших PHP-фреймворків, він не складна у вивченні і має великий багаж базових можливостей:
- для роботи з базою даних використовується DAO і ActiveRecord;
- підтримка міграцій БД і REST;
- Gii - вбудований генератор коду;
- різні варіанти кешування;
- проста інтеграція сторонніх бібліотек і класів;
- якісні інструменти безпеки;
- поведінки, хелпери, можливість розширення базового функціоналу і т.д.
Варто зазначити, що через популярність Yii2 для нього написано маса різних розширень і модулів для вирішення тих чи інших завдань, що, звичайно ж, знову відбивається на швидкості розробки.
Починати вивчення фреймворка потрібно, звичайно, з офіційної документації на офіційному сайті . Два основні розділи документації це API 2.0 і GUIDE 2.0.
GUIDE - навчальний посібник з описом і прикладами коду, цей підручник буде особливо корисний спочатку навчання, він допоможе зрозуміти базові, але в той же час фундаментальні конвенції фреймворка: моделі, контролери, види, модулі, віджети і т.д.
API - опис всіх класів, методів і властивостей. Свого роду шпаргалка, в яку заглядають як початківці, так і досвідчені розробники.
У кого проблеми з англійською мовою, є переклад документації на GitHab . На цьому статтю буду закінчувати, а в наступній статті розглянемо установку і первинне налаштування фреймворка Yii2 .