Что такое front-end и back-end?

    Фронтент и бекенд

    Часто мне приходилось слышать оба этих термина, причём люди, которые ими оперировали, порой даже близко не понимали их сути. Front-end (фронтенд) и back-end (бекенд) используются во многих сферах и отраслях, однако мы поговорим именно об IT, или, даже более конкретно, о Web-разработке.

    Фронтненд – браузер, бекенд – сервер

    Говоря я фронтенде и бекенде, программисты обычно подразумевают разделение интерфейсной части пользователя от программной логики. В этом случае front-end – это интерфейсная часть, которая выполняется, например, в браузере, а back-end – это серверная часть.

    В Web-разработке, например, в качестве фронтенда выступают HTML-вёрстка, стили CSS и JavaScript, а в качестве бекенда – серверная часть, которую обычно программируют на PHP или ASP.net. Грубо говоря, всё то, что исполняется на стороне клиента – front-end, а то, что на стороне сервера – back-end. Кстати, поскольку пользователи не видят бекенд, то программисты могут поменять его «втихую». Twitter, например, в качестве бекенда некоторое время использовал Ruby on Rails, но в 2011 году перешел на Java. Готов поспорить, большинство даже и не заметило этого!

    Фронтненд – статика, бекенд – программный код

    В среде разработчиков высоконагруженных систем (highload-разработчиков) термином front-end называют ту программную часть, которая непосредственно «отдаёт» контент. Например, на больших проектах часто программную серверную часть представляют 2 веб-сервера – Apache и nginx. Nginx принимает запросы и, в случае статического файла, (изображение, файл css, js или xml) сразу же отдаёт его содержимое, а в случае PHP-скрипта, отправляет его к серверу Apache, который уже умеет обрабатывать PHP. Тут nginx – это фронтенд, а Apache – бекенд. Конечно, высоконагруженные системы имеют сложную инфраструктуру, и порой представляют собой много серверов, разнесённых по разным континентам, но общую суть вы уловили.

    Фронтненд – открытые данные, бекенд – админка

    Также, когда говорят об CMS, административную часть называют back-end, а «лицевую» часть сайта – front-end. С такой трактовкой термина я сталкивался реже всего, однако многие его применяют повсеместно.

    Так что же такое фронтенд и бекенд?

    Если вы не лишены логического мышления, то поймёте в чём нюанс: в одной сфере один и тот же термин имеет 3 (!) различных значения:

    • Браузерная / серверная часть (самый популярный вариант);
    • Серверная часть, отдающая статику / серверная часть, выполняющая код (highload);
    • Часть сайта для пользователей / часть сайта для администраторов и модераторов.

    И это не считая всяких там маркетологов (у них тоже есть такие термины). Конечно же, о каком именно термине идёт речь становится ясно только из контекста, а порой и вовсе не понятно, вот люди и путаются в таком разнообразии. Надеюсь, данная заметка поможет вам разобраться во всех тонкостях терминологии и выведет на путь истинный :-).

    Комментарии

    24.12.2013 10:20:11
    Avatar of Юра ГалинЮра Галин
    Да, точность здесь не помешает, особенно, если ты разрабатываешь highload проект на CMS :)
    Хорошая статья!
    16.08.2014 10:15:54
    Avatar of 202202
    Спасибо за статью. Если вам не трудно - загружайте, пожалуйста, как можно больше статей по програмированию.
    04.04.2015 12:14:45
    Avatar of Константин Абрамов ( Та самая, кожаная флейта)Константин Абрамов ( Та самая, кожаная флейта)
    Да. Так и есть. Всё правильно описал.
    10.04.2015 02:46:31
    Avatar of ЮляЮля
    Скажите, пожалуйста, если название курса звучит "HTML5 и CSS3" . Это подразумевает фронтенд? http://www.basic.com.ua/course.php?course=159
    23.04.2015 03:34:16
    Avatar of КонсервКонсерв
    @Юля
    HTML5 и CSS3 - это "часть фронтенда", если так можно выразиться.
    06.12.2015 03:26:15
    Avatar of Martin OderskyMartin Odersky
    Twitter перешел не на Java, а на Scala.
    10.12.2015 01:28:30
    Avatar of КонсервКонсерв
    @Martin Odersky
    Twitter использует и Java и Scala (и ещё маленький зоопарк :-)). Вот небольшая заметка 2011 года о их миграции: http://readwrite.com/2011/07/06/twitter-java-scala
    16.05.2016 10:14:37
    Avatar of AndreyAndrey
    Спасибо за статью, как раз то что искал, разжевано и объяснено.
    23.05.2016 10:58:00
    Avatar of webdesolwebdesol
    Благодарю за статью!
    26.07.2016 03:40:52
    Avatar of rockyourockyou
    Статья, конечно, из 2013, но уже вовсю развиваются backend as a service платформы, а везде про них молчок. Даже пришлось самим запускать в России :) Для тех, кто хочет разобраться - <реклама сервиса>.
    30.09.2016 06:01:43
    Avatar of ВикторияВиктория
    Класс, спасибо. Четко и понятно
    28.03.2017 01:25:42
    Avatar of AlexAlex
    Спасиб! Коротко и понятно
    28.03.2017 02:07:14
    Avatar of ПиуПиу
    Збс, четко!
    01.05.2018 03:54:44
    Avatar of MatthewAlivyMatthewAlivy
    Hello. And Bye.
    Captcha Обновить
    Go Top