Что такое PHP-фреймворки и в чем их преимущества |
Технологии создания сайтов и веб-приложений последовательно эволюционируют в строну облегчения разработки при одновременном расширении возможностей для творчества.
Знакомьтесь, новое слово в науке и технике – фреймворки приходят на смену уже успевшим стать привычными системам управления контентом (CMS).
Сегодня в веб-студии можно услышать, что разработка сайтов на Laravel позволяет изготовить для цифрового бизнеса намного более крутой и эффективный инструмент интернет-маркетинга (сайт компании). Естественно, клиент, прежде чем сделать выбор, желает узнать подробности, преимущества и недостатки предлагаемого продукта.
Что такое PHP-фреймворки
Только ради Бога, не спрашивайте у программиста «что такое фреймворк». Программист начнет объяснять на языке программного кода (он так думает) и все станет еще более туманно.
Все познается в сравнении на основе понятных явлений.
Сайты на CMS похожи на конструкторы LEGO. Есть набор готовых шаблонов, есть плагины для добавления новых функций, есть базы данных. Все эти составляющие фиксированы и управляются унифицированным движком. Такая ситуация позволяет делать сайты очень быстро и очень дешево. Но, типовые.
А если заказчик сайта желает получить отсутствующие в каталогах шаблоны и плагины, потому что для бизнеса требуется достижение особых целей?
Тогда придется писать сайт вручную и это очень долго и очень дорого.
Чтобы решить эту очень неприятную проблему (кому же хочется платить сайт дорого и жать долго) были придуманы PHP-фреймворки.
Говоря простыми словами, фреймворк – это CMS с расширенными для творчества возможностями и инструментами. Есть библиотеки готовых элементов, а чего не хватает – программист быстро допишет немного кода по заказу клиента.
Такой подход позволяет проектировать и создавать веб-проекты практически любой сложности, с любым функционалом. Что называется, «любой каприз за ваши деньги».
Источник : http://polit.ua/articles/1089-chto-takoe-php-freymvork.html
PHP-фреймворки : За и против
Работа с Фреймворком требует определенных знаний. Но это не так страшно, как может показаться на первый взгляд.
Существует множество информативных ресурсов, дающих стартовые знания, а когда вы поймете принцип их работы от вас потребуется только желание к творчеству и экспериментированию. Фреймворк можно назвать основой для будущего приложения, он является набором готового кода, позволяющего решать задачи, поставленные перед создателями сайтов.
Преимущества
Достоинства
1. Код созданный на Фреймворках «легкий», он отличается высокой производительностью. Скорость работы выше только у приложений, написанных на чистом PHP, с индивидуальной разработкой кодов.
2. Хорошая защищенность кода. Фреймворки пишут опытные программисты, код проходит тестирование сообществом разработчиков. Недостатки и уязвимости своевременно устраняются.Возможность применения нестандартных решений значительно снижает вероятность взлома.
3. Универсальность. Используя готовые классы и библиотеки Фреймворков можно решить любую поставленную задачу.
Источник : https://fructcode.com/ru/blog/how-to-understand-wh...-website-php-framework-or-cms/
Недостатки
1. Разработка сайта занимает большое количество времени.
С этим думаю, всё понятно, т.к. при создании сайтов на фреймворке, практически весь функционал будущего ресурса пишется с нуля, что отнимает массу времени у разработчиков.
2. Следовательно, стоимость сайта, разработанного на базе фреймворка, будет больше аналогичного проекта, реализованного на CMS.
Хотя, правды ради, нужно сказать, что проект проекту рознь. Как уже говорилось, разработав Интернет-магазин на ЦМС вместо фреймворка, вы выиграете по времени, а, следовательно, и по деньгам.
А вот в случае с лендингом, заказав его разработку на CMS, вы можете и проиграть.
3. Несмотря на то, что для фреймворков существуют решения, позволяющие внедрить готовый функционал путём их установки на сайт, данный процесс не так-то прост.
Как уже говорилось, дополнительный функционал для frameworks в большинстве случаев реализован в виде пакетов.
Для того, чтобы установить в фреймворк пакет, для начала на хостинге нужно будет установить пакетный менеджер (Composer для PHP, Bower для JavaScript и CSS, npm для Node.js и т.д.), затем настроить его, научиться с ним работать, а только уже после всего этого найти и установить требуемый пакет.
Согласитесь, что данный способ расширения «слегка» усложняет работу с фреймворками простым смертным и в данном моменте фреймворки существенно уступают CMS, где установка модулей и шаблонов занимает, от силы, 1 минуту.
4. Фреймворк – инструмент для профессионалов, следовательно, в тематических сообществах можете даже не пробовать создавать топики с названиями типа «Настройка корзины заказов» или «Как добавить новую категорию», которыми рябят форумы, посвящённые CMS.
В лучшем случае вам предоставят простыню кода, с которым придётся разбираться самостоятельно, или насоветуют кучу библиотек, с которыми вы не будете знать, что делать. В худшем — высмеют или вообще забанят.
К чему эта куча букв? Да к тому, что самостоятельно добавить новую функцию на сайт, разработанный на базе фреймворка вам вряд ли удастся самостоятельно. Как выход из ситуации – придётся обращаться за помощью к профессиональным разработчикам, которые имеют опыт работы с требуемой платформой.
5. А услуги профессионалов — это, в свою очередь, — дополнительные расходы.
И они, кстати, могут в разы превышать стоимость услуг знатоков CMS, т.к. сайты, разработанные на одном и том же фреймворке, могут иметь кардинально различную структуру кода и каталогов, разобраться с чем не поможет никакая документация.
Чтобы сэкономить рекомендуется изначально искать исполнителей с хорошими отзывами от предыдущих клиентов, а также нацеленного на дальнейшую поддержку сайта.
Причём, не лишним будет оговорить с ним заранее стоимость как разработки ресурса, так и его поддержки, а также оформить всё это в виде соответствующего договора.
Или заказать разработку сайта «под ключ», т.к. фреймворк идеально подходит для этого.
Источник : http://cccp-blog.com/sozdanie-saytov/plyusy-i-minu...iya-sajtov-dlya-razrabotchikov
Самые популярные PHP-фреймворки
Laravel
Laravel - это бесплатный PHP фреймворк с открытым исходным кодом, созданный Тейлором Отвеллом для разработки веб-приложений по архитектурному шаблону MVC.
Фреймворк Laravel очень популярен среди западных разработчиков веб-приложений.
С помощью менеджера пакетов Composer, фреймворк Laravel позволяет легко устанавливать и подключать различные компоненты для использования в веб-приложении.
Реализация шаблона ActiveRecord - Eloquent ORM, позволяет установить отношения между объектами базы данных веб-приложения и выстраивать удобные запросы для манипуляции данными.
Механизм автозагрузки классов позволяет не подключать вручную файлы через include и предотвращает загрузку не используемых компонентов.
Удобная система миграций помогает упростить развертывание и обновление веб-приложения.
В Laravel есть встроенная поддержка движка шаблонов Blade, с помощью которого можно делать простые представления веб-приложения используя специальный синтаксис.
При создании приложения можно использовать Artisan - интерфейс командной строки для ввода встроенных команд, а также создания своих собственных.
В Laravel есть много полезных функций, позволяющих сделать процесс разработки веб-приложений быстрым, простым и качественным.
Из подобных функций можно отметить dd() - удобный аналог стандартной функции PHP var_dump(). Функция выводит информацию переменной в более понятной форме, разделяя данные на дерево атрибутов и значений, в возможностью поиска и перехода по ним.
Yii фреймворк
Yii - это бесплатный объектно-ориентированный компонентный full-stack PHP фреймворк. В основе Yii лежит другой фреймворк - PRADO, написанный на ASP.NET и впоследствии перенесенный на PHP. Вскоре после построения новой архитектуры, фреймворк PRADO был переименован на Yii. Название фреймворка является аббревиатурой слова «Yes It Is!». Прародителем фреймворка является китайский разработчик Qiang Xue.
Yii можно использовать для разработки любого вида веб-приложений. Благодаря своей основе компонентов, архитектуре и сложной поддержки кэширования, фреймворк подходит для разработки крупномасштабных проектов, таких как порталы, форумы, системы управления контентом (CMS), систем электронной коммерции, RESTful веб-сервисов и т.д.
Yii реализует для использования MVC (Model-View-Controller) архитектурный шаблон и способствует организации кода на основе этого шаблона.
Yii является full-stack фреймворком, предоставляя множество проверенных и готовых к использованию функций: построитель запросов и ActiveRecord для реляционных и NoSQL баз данных, RESTful API, поддержку многоуровневого кэширования и т.п.
Yii чрезвычайно расширяемый фреймворк в котором можно заменить почти каждый кусочек кода и разрабатывать нужные расширения.
Yii предоставляет Gii - визуальный интерфейс для автоматической генерации контроллеров, моделей и отображений.
Symfony
Symfony - свободный PHP фреймворк для быстрой разработки веб-приложений и решения рутинных задач веб-программистов. Разработка и поддержка фреймворка спонсируется французской компанией Sensio.
Symfony состоит из набора не связанных между собой компонентов, которые можно использовать повторно в проектах.
Symfony позволяет устанавливать сторонние пакеты, библиотеки, компоненты и настраивать их с помощью конфигурации в форматах YAML, XML, PHP, а также .env файлах.
Symfony не обеспечивает компонент для работы с базой данных, но обеспечивает тесную интеграцию с библиотекой Doctrine.
Symfony предоставляет функцию почтовой программы на основе популярной библиотеки Swift Mailer. Эта почтовая программа поддерживает отправку сообщений с ваших собственных почтовых серверов, а также с использованием популярных почтовых провайдеров, таких как Mandrill, SendGrid и Amazon SES.
Механизм интернационализации позволяет установить и произвести перевод сообщений веб-приложения на основе выбранного языка или страны.
Symfony предлагает систему логирования ошибок приложения, а также подключить библиотеку логирования Monolog.
Комментировать | « Пред. запись — К дневнику — След. запись » | Страницы: [1] [Новые] |