Фреймворки, используемые при разработке Web-сайтов



Front end

1. Angular

Этот фреймворк от Google, ставший очень популярным в последние годы, идеален для разработчиков, которые с большим вниманием относятся к последним новинкам отрасли. Angularпредставляет из себя набор современных функций для разработки и проектирования, обеспечивающих высокую скорость разработки. Компания Google даже создала специальный компонент AngularMaterial, позволяющий легко реализовать настоящий MaterialDesign с помощью Angular.

Angular 2 добрался до релиза в сентябре прошлого года. Позже Google анонсировала выпуск Angular 3, но затем сообщила о том, что сразу займется четвертой версией фреймворка, которая в марте стала доступна для скачивания.

2. React

Жемчужина веб-программирования: даже некоторые рьяные последователи Angular сделали свой выбор в пользу React. React смог то, с чем не справился Angular — он позволяет разрабатывать фронтенд, не погружаясь в дебри и сложности фреймворка. React — JavaScript-библиотека, созданная Facebook, и основная ее цель — обеспечить комфортную работу с Shadow DOM. Для этого используется Virtual DOM, модель, при каждом изменении генерирующая список операций, которые необходимо провести над DOM, чтобы привести его к новому состоянию.

Если вас заинтересовал этот фреймворк и вы решили начать его изучение, мы подготовили для вас перевод 9 полезных советов по этой теме. В апреле 2017 Facebook анонсировала перезапуск библиотеки, новый проект будет называться ReactFiber.

3. Socket

Socket является одним из наиболее популярных инструментов для разработки реал-тайм проектов. Будучи фреймворком с событийно-ориентированной архитектурой, Socket поделен на серверную и клиентскую части с одинаковым API: такая архитектура позволяет без лишних телодвижений создавать самые разнообразные приложения: от браузерных игр, видео- и текстовых чатов до офисных приложений с функцией совместной работы над документом. Именно на основе Socket реализована аналогичная функция в Microsoft Office Online.

4. Ember

Ember — современныйJavaScript-фреймворк для амбициозных разработчиков и проектов. Будучи невероятно мощным, он очень прост в освоении.

Одной из вещей, за которые любят Ember, является шаблонизаторHandlebars, который, по словам разработчиков, намного элегантней директив Angular. В целом Ember почти всё делает за программиста, поэтому вам останется только создавать свою бизнес-логику и наслаждаться процессом.

5. Polymer

Polymer — это проект Google, который не просто облегчает вам использование MaterialDesign. Этот очаровательный фреймворк — воплощение скорости и удобства в работе над интерфейсом, позволяющий создавать и повторно использовать веб-компоненты. Проект много времени провел в стадии бета-теста, но сразу после выхода его популярность начала расти подобно снежному кому.

6. Meteor

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

С появлением облачного хостинга Galaxy, созданного специально для Meteor-приложений, Meteor сделал фронтенд и бэкенд неразрывными компонентами, для работы с которыми не нужен огромный опыт. Meteor — full-stackфреймворк, который поможет вам на одном JS создать современное, хорошо масштабируемое приложение для веба и мобильных устройств. Публичный репозиторийAtmosphere хранит тысячи пакетов, которые помогут вам создавать такие приложения на лету.

7. Backbone

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

Backbone — один из самых популярных фреймворков для веб-разработки, в основном благодаря двум причинам: принцип применения модулей очень прост для понимания, а значит, просто и обучение использованию самого фреймворка.

8. Vue

Vue — это простой в использовании и при этом очень мощный фреймворк. Начинающие по достоинству оценят документацию. Vue берёт всё лучшее от других фреймворков и соединяет в один удобный инструмент. Так же, как и React, Vue работает с однофайловыми компонентами и однонаправленными связями между ними, но работать с ним проще благодаря CLI-инструменту vue-cli. Внутри Vue-компонентов можно использовать препроцессоры (Jade, Stylus и др.)

9. Knockout

Knockout — это открытыйфреймворк, работающий с моделью MVVM. Он разработан на чистомJavaScript без внешних зависимостей. Knockoutлёгок и удобен в использовании и особенно эффективен в связывании данных. Отлично подойдёт для создания одностраничных приложений.

10. LiquidLava

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

11. dhtmlxSuite

Библиотека для создания кроссбраузерных мобильных и веб-приложений, которая содержит большой набор готовых к использованию компонентов пользовательского интерфейса, которые могут быть скомбинированы или использованы по отдельности. Виджетысовместимы с любой серверной технологией: PHP, Java, ASP.NET, Ruby, Grails, ColdFusion, Python и т.д. В новой версии 5.1 добавлена поддержка TypeScript, JSON и Promise API.

12. PureMVC

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

13. SenchaExt JS

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

14. Spine

Крайне легковесныйфреймворк с подробной структурированной документацией и доступным исходным кодом. Из отличительных черт — асинхронное соединение с сервером, минимальное число зависимостей, адаптеры для локальных хранилищ AJAX и HTML5. Совместим со всеми современными браузерами.

15. qooxdoo

Универсальныйфреймворк с открытым исходным кодом и объектно-ориентированной моделью программирования. Подходит для создания любых видов приложений (в том числе за пределами веба, благодаря компоненту qx.Server, который можно запускать во многих средах и контекстах). Так же, как и предыдущие проекты, содержит все необходимые инструменты для комфортной работы.

Back end

Фреймворк представляет из себя некоторый программный каркас, реализующий базовую архитектуру проекта. Наиболее известными современными php-фреймворками является ZendFramework, Yii, CodeIgniter, Symfony и многие другие.

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

1. ZendFramework (ZF) - является объектно-ориентированным фреймворком с открытым исходным кодом, использует PHP5 и выпущен под лицензией New BSD License.

ZendFramework был задуман в начале 2005 года, когда много новых фреймворков набирали популярность в сообществе web-разработчиков. О ZF впервые было объявлено на первой Zend конференции в октябре 2005 года.

Функции ZendFramework включают в себя:

- большое количество модулей и библиотек;

- разрабатывается разработчиками ядра PHP;

- поддержка unit-тестов;

- достаточно низкая скорость работы с библиотеками;

- встроенный JS фреймворк DOJO и библиотеки для него.

2. Symfony - web-фреймворкнаписанный на PHP, использует платформу модель-представление-контроллер (MVC). Был выпущен под лицензией MIT. Symfony является свободным программным обеспечением. Symfony не следует путать с Symfony CMS, OpenSource XML/XSLT системой управления контентом. Symfony ускоряет создание и поддержку web-приложений. В настоящее время совместима с ORM Propel и Doctrine. Следует отметить, что на типичном хостинге, где ускоритель PHP отсутствует, Symfony может использовать собственный движок кэширования для ускорения выполнения кода.

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

Достоинства:

- простой в освоении;

- достаточно высокая скорость работы ядра.

3. Yii - высокопроизводительный фреймворк, изучение которого будет оправдано для организации со штатом начиная от 10 человек, в одиночку с Yii справиться сложно. Фреймворк позволяет создавать очень производительные системы.

Yii является золотой серединой между ZendFramework и Codeingiter. Он обладает великолепной документацией и всегда можно залезть в код, чтобы разобраться, что и как работает.

Фреймворк написан строго на PHP5 и строго в концепции ООП, поэтому если есть базовые знания принципов ООП, то разобраться в нем будет просто.

Yii намного более комплексный (больше функционала) и лучше структурирован, чем CodeIgniter. Он меньше и более производительный, чем ZendFramework. Требуется намного меньше кода при написании приложений, в то же время Yii обладает огромным функционалом.

4. CodeIgniter - популярныйфреймворк для разработки полноценных web-систем и приложений. CodeIgniter послужил базой для таких фреймворков, как Kohana и RainFramework , многие идеи CodeIgniter применены во фреймворкахFuel PHP и CodeLighter. На CodeIgniter основано множество CMS: Fuel CMS, MaxSite CMS, Cogear, PyroCMS и другие. CodeIgniter - это PHP фреймворк, который использует платформу MVC, имеет классы для доступа к данным, классы для работы с почтой, FTP и XML-RPC. У CodeIgniter имеется исчерпывающая документация для начала работы [24].

Характерные особенности фреймворков

  ZendFramework 1 CodeIgniter 2 Symfony 2
Описание Академически грамотный код. Очень гибок. Требует хорошего знания PHP и ООП. Достаточно полная техническая документация. Почти микрофреймворк. Очень лёгкий для изучения. Отличная документация. Гибок. Легко использовать сторонний код. Активно использует командную строку. Мощный ORM, хорошая система view, генераторы кода. Хорошая документация, но сложен для изучения.
Необходимый уровень знаний PHP5, ООП, шаблоны проектирования. PHP, Основы ООП PHP5, ООП, ORM, консоль.
Платформа PHP 5 PHP 4/5 PHP 5
Сложность установки и настройки Высокая Низкая Высокая
Поддерживаемые БД MySQL, Oracle, PostgreSQL, MS SQL, SQLite MySQL, Oracle, PostgreSQL, MS SQL, SQLite MySQL, Oracle, PostgreSQL, MS SQL, SQLite
Русскоязычное сообщество Да Документация, форум, блоги Нет
Лицензия New BSD BSD MIT

 


Дата добавления: 2018-08-06; просмотров: 236; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!