Что такое фреймворк

Общая теория фреймворков

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

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

Однако есть вполне явное различие — повсеместная инверсия управления



  • (Прямое управление) Ваш код запускается, а когда ему нужно — вызывает функции библиотеки.
  • (Обратное управление) Запускается сначала фреймворк, и ваш код вызывает тоже он — тогда, когда нужно ему. Естественно, все эти «когда нужно ему» задокументированы и при написании кода вы крепите свои методы/классы на выбранные точки расширения. Фактически, фреймворк — это в широком смысле «базовый класс» приложения.

В последнее время знание определенного фреймворка, нередко является немаловажным фактором при приеме программиста на работу.

Примеры популярных фреймворков:

  • Zend Framework — это свободный каркас на PHP для разработки веб-приложений и веб-сервисов.
  • CodeIgniter — фреймворк с открытым исходным кодом, на языке программирования PHP
  • Blueprint — "CSS-фреймворк, экономящий время"
  • Yii — это высокопроизводительный веб-каркас, написанный на PHP
  • Bootstrap — свободный набор инструментов для создания сайтов и веб-приложений.
  • Symfony — свободный каркас, написанный на PHP5
  • .net framework — программная платформа, выпущенная компанией Microsoft в 2002 году
  • ...

Почему я выбрал yii

Почему я выбрал фреймворк yii как главную тему сайта? Во-первых, Yii - это php фреймворк, а я немного знаю этот язык программирования. К тому же, я готовил материал по php для курса "Интернет-технологии", который был у нас в прошлом семестре.

Во-вторых, во время каникул я встретил предложение о 2-х недельной стажировке в одной веб-студии. Одним из требований являлось знание фреймворка yii. На тот момент я не сталкивался с фреймворками, вообще, хотя часто встречал это слово на различных ресурсах.

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

Поэтому на будущее, я решил пополнить свои знания в этой области и поделиться ими с Вами.
Может быть кому-то и пригодится :)




Вверх