Фронтенд: различия между версиями
[непроверенная версия] | [непроверенная версия] |
Добавил уточняющие ссылки |
Нет описания правки |
||
(не показано 40 промежуточных версий 19 участников) | |||
Строка 1: | Строка 1: | ||
<noinclude>{{к переименованию|2024-10-16|Фронтенд и бэкенд}} |
|||
'''Фронтенд''' ({{lang-en|front-end}}) — [[Клиент (информатика)|клиентская]] сторона [[Пользовательский интерфейс|пользовательского интерфейса]] к программно-аппаратной части сервиса. Разработчик, который выполняет работу по фронтенду называется - front-end developer <ref>{{Cite web|lang=https://www.forbes.com/sites/careers-at-forbes/2017/07/08/forbes-career-opportunity-front-end-developer-contract-to-hire/|url=Forbes|title=Career opportunities for front-end}}</ref> |
|||
</noinclude>'''Фронтенд''' ({{lang-en|front end, frontend}}) — презентационная часть [[Информационная система|информационной]] или [[Программная система|программной]] системы, её [[пользовательский интерфейс]] и связанные с ним компоненты; '''''бэкенд''''' ({{lang-en|back end, backend}}) — базисная часть системы, её внутренняя реализация (простым языком, ''серверная часть программы, что не видит пользователь''). |
|||
Разделение программных систем на фронтенд и бэкенд — одно из стандартных решений для [[Архитектура программного обеспечения|архитектуры программного обеспечения]], связанное в [[Программная инженерия|программной инженерии]] с [[Разделение ответственности|принципом разделения ответственности]] между внешним представлением и внутренней реализацией. Как правило, бэкенд реализует [[API]], используемые фронтендом, и таким образом фронтенд-разработчику не нужно знать особенности реализации внутренней части, а бэкенд-разработчику — интерфейсные решения. Кроме того, такое разделение позволяет использовать различные инструменты для реализации внутренней и внешней части системы, более эффективные для соответствующих задач. Например, в [[Веб-разработка|веб-разработке]] к технологиям фронтенда относятся [[HTML]], [[CSS]], [[JavaScript]]; а бэкенд может быть реализован на [[PHP]], [[Java]], [[Python]], [[JavaScript]] ([[Node.js]]), [[C++]]. |
|||
'''Бэкенд''' ({{lang-en|back-end}}) — программно-аппаратная часть сервиса. Бэкенд отвечает за осуществление функционирования внутренней части веб-сайта. <ref>{{Cite web|lang=https://abc-design.kz/stati/o-backend|url=abc design|title=Что должен знать бэкенд программист}}</ref> |
|||
Иногда, под бэкендом в контексте информационных систем понимается административная часть системы (включая интерфейс), не отображаемая конечному пользователю, в частности, такая терминология используется в [[Система управления содержимым|системах управления содержимым]] (в этом случае разделение ближе к используемому в сфере организационного управления, где [[бэк-офис]] отвечает за административные функции, а [[фронт-офис]] — за непосредственную работу с заказчиками). |
|||
Фронт- и бэкенд — это вариант [[Архитектура программного обеспечения|архитектуры программного обеспечения]]. |
|||
Специфическое разделение применяется в инфраструктуре компиляции [[LLVM]]: под «фронтендами» в нём понимаются трансляторы исходных кодов программ различных языков программирования в универсальное промежуточное представление, тогда как единый бэкенд, работающий уже только с промежуточным представлением, непосредственно занимается [[Оптимизирующий компилятор|оптимизацией]], [[Интерпретация (программирование)|интерпретацией]], [[Компиляция (программирование)|компиляцией]], [[Компоновка (программирование)|компоновкой]]. |
|||
Термины появились в [[Программная инженерия|программной инженерии]] вследствие развития [[Разделение ответственности|принципа разделения ответственности]] между внешним представлением и внутренней реализацией. |
|||
Backend для предоставления своей функции реализует [[API]], которые использует front-end. Таким образом front-end разработчику не нужно знать особенностей реализации сервера, а back-end разработчику — реализацию front-end. |
|||
=== Технологии Front-end и Back-end === |
|||
К технологиям разработки front-end относятся [[HTML]], [[CSS]], [[JavaScript]]. |
|||
К технологиям back-end разработки относятся [[PHP]], [[Java]], [[Python]], [[JavaScript]] ([[Node.js]]) и другие. |
|||
= Примеры концепции = |
|||
# В [[Система управления содержимым|системах управления содержимым (CMS)]] термины front-end и back-end могут относиться к отображенной пользователю части CMS и административной части соответственно. |
|||
== Примечания == |
|||
{{примечания}} |
|||
{{нет ссылок|дата=7 июня 2019}} |
{{нет ссылок|дата=7 июня 2019}} |
||
Текущая версия от 09:53, 18 ноября 2024
Эту страницу предлагается переименовать в «Фронтенд и бэкенд». |
Фронтенд (англ. front end, frontend) — презентационная часть информационной или программной системы, её пользовательский интерфейс и связанные с ним компоненты; бэкенд (англ. back end, backend) — базисная часть системы, её внутренняя реализация (простым языком, серверная часть программы, что не видит пользователь).
Разделение программных систем на фронтенд и бэкенд — одно из стандартных решений для архитектуры программного обеспечения, связанное в программной инженерии с принципом разделения ответственности между внешним представлением и внутренней реализацией. Как правило, бэкенд реализует API, используемые фронтендом, и таким образом фронтенд-разработчику не нужно знать особенности реализации внутренней части, а бэкенд-разработчику — интерфейсные решения. Кроме того, такое разделение позволяет использовать различные инструменты для реализации внутренней и внешней части системы, более эффективные для соответствующих задач. Например, в веб-разработке к технологиям фронтенда относятся HTML, CSS, JavaScript; а бэкенд может быть реализован на PHP, Java, Python, JavaScript (Node.js), C++.
Иногда, под бэкендом в контексте информационных систем понимается административная часть системы (включая интерфейс), не отображаемая конечному пользователю, в частности, такая терминология используется в системах управления содержимым (в этом случае разделение ближе к используемому в сфере организационного управления, где бэк-офис отвечает за административные функции, а фронт-офис — за непосредственную работу с заказчиками).
Специфическое разделение применяется в инфраструктуре компиляции LLVM: под «фронтендами» в нём понимаются трансляторы исходных кодов программ различных языков программирования в универсальное промежуточное представление, тогда как единый бэкенд, работающий уже только с промежуточным представлением, непосредственно занимается оптимизацией, интерпретацией, компиляцией, компоновкой.
В статье не хватает ссылок на источники (см. рекомендации по поиску). |