Бэкэнд и интерфейс относятся к двум независимым, взаимодополняющим уровням программного обеспечения. Если вы представляете программное обеспечение как автомобиль, то серверная часть включает в себя шасси, привод, электрическую систему, тормоза и другие механические компоненты. Напротив, в этой аналогии передняя часть будет соответствовать интерьеру с рулевым колесом, приборной панелью и другими функциями управления и комфорта.
- Определение
- Что представляет собой бэкэнд?
- Кто работает на бэкэнде?
- Как администраторы работают на бэкэнде?
- Как разработчики работают над серверной частью?
- Каковы основные бэкэнд-фреймворки?
- Symfony и Laravel: лучшие серверные фреймворки на PHP
- Ruby on Rails: классический бэкэнд-фреймворк MVC.
- Программирование на Python с использованием бэкэнд-фреймворка Django.
- Пишите веб-приложения на JavaScript с помощью Express и Node.js.
- Написание веб-приложений на Java: использование бэкэнд-фреймворка Spring
Определение
Бэкэнд — это область веб-сайта или приложения, которая защищена от пользователей и находится в фоновом режиме. Хранение и обработка данных происходит на бэкэнде.
Что представляет собой бэкэнд?
Термин «бэк-энд» происходит от английского языка и примерно означает «задняя часть» или «подструктура». Все, что происходит за кулисами, происходит там.
В просторечии термин «бэкэнд» относится к двум разным вещам:
- Уровень программного обеспечения, на котором происходит обработка данных.
- Зона администрирования, защищенная от обычных пользователей.
Программное обеспечение можно сравнить с машиной для обработки данных. Проводятся расчеты, по результатам которых определяется ход работы программного обеспечения. Данные генерируются и хранятся, в частности, с использованием таких баз данных, как MongoDB и MySQL. Все это происходит в фоновом режиме.
В отличие от внешнего интерфейса, который адаптирован под пользователя-человека, серверная часть основана на технических требованиях. Основное внимание уделяется эффективности и производительности, а также масштабируемости и безопасности.
Следуя принципу разработки «Разделение задач», бэкенд и фронтенд реализованы как независимые уровни. Оба уровня всегда необходимы для полнофункционального программного обеспечения. Бэкенд без фронтенда — это как машина без кнопок.
Кто работает на бэкэнде?
При работе над серверной частью можно выделить две разные группы пользователей :
- Администраторы, управляющие системой, вошли в систему на серверной стороне.
- Разработчики серверной части, которые создают, поддерживают и развивают серверную часть.
Давайте подробнее рассмотрим, как обе группы работают на бэкэнде.
Как администраторы работают на бэкэнде?
Работу над бэкендом легко объяснить на примере популярной CMS WordPress. Вход администратора WordPress приведет вас к серверной части CMS, также известной как панель управления WordPress. Там у вас есть собственный интерфейс для создания, редактирования и удаления контента.
В дополнение к этим классическим операциям CRUD администраторы WordPress управляют ролями пользователей WordPress на серверной стороне и используют плагины WordPress, например, для резервного копирования веб-сайтов и других административных задач.
Как разработчики работают над серверной частью?
В отличие от администраторов, разработчики серверной части не входят в систему для выполнения своей работы. Скорее, они работают в локальной среде разработки. Там пишут исходный код для исполнения на бэкенд-сервере или в контейнере.
После большинства автоматизированных тестов код загружается на сервер в виде развертывания с использованием инструментов непрерывной интеграции. В качестве альтернативы можно использовать плагины; Именно так разрабатываются плагины WordPress, которые запускаются на серверной стороне, но могут управляться администраторами.
В отличие от внешнего интерфейса, который работает на клиенте, серверная часть работает на сервере. Обычно для разработки и исполнения используется стек технологий, называемый » веб-стеком «. К наиболее известным веб-стекам относятся LAMP и MEAN. Однако существует множество других.
Веб-стек включает в себя операционную систему или контейнер в качестве среды выполнения. Внутри него работает серверная программа, которая постоянно получает запросы и отвечает на них. Для этого выполняются скрипты на языке веб-программирования, который служит связующим звеном между сервером и базой данных:
| Web stack | Execution environment | server | Database | Language |
|---|---|---|---|---|
| LAMP | Linux _ | A pache | MySQL _ | PHP _ |
| MEAN | Node.js _ | E xpress.js | MongoDB _ | Angular (JavaScript) |
Разработчики серверной части часто используют веб-фреймворки для упрощения поиска, обработки и хранения данных. Для ясности ниже мы представляем наиболее важные серверные платформы.
Каковы основные бэкэнд-фреймворки?
Фреймворки упрощают работу по бэкэнд-разработке. Это означает, что процессы, которые требуются снова и снова, такие как аутентификация пользователя и подключение к базе данных, не нужно каждый раз переписывать с нуля. Многоязычие и язык шаблонов для генерации HTML-кода, доставляемого во внешний интерфейс, также часто являются частью серверных платформ.
Какая конкретная серверная среда используется, во многом зависит от используемой среды программирования или языка программирования. Наиболее часто используемые языки — PHP или Python, Ruby, а также JavaScript и Java. Давайте рассмотрим самые популярные серверные фреймворки для этих языков.
Symfony и Laravel: лучшие серверные фреймворки на PHP
Symfony и Laravel — две наиболее широко используемые серверные платформы. Оба можно использовать для программирования сложных веб-приложений без необходимости начинать с нуля. Laravel считается более простым и быстрым в освоении, Symfony — более мощным и гибким.
Обе системы известны своей модульной конструкцией. Многие полезные веб-технологии возникли из PHP-фреймворка Symfony. Конкурент Laravel также внес свой вклад в разработку, представив свои шаблоны Laravel Blade.
Ruby on Rails: классический бэкэнд-фреймворк MVC.
Бэкэнд-фреймворк Ruby on Rails (RoR) на момент своего выпуска считался революционным и помог языку сценариев Ruby достичь своего первоначального триумфа. Вероятно, ни одна платформа не уделяла такого большого внимания производительности и удовлетворенности разработчиков. RoR популяризировал подход Модель-Представление-Контроллер (MVC), проложив путь для многих последующих серверных платформ.
Программирование на Python с использованием бэкэнд-фреймворка Django.
Python — один из классических языков веб-скриптов. Django — это мощная серверная среда для быстрого программирования новых веб-приложений. Django следует шаблону Модель-Представление-Контроллер и имеет собственный механизм шаблонов.
Пишите веб-приложения на JavaScript с помощью Express и Node.js.
Традиционно в языках программирования различают интерфейсные и серверные языки. Интерфейсные языки HTML, JavaScript и CSS были противопоставлены серверным языкам PHP, Python, Perl и Ruby. Появление среды выполнения JavaScript Node.js внесло изменения. Теперь JavaScript можно использовать как во внешнем, так и во внутреннем интерфейсе.
Node.js создает основу для написания веб-приложений на JavaScript. Кроме того, обычно используется веб-фреймворк, такой как Express. Эта комбинация стала известна как часть стека MEAN с MongoDB и интерфейсной платформой Angular.
Написание веб-приложений на Java: использование бэкэнд-фреймворка Spring
Сама по себе Java не считается языком реализации современных веб-приложений. Однако среда Spring обеспечивает стабильную основу для разработки сложных Java-приложений. Новые разработки, такие как Quarkus, обеспечивают высокопроизводительное выполнение в контейнерах.








