Я скажу, что так называемые «мертвые» проекты не представляют особой опасности, если сам проект надежен и вам нравится.Дело в том, что если библиотека или фреймворк уже делает все, что вы можете думать, то это не такая уж большая проблема.Если у вас есть стабильный проект, запущенный и работающий, вам следует подумать о фреймворке (готово!) И сосредоточиться только на вашем веб-приложении.От вас не требуется обновлять сам фреймворк до последней версии каждый месяц.
Лично я считаю, что наиболее важным моментом является то, что вы найдете тот, который интуитивно понятен для вашего проекта. Что имеет больше смысла?MVC?Должен ли каждый элемент в URL быть отдельным объектом?Как будет работать интерактивность (AJAX)?Нет смысла выбирать что-то просто потому, что это «отраслевой стандарт» или потому, что оно используется многими известными сайтами.Может быть, они выбрали его для нужд, совершенно отличных от ваших. Прочтите учебные пособия для каждой структуры и будьте критически настроены. Если это не соответствует вашему образу мышления или вы видели, как это делается более элегантно, тогда двигайтесь дальше.Здесь вы рассматриваете дизайн , и хороший дизайн равносилен гибкости и масштабируемости.Существуют сотни веб-фреймворков, старых и новых, на каждом языке.Вы обязательно найдете полдюжины, которые работают именно так, как вы хотите думать в своем проекте.
Точки, которые я считаю обязательными:
- Расширяемость с помощью плагинов: проверьте, есть ли уже подключаемые модули для различных задач промежуточного программного обеспечения, таких как memcache, gzip, OpenID, AJAX goodness и т. Д.
- Простота и модульность : чем сложнее, тем кручекривая обучения и тем меньше вы можете доверять его стабильности;чем больше «привязан» к конкретным технологиям, тем выше вероятность того, что у вас будет цепь вокруг лодыжки.
- Независимость от базы данных : можете ли вы использовать sqlite3 для разработки, а затем переключиться на производственную базу данных, изменив одну строку кода или конфигурации?
- Независимость от платформы : вы можете запустить его на Apache, lighttpd и т. Д.?Не могли бы вы перенести его для работы в облаке?
- Независимость от шаблона : можете ли вы отключить систему шаблонов?Допустим, вы нанимаете преданных дизайнеров, и они действительно хотят заняться чем-то другим.
- Документация : Я не настолько строг, если это с открытым исходным кодом, но там будетмне должно быть достаточно официальной документации, чтобы я мог полностью понять, как писать собственные плагины, например.Также посмотрите, есть ли исходный код рабочих сайтов, использующих ту же платформу.
- Лицензия и исходный код : есть ли у вас доступ к исходному коду и разрешено ли его изменять?Подумайте, можете ли вы использовать его в коммерческих целях!(Даже если у вас нет текущих планов сделать это в настоящее время.)
Всего: гибкость .Если я удовлетворен всеми четырьмя пунктами, я почти готов.Заметьте, как у меня там не было ничего о "мертвости"?Если основной дизайн хорош, и есть легко устанавливаемые плагины для выполнения каждого модного слова web-dev 3.0-beta, которое вы хотите сделать, то мне все равно, был ли последний SVN коммит в 2006 году.