Статья
Фреймворк: что это простыми словами
Фреймворк — готовый каркас для программы: в нём уже решены типовые задачи, а разработчик пишет только то, что нужно его проекту. С английского framework переводится как «каркас», «рамка». Разбираем, чем фреймворк отличается от библиотеки, какие бывают и что владельцу сайта стоит знать о фреймворке, на котором собран его сайт.
Простыми словами
Представьте дом, который строят по готовому каркасу: несущие стены, перекрытия и коммуникации сделаны по проверенной схеме, а планировку и отделку вы выбираете сами. Фреймворк — такой каркас для программы. В нём уже есть маршруты страниц, работа с данными, защита от типовых атак, и разработчик не изобретает это заново для каждого сайта.
Фреймворк и библиотека
Библиотека — набор готовых инструментов: разработчик берёт нужный, когда захочет. Фреймворк задаёт правила всего проекта: где лежат файлы, как устроены страницы, когда вызывается код разработчика.
- React — библиотека: так его называют сами создатели, «библиотека для интерфейсов».
- Next.js — фреймворк на основе React: к интерфейсу добавляет маршруты, серверную часть и сборку.
- Vue — фреймворк для интерфейсов.
- Node.js — ни то ни другое: это среда, в которой JavaScript работает на сервере.
- Bootstrap — CSS-фреймворк: готовые стили и сетка для вёрстки.
Какие бывают
| Для чего | Примеры |
|---|---|
| Интерфейс в браузере | Vue, Angular, Svelte; React — библиотека, но с ним работают так же |
| Сайт целиком: страницы и сервер | Next.js, Nuxt |
| Серверная часть | Laravel (PHP), Django (Python), Express (Node.js), Ruby on Rails |
| Стили и вёрстка | Bootstrap, Tailwind CSS |
Слово используют и вне программирования: в маркетинге и управлении проектами фреймворком называют готовую схему работы — например, Scrum.
Фреймворк, CMS и конструктор
- Конструктор — всё готово: собираете сайт из блоков, программировать не нужно. Об их пределах — статья «Конструкторы сайтов».
- CMS — готовая система с панелью управления: WordPress, 1С-Битрикс. Подробнее — в статье «Что такое CMS».
- Фреймворк — каркас для программиста: сайт пишут под задачу, а панели управления может и не быть.
Что важно владельцу сайта
- Популярность. На распространённом фреймворке проще найти другого разработчика, если вы смените подрядчика.
- Обновления. Фреймворки выпускают новые версии и исправления безопасности, и сайт время от времени нужно обновлять.
- Исходники у вас. Тогда сайт сможет поддерживать любой разработчик, который знает этот фреймворк.
Как это делаем мы
Наш собственный сайт собран на Next.js: страницы и серверная часть живут в одном проекте, а статьи блога лежат простыми текстовыми файлами. Сайты компаний мы делаем на коде с собственным дизайном. После сдачи исходники и доступы остаются у вас: правки можем вносить мы, а можно передать сайт любому другому разработчику — привязки к студии нет.