@66demon666
Сетевой админ, АТС-админ

Что должен включать в себя Framework?

Здравствуйте! Я познакомился с некоторыми популярными фреймворками (от Codeigniter 3,4 до Yii2 и Symphony), в каждом фреймворке были какие-то не очень удобные и понятные вещи, были и очень хорошие практики, но часто замечал избыточность. Поэтому, я хочу написать что-то своё, в первую очередь, наверное, в образовательных целях. Что-то, что мне было бы абсолютно понятным и я мог использовать это в разработке. Понятно, что это велосипедирование, но повторюсь, цели скорее образовательные.

Какие базовые понятия я должен знать (кроме ООП), какие шаблоны проектирования? Спасибо за внимание.
  • Вопрос задан
  • 118 просмотров
Решения вопроса 2
@poniyur
шаблоны проектирования можете посмотреть как раз в тех фреймворках, с которыми вы познакомились (либо сами разбирайте исходники, либо поищите людей, которые это уже сделали и выложили на ютюб, уверен, такие есть).
в yii есть события, волшебные геттеры/сеттеры, Active Record, синглтон вроде и многое многое другое (фреймворки буквально состоят из паттернов, т.к. они облегчают разработку).
Что должен включать в себя фреймворк? тот функционал, что вам от него нужен.
Ответ написан
Комментировать
index0h
@index0h
PHP, Golang. https://github.com/index0h
Фреймворков так много как раз потому что требования разные.
Иногда это только роутер, lumen.
Иногда это самовыражение сутедунта, codeigniter.
Иногда это успешная попытка в паттерны, symfony.
Иногда это хороший маркетинг, laravel.
И т.д.

Начните с требований и опишите что вам нужно. Уже от этого стоит отталкиваться.
Если хотите писать не плохой код: https://github.com/index0h/php-conventions
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@NeylonC2
Вы можете начать с какого-нибудь микрофреймворка, чтобы избежать избыточности. Хотя все зависит от требований к нему. Вы можете посмотреть код вот этого фреймворка, по ссылке подробная инструкция на русском. Изучить его код можно за один день, если интересует принцип работы подобного типа фреймворков. Те MVC, как указано в описании.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы