Здравствуйте, я не back-end разработчик, но есть нужда в изучении всего процесса разработки сайтов на PHP от начала и до конца. В интернете кучи, миллионы методик создания веб-приложений, шаблонов для проектирования кода, шаблонизаторов, CMS-ов и фреймворков. Начитавшись кучу разного хотелось бы разложить всё по полочкам, буду рад если вы ответите на некоторые, а лучше все, вопросы ниже. Хочу заметить, что я не имею в виду разработку супер-нагруженных порталов, где каждый цикл требует оптимизации и над кодом будут работать 100 человек:
1.) Нужно ли строить свои сайты используя шаблоны? Нужны ли они вообще? Или просто внятного ООП с MVC будет достаточно?
2.) Так как шаблонизаторов (напр. Smarty) и фреймворков (напр. Zend, Symfony) большое количество, как мне узнать что мне нужно, а что нет? Может вообще всё это не нужно и нативного PHP будет достаточно для почти любой задачи? Если нет то почему?
3.) Как осуществлять роутеринг в PHP? Видел кучу готовых решений, но не видел ни одного объяснения как это происходит и как сделать свой с нуля, а не просто копипастя готовые решения.
4.) Как вы разрабатываете свои проекты (если разрабатываете)? Поэтапно если можно.
Не гневайтесь за такие, наверняка, глупые или очевидные вопросы.
1) Можно без шаблонов, без ООП и MVC никаких проблем
2) Начните делать на нативном один простой проект, сделайте. Второй с использованием шаблонизатора, посмотрите - как вам с ним больше понравилось или нет.
3) Общий смыл в том, что скрипт сам разбирает URL набранный и в зависимости что в нём подключает к работе ту или иную часть написанного заранее кода.
4) Идея. Общий план. Составление списка разделов и функций уже более подробно. Дизайн и вёрстка. Написание движка. Тестирование без дизайна. Натягивание вёрстки на движок. Тестирование с дизайном. Запуск, раскрутка, привлечение аудитории.
Можете оставить мне свой контакт если будут ещё вопросы.
1. Шаблоны всегда помогают изучить новые нюансы. Плюс вам будет интересней учиться, а не писать то что знаете.
2. Пробовать, пробовать и ещё раз пробовать. Там уже сами определите, что вам больше по душе.
3. Не ищите готовых решений, учитесь сами.
4. У каждого свои методы )
Stopy: пробуйте сами, спрашивайте на форумах у ребят, что так, а что не так. На многих форумах с этим помогают. Да даже на тостере, только нужно правильно спросить )