Веб-приложения: в рамки или нет в рамках?

Я знаю PHP и начинаю с MySql (но планирую использовать ODBC). Мне не нужны книги, объясняющие это.

Я, вероятно, квалифицирован для разработки простого веб-сайта, но имею в виду принятие довольно амбициозных приложений. Я полагаю, что почти все веб-приложения имеют некоторую общность, такие как безопасность, масштабируемость и т. Д. (Я даже не знаю, как распределить базу данных или приложение через серверные серверы, например).

Поскольку я не могу предвидеть точный характер приложений, которые я мог бы разработать (за исключением того, что этот PHP и ODBC будет задействован), есть ли смысл жениться на каркасе, или я должен просто изобретать колесо и персонализировать его сделайте это своей собственной основой.

Если существующая структура, то какая? Единственная помощь, которую я могу дать, это то, что я вряд ли буду делать сайты, порталы, сайты покупок и т. Д., Вероятно, больше полагаясь на отслеживание активов и интеллектуальную обработку данных.

Использование структуры экономит вам массу времени и поможет вам логически организовать ваше приложение mroe.

Если приложение мало, то такие каркасы, как CodeIgniter или Kohana, идеальны.

Если вы создаете большее приложение, которое должно масштабировать Symfony или возможно, Zend – это те, на которые нужно смотреть.

Если вы хотите запустить приложение в Symfony, вы бы быстро получили:

  • переписывание URL с использованием маршрутов
  • структура формы для обработки всего, что связано с вашими веб-формами
  • интернационализация и локализация
  • отправки по электронной почте
  • кэширование
  • генератор зоны администратора, который поможет вам быстро добавить данные
  • модульная система тестирования

Кроме того, вся инфраструктура расширяема и надежна в соответствии с вашими потребностями.

Начиная без рамки, вам придется написать все это самостоятельно. Или интегрируйте несколько разрозненных модулей с открытым исходным кодом.

Надеюсь это поможет.

Хорошие рамки дают вам готовое решение общих проблем. Переосмысление решений для вас, вероятно, будет чрезмерной работой. Как учебное упражнение, придумывающее материал для вашего, имеет определенную ценность. Чтобы получить реальную работу, эффективно использовать фреймворк.

Это предполагает, что в вашем мире существуют хорошие рамки …

В настоящее время я развиваюсь в PHP-структуре Kohana (версия 3). Существует также способ сделать модели (для шаблона (H) MVC) очень быстро, используя ORM. Для получения дополнительной информации смотрите следующее: http://kohanaframework.org/guide/tutorials.orm и посмотрите http://kohanaframework.org/guide/api и http://kohanaframework.org/download

Рамки отлично подходят для того, чтобы убедиться, что вы кодируете регламентированный режим и что ваш код читаем. Они также предлагают большое количество библиотеки кодов, которые смогут сэкономить вам много времени на разработке веб-приложений.

В структуре Zend имеется огромное количество библиотеки кода, которую вы можете включить в приложение, чтобы легко ее расширять, а для интеллектуального анализа данных, имеющего доступ к этой библиотеке, было бы очень полезно, так как я уверен, что для Zend уже есть библиотека данных.

Основа Symfony отлично подходит для быстрого создания сайтов и очень строга, используя innodb для своих таблиц базы данных, которые обеспечивают целостность базы данных и полезны, если вы намереваетесь разработать строгую реляционную базу данных. Генератор админов также поразительно быстро развивает системы управления контентом для веб-сайтов, которые вы разрабатываете.

Если вы собираетесь использовать фреймворк, я бы посмотрел на этот учебник http://anantgarg.com/2009/03/13/write-your-own-php-mvc-framework-part-1/, который проведет вас через ваш первая структура MVC (модель обзора) и намного проще, чем прыгать прямо в полную структуру, такую ​​как Zend. Я просто буду следовать этому руководству, пока у вас не будет достойного кодирования в стиле mvc, его действительно не стоит изобретать колесо из-за количества времени и качества существующих фреймворков.

Надеюсь это поможет

Люк

Уже есть некоторые хорошие ответы на вопрос «какие рамки» для PHP на StackOverflow, поэтому я не буду вдаваться в эти вопросы.

Однако, что касается библиотек, я бы рекомендовал использовать библиотеку ADODB (более простая правильная санитаризация ввода, поддержка нескольких БД, лучший API, чем собственные классы специфических БД PHP) и написания нескольких собственных классов.

Хорошим примером «облегченной» структуры, обеспечивающей шаблонизацию (и это также хороший пример хорошо написанной структуры), является Smarty (который используется W3C на их веб-сайте, а не плохой индоссамент). Некоторым кажется излишним иметь язык шаблонов в PHP, но он помогает обеспечить заметную степень разделения логики представления и логики приложения.

Я думаю, что лучше всего избегать фреймворков на PHP, пока вы не увидите что-то, что действительно соответствует потребностям, которые вы не можете легко решить без него.

Я считаю, что вы счастливы писать свои собственные классы и макеты для конкретных сайтов, и вы сможете лучше оценить другие структуры (я рассматриваю это как уникальную проблему с PHP, поскольку есть немного избыточного предложения crummy рамки, которые мешают найти хорошие).

Я использовал Yii для нескольких проектов. Необходимо сказать, что его расширения (backvendor http://www.yiiframework.com/extension/backvendor/ и bootstrap http://www.yiiframework.com/extension/bootstrap/ ) действительно экономят время на первых этапах разработки