Фреймворк

Фреймворк

Здравствуйте, сегодня хочу рассказать о очень полезной вещи для web программирования как фремворк (framework). 

Для начала как описывает его википедия.

Фреймво́рк (англицизм неологизм от англ. framework букв. – каркас, структура) — программная платформа, определяющая структуру программной системы; программное обеспечение, облегчающее разработку и объединение разных компонентов большого программного проекта. Употребляется также слово «каркас».

Википедия описывает общее определение как для прикладного программирования, так и для web программирования. Я же остановлюсь только для web программирования.

Здесь записано общее определение, ведь бывает веб-программирование, а бывает прикладное. Соответственно, свои фреймворки есть и там, и тут. Но я на своем блоге говорю только о веб-программировании, поэтому о нем мы и поговорим.

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

Фреймворки в веб-разработке

Фреймворк привязан к языкам, на которых он написан, поэтому и говорят, например: js-фреймворк, php-framework и т.д. Как правило, его создает один или несколько опытных разработчиков для того, чтобы в будущем использовать для своих целей. Некоторые фреймворки выкладывают в свободный доступ и их использование и кастомизация становятся доступными абсолютно для всех.

Пример свободно-распространяемого css-фреймворка — Bootstrap. С его помощью можно очень легко и быстро создать адаптивный шаблон, намного быстрее, чем с полного нуля. По сути, в полной версии фреймворка содержатся такие компоненты:

  • табы-переключатели;
  • модальные окна, оповещения;
  • адаптивная резиновая сетка;
  • кнопки, формы, таблицы и т.д.;

То есть при использовании css-фреймворка вам нет нужды писать код с нуля, очень многое уже реализовано, остается только применить нужные стилевые классы к элементам и все будет работать. Заметьте, что Bootstrap это не только css, но и js-framework. Подробнее о Bootstrap вы можете почитать здесь.

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

У каждого фреймворка есть своя цель. Например, Bootstrap идеально подходит для разработки адаптивных шаблонов, сайтов с поддержкой на мобильных устройствах, с помощью Yii можно легко реализовать функционал интернет-магазина, Angular.js идеально подходит для разработки веб-приложений.

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

Если возникли какие то вопросы по статье, прошу писать в комментариях.