Чем отличается Frontend от Backend?

блоги
программирование

(Pot) #1

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

Сейчас, эта сфера разделяется на два основных класса: Frontend и Backend.

Первый включает в себя обширное понятие работы над той частью cайта, что «на виду», то есть над всем тем, что пользователь видит, когда переходит на веб-страницу.

Под вторым классом понимается труд разработчиков, направленный на обеспечение хранения, обработки и выдачу данных.


Google foto

Очень коротко можно было бы выразиться так: Frontend включает в себя HTML, CSS и JavaScript. Но такое определение было бы чересчур лаконично. К области Frontend относится все то, что касается разметки, верстки и логики страниц, то есть не только вышеупомянутые языки, но и все их усовершенствования, такие как фреймворки, препроцессоры, постпроцессоры, шаблонизаторы. Все инструменты, что могут быть задействованы при создании внешнего вида сайта, причисляются к сфере Frontend, а трудящийся в ней специалист называется frontend-разработчиком.

Backend-разработчики оперируют языками программирования, такими как PHP, Ruby, Python, Java и др. Кстати, JavaSccript может использоваться и обеих областях сайтостроения, так как обладает разносторонними функциями. Еще веб-мастеру для продуктивной работы требуются системы управления базами данных, например MySQL, PostgreSQL и тому подобные программные средства.

Frontend и Backend — не соперники, а «шагающие рука об руку» партнеры. В настоящее время имеются разные архитектуры (совокупности правил в организации программной системы, согласно которым обеспечиваются связи между ее компонентами), определяющие их «партнерские взаимоотношения».

Один из методов взаимодействия — через сервер приложения. Запрос с одного компьютера отправляется на сервер, в виде понятных ему данных (например, кодировки PHP), откуда потом возвращается в браузер информацией, доступной для него (символами HTML и CSS). Все это происходит очень быстро, поэтому человек, нажавший на ссылку, практически сразу видит в браузере заданные сервером изображения и контент.

Другой способ — использование AJAX, который позволяет ускорить и упростить процесс, описанный выше. Аббревиатура AJAX расшифровывается, как Asynchronous Javascript and XML, где «Asynchronous» — это «асинхронный», а Javascript и XML — языки, отвечающие за интерактивность и разметку. В этом случае, обновление данных не требует постоянной перезагрузки страницы, а происходит постоянно, в «фоновом» режиме. Javascript отправляет запрос, а приходит ответ в виде кода разметки XML. Технологией AJAX часто пользуются при создании одностраничных приложений.

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

Больше вопросов: программирование…