Закончил я со стратегий, все разделы заполнены, ждут критики и корректировок.
Не поддался я на призывы начать кодить сломя голову, и это было очень правильно. Сам освежил в памяти, много узнал нового, систематизировал основополагающие принципы по подсказкам форумчан.
Теперь можно, опираясь на систематизированные принципы, наметить конкретные цели и задачи.
В срецификации пока планирую такие
основные пункты описания будущего проекта. В процессе добавим ещё чео-нибудь:
1. Все компоненты полностью ориентированы на PHP 5 и E_STRICT- совместимы
2. Использует кодировку UTF-8
3. Высокая производительность
4. Использует парадигму MVC
5. Низкий порог вхождения
- - Многофункциональное, интуитивно понятное API
- - Простой синтаксис на грани нативного
- - Хорошо прокомментированный код
- - Обширная документация
6. Фреймворк дает свободу программисту, не создавая каких-либо структурных ограничений и конвенций
7. Встроенные средства отладки и профилирования
8. Очень легко расширяем
9. Поддержка интернационализации
10. Миграции базы данных
11. Автоматическое тестирование
12. Активное русскоязычное сообщество
Кодогенератор пока не стал включать. Детский сад какой-то совсем. Компенсируем низким порогом вхождения.
ORM тоже не включил по другой причине. Я даже теоретически не представляю, как сделать полноценную ORM, да еще чтобы она не повлияла на ресурсоемкость и производительность. Быть может позже в виде библиотеки.
В виде либы так же и Active Record, но по своей причине. Этот функционал любим и востребован не всеми.
Всякие встроенные авторизации, аяксы, почтовые классы и прочие фантики тоже ввиде библиотек. Так как концепция гласит о минимальном ядре и неограниченном расширении.
DI в глобальном понимании пока не знаю, планирую глубокий анализ и инициирую отдельное обсуждение. На локальном уровне конечно будем юзать, но этого не стоит отражать в спецификации.
Как изюминку можно сделать конструктор. Который соберет и сконфигурирует необходимые для текущей задачи библиотеки как на старте, так и в процессе. Это к пункту о многофункциональном API
Ну и вот. Будут предложения?
_____________
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.