Программирование

Framework

Что такое Framework?

Framework значит каркас. Папки программы, путь адреса и порядок работы заданы заранее. Своё правило пишешь в пустое место посередине. Он вызывает тебя. Библиотека не такая. Библиотека — одна готовая часть. Ты вызываешь её, чтобы поправить дату, измерить картинку или записать число. Каркас она не даёт. Django для Python и строит зад сайта. Laravel для PHP. React смотрит на лицо страницы. Люди зовут и его framework, но это библиотека: она делит лицо на части и не заставляет правило папок и сервера. npm и pip — не framework. Это инструмент, который приносит пакет. То, что они приносят, может быть и библиотекой, и framework.

Для чего нужен Framework?

Framework нужен, чтобы не начинать с пустого проекта. Библиотека — чтобы не писать одну работу заново.

  • Взять готовыми правило папок и адреса сайта
  • Вызвать одну функцию и сделать только эту работу
  • Разделить лицо на маленькие части
  • Не писать одну работу с нуля в каждом проекте

Что можно делать с Framework?

Когда открываешь новый проект на framework, папки уже стоят. Свою страницу или своё правило пишешь внутрь. Если не напишешь функцию тем именем, которое он хочет, работа не идёт. С библиотекой решаешь ты. Когда надо, вызываешь одну строку и остальное пишешь сам. Framework ведёт быстро, но путь тоже выбирает сам. Для маленькой страницы большой framework может быть тяжёлым. На большом сайте собирать всё руками без каркаса тоже рассыпается. Сначала пойми, что работа маленькая, потом бери каркас.

Сложно ли освоить Framework?

Вызвать одну строку легко. Трудно выучить собственное правило каркаса. Если имя ошибочно на одну букву, страница не открывается, и причина не в твоей работе, а в том, чего ждал каркас. Старый урок может не работать в новой версии. Вешать framework на всё тоже ошибка. Для страницы с одной кнопкой большой каркас приносит только путаницу. Библиотеки тоже не собирают вслепую. Пакет, который ты принёс, может попросить другой пакет.

Плюсы и ограничения

Framework укорачивает путь и сажает всех в одну структуру. Свободы тоже меньше. Библиотека оставляет тебя свободным, но структуру думаешь ты. Для маленькой работы хватает библиотеки или ничего. Для большого сайта каркас уменьшает рассыпание. Считать React каркасом и ждать правила сервера путает человека.

Основные понятия

Каркас вызывает тебя. Библиотеку вызываешь ты. Инструмент пакетов — ни то ни другое.

  • Django и Laravel — это framework
  • React в основном библиотека
  • Твой код вызывает библиотеку
  • npm и pip только приносят пакет

Короткий пример

Первая строка вызывает библиотеку. Вторая — имя, которого ждёт каркас. Каркас сам ищет это имя.

# kitabxana: sən çağırırsan
yaz(tarix)

# framework: o bu adı axtarır
def index():
    return "salam"

Частые вопросы

  • Framework и библиотека — одно и то же? Нет. Библиотеку вызываешь ты. Framework вызывает тебя и структуру ставит сам.
  • React — это framework? Многие так говорят. На самом деле это библиотека, которая делит лицо страницы на части. Правило папок и сервера она не заставляет.
  • npm — это framework? Нет. npm приносит пакет. То, что он приносит, может быть и библиотекой, и framework.