вторник, 22 февраля 2022 г.

Фронтенд, бэкенд и фулстек

Давно хотел об этом рассказать, да всё как-то руки не доходили. Но вот дошли…


Если вы увлекаетесь программированием, то наверняка слышали такие слова, как фронтенд-разработчик, бэкенд-разработчик и фулстек-разработчик. Что они обозначают?


Если вы знаете английский, то можете догадаться. Но я на всякий случай поясню.


Фронтенд (front-end) - клиентская сторона пользовательского интерфейса к программно-аппаратной части сервиса. Слово можно перевести на русский как “передний конец” или “передняя часть”, из чего следует, что это часть программы, которая взаимодействует с пользователем.


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


Бэкенд (back-end) - программно-аппаратная часть сервиса, отвечающая за работу его внутренних функций. Можно перевести как “задний конец” или “задняя часть”.


Соответственно, бэкенд-разработчик - это программист, который разрабатывает части программного обеспечения, которые не взаимодействуют напрямую с пользователем, а стыкуют интерфейсную часть, созданную фронтенд-разработчиком, с “железом” и/или, например, серверной частью программного обеспечения.




Термины появились в программной инженерии в ходе развития принципа разделения ответственности между внешним представлением и внутренней реализацией.


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


Но есть ещё и универсальные солдаты - фулстек-разработчики. Это люди, которые знают и то и то. При этом в большинстве случаев им не нужны глубокие знания фронтенда и/или бэкенда. Потому что обычно они являются неким связующим звеном между фронтами и ендами, общаются с заказчиками, занимаются тестированием, планированием и т.п. То есть это скорее руководитель проекта, чем программист. Хотя всё зависит от требований работодателя. Может кто-то из них и мечтает заменить двух программистов одним.


Фулстек (full-stack) можно перевести как “полный пакет”. То есть программист, который может создать ПО “под ключ”, включая все возможные его части.


Эти термины наиболее часто используются в веб-программировании. В прикладном программировании такое разделение встречается реже.


К технологиям разработки front-end можно отнести, например, HTML, CSS, JavaScript.


К технологиям back-end разработки относятся PHP, Java, Python, JavaScript (Node.js) и другие.



Комментариев нет:

Отправить комментарий