Interested Article - Веб-фреймворк

Веб-фреймворк ( англ. web framework), фреймворк веб-приложений ( англ. web application framework , WAF) или каркас веб-приложений фреймворк , предназначенный для создания динамических веб-сайтов, сетевых приложений, сервисов или ресурсов. Он упрощает разработку и избавляет от необходимости написания рутинного кода. Многие фреймворки упрощают доступ к базам данных, разработку интерфейса, и также уменьшают дублирование кода .

Существуют специализированные типы веб-фреймворков, например, фреймворки для создания систем управления содержимым .

Архитектурные решения

Большая часть фреймворков веб-приложений реализует шаблон проектирования Model-View-Controller (MVC). Однако, также могут использоваться и другие шаблоны, например, Model-View-Presenter ( Backbone.js ) или Model-View-ViewModel ( Knockout.js ).

Веб-фреймворки можно также по уровню абстракции условно разделить на 3 типа:

  • Основанные на запросах: фреймворк непосредственно обрабатывает входящие запросы. Сохранение состояния происходит за счёт серверных сессий. Примеры: Django , Ruby on Rails , Struts , Grails .
  • Основанные на компонентах: фреймворк абстрагирует обработку запросов внутри стандартных компонентов и самостоятельно следит за состоянием. Своим поведением данные фреймворки напоминают стандартные программные графические интерфейсы. Примеры: JavaServer Faces , Tapestry , Wicket .
  • Rich Internet Application -фреймворк: служат для разработки полноценных приложений, запускаемых внутри браузера. Пример: Apache Flex .

Примечания

  1. Multiple (wiki). (англ.) . Docforge . Дата обращения: 19 января 2010. Архивировано из 16 октября 2018 года.
  2. (англ.) . Дата обращения: 17 января 2015. 16 января 2015 года.

Литература

  • Samisa Abeysinghe. Ch 3. Dealing with Complexity → Frameworks to simplify complexity // PHP Team Development. — (англ.) (, 2009. — P. 58-68. — 183 p. — ISBN 978-1-847195-06-7 .
  • Денис Баженов. // PHP Inside. — phpclub.ru, 2005. — № 11 . — С. 5-10 .
  • Йен Маурер. = Python Web frameworks, Part 1: Develop for the Web with Django and Python. — IBM developerWorks. , = Part 2: Web development with TurboGears and Python. — IBM developerWorks.
  • Julia Plekhanova. (англ.) // The IBIT Report. — Temple University, Сентябрь 2009.
  • Martin Björemo, Predrag Trninić. (англ.) . — Июнь 2010.

Ссылки

  • (англ.) .

Same as Веб-фреймворк