Процес розробки =============== Розповівши фундаментальні концепції Yii, ми опишемо загальний процес створення веб-додатків з використанням фреймворку. Процес має на увазі, що аналіз вимог вже проведений, так само, як і необхідний аналіз влаштування додатку. 1. Створення структури директорій. Утиліта `yiic`, описана у розділі «[створення першого додатку](/doc/guide/quickstart.first-app)», може бути використана для того, щоб прискорити цей процес; 2. Налаштування [додатку](/doc/guide/basics.application) шляхом модифікації файлу конфігурації додатку. Цей етап також може вимагати написання деяких компонентів додатку (наприклад, компонент управління користувачами); 3. Створення класу [моделі](/doc/guide/basics.model) для кожного використовуваного типу даних. Для автоматичної генерації моделей [active record](/doc/guide/database.ar), які вас цікавлять, можна скористатися інструментом `Gii`, описаному у розділах «[створення першого додатку](/doc/guide/quickstart.first-app#implementing-crud-operations)» та «[автоматична генерація коду](/doc/guide/topics.gii)»; 4. Створення класу [контролера](/doc/guide/basics.controller) для кожного типу запиту користувача. Класифікація користувальницьких запитів залежить від поточних вимог. У загальному випадку, якщо клас моделі використовується користувачем, повинен існувати відповідний класс контролера. Утиліта `Gii` також може автоматизувати цей процес; 5. Створення [дії](/doc/guide/basics.controller#action) та їх [представлень](/doc/guide/basics.view). Саме тут і виконується основна робота; 6. Налаштування необхідних [фільтрів](/doc/guide/basics.controller#filter) для дій у класах контролерів; 7. Створення [тем оформлення](/doc/guide/topics.theming) при необхідності; 8. Переклад повідомлень у випадку, коли потрібна [локалізація](/doc/guide/topics.i18n); 9. Виявлення даних та представлень, які можуть бути закешовані та застосування відповідних технік [кешування](/doc/guide/caching.overview). 10. [Налаштування продуктивності](/doc/guide/topics.performance) та розгортання. Для кожного із представлених етапів може знадобитися створення та застосування тестів.