Разработка фреймворка на языке PHP
Введение
Разработка приложения или веб-сайта с нуля требует много работы. Во многих случаях нужно будет воссоздать функции, которые уже были выполнены тысячи раз, что примерно так же эффективно, как заново изобретать велосипед. Фреймворки могут помочь вам обойти эту проблему, предоставляя вам основу, на которую можно опереться.
Создание собственного фреймворка полезно по одной простой причине: можно многому научиться – продвинутым шаблонам проектирования, концепциям, архитектуре приложений и многому другому.
Содержание
Введение 3
1. Определение фреймворка 4
2. История фреймворков 5
3. Отличие фреймворка от библиотеки 6
4. Виды фреймворков в веб-разработке 7
4.1. Бэкенд -фреймворки 7
4.2. Фронтенд-фреймворки 8
4.3. Фуллстек-фреймворки 8
5. ООП и фреймворки 9
6. PHP и фреймворки 10
7. Шаблоны проектирования 11
7.1. MVC-шаблон 11
8. Создание фреймворка 13
8.1. Структура 13
8.2. Управление конфигурацией и файл .htaccess 14
8.3. Точка входа 15
8.4. Маршрутизация 16
8.5. Контроллеры 17
8.6. Виды и шаблоны 17
8.7. База данных 17
8.8. Модель 18
9. Вывод 19
10. Список литературы 20
11. Приложение 21
Список литературы
1. Документация по языку программирования PHP/ URL: https://www.php.net/docs.php
2. Мэтт Зандстра. PHP 8. Объекты, шаблоны и методики программирования, 2021.
Джош Локхарт. Современный PHP. Новые возможности и передовой опыт, 2018.
3. https://laravel.com/
4. YiiFramwork [Электронный ресурс] / URL: https://www.yiiframework.com/
5. Открытый исходный код фреймворка «Laravel»/ URL: https://github.com/laravel/laravel
6. Сергей Рогачев. Обобщенный Model-View-Controller [Электронный ресурс] / URL:
http://rsdn.ru/article/patterns/generic-mvc.xml
7. Гамма, Хелм, Джонсон. Паттерны объектно-ориентированного проектирования, 2021
8. Building your own Custom PHP Framework [Электронный ресурс]/ URL: https://medium.com/shecodeafrica/building-your-own-custom-php-framework-part-1-1d24223bab18
9. Ссылка на рис. 1 / URL : https://upload.wikimedia.org/wikipedia/commons/thumb/b/b4/MVC_Diagram_%28Model-View-Controller%29.svg/1200px-MVC_Diagram_%28Model-View-Controller%29.svg.png
Среди крупнейших сайтов, которые используют PHP - Facebook, Wikipedia, WordPress и многие другие.
На этом языке написаны и популярные фреймворки, например, Laravel, Yii2, Symfony.
Шаблоны проектированияШаблон проектирования или паттерн (англ. design pattern) — повторяемая архитектурная конструкция, представляющая собой решение проблемы проектирования в рамках некоторого часто возникающего контекста. Он не зависит от языка программирования.
Обычно шаблон не является законченным образцом, который может быть прямо преобразован в код. Это лишь пример решения задачи, который можно использовать в различных ситуациях. Объектно-ориентированные шаблоны показывают отношения и взаимодействия между классами или объектами, без определения того, какие конечные классы или объекты приложения будут использоваться.