Фронтенд: различия между версиями

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску
[отпатрулированная версия][непроверенная версия]
Содержимое удалено Содержимое добавлено
+falsredirect
дополнение про фреймворки и библиотеки JS
Строка 2: Строка 2:
'''Фронтенд''' ({{lang-en|frontend}}) — презентационная часть [[Информационная система|информационной]] или [[Программная система|программной]] системы, её [[пользовательский интерфейс]] и связанные с ним компоненты; применяется в соотношении с базисной частью системы, её внутренней реализацией, называемой в этом случае '''''бэкендом''' ({{lang-en|backend}}).
'''Фронтенд''' ({{lang-en|frontend}}) — презентационная часть [[Информационная система|информационной]] или [[Программная система|программной]] системы, её [[пользовательский интерфейс]] и связанные с ним компоненты; применяется в соотношении с базисной частью системы, её внутренней реализацией, называемой в этом случае '''''бэкендом''' ({{lang-en|backend}}).


Разделение программных систем на фронтенд и бэкенд — одно из стандартных решений для [[Архитектура программного обеспечения|архитектуры программного обеспечения]], связанное в [[Программная инженерия|программной инженерии]] с [[Разделение ответственности|принципом разделения ответственности]] между внешним представлением и внутренней реализацией. Как правило, бэкенд реализует [[API]], используемые фронтендом, и таким образом фронтенд-разработчику не нужно знать особенности реализации внутренней части, а бэкенд-разработчику — интерфейсные решения. Кроме того, такое разделение позволяет использовать различные инструменты для реализации внутренней и внешней части системы, более эффективные для соответствующих задач. Например, в [[Веб-разработка|веб-разработке]] к технологиям фронтенда относятся [[HTML]], [[CSS]], [[JavaScript]]; а бэкенд может быть реализован на [[PHP]], [[Java]], [[Python]], [[JavaScript]] ([[Node.js]]).
Разделение программных систем на фронтенд и бэкенд — одно из стандартных решений для [[Архитектура программного обеспечения|архитектуры программного обеспечения]], связанное в [[Программная инженерия|программной инженерии]] с [[Разделение ответственности|принципом разделения ответственности]] между внешним представлением и внутренней реализацией. Как правило, бэкенд реализует [[API]], используемые фронтендом, и таким образом фронтенд-разработчику не нужно знать особенности реализации внутренней части, а бэкенд-разработчику — интерфейсные решения. Кроме того, такое разделение позволяет использовать различные инструменты для реализации внутренней и внешней части системы, более эффективные для соответствующих задач. Например, в [[Веб-разработка|веб-разработке]] к технологиям фронтенда относятся [[HTML]], [[CSS]], [[JavaScript]]; а бэкенд может быть реализован на [[PHP]], [[Java]], [[Python]], [[JavaScript]] ([[Node.js]]). Во фронтенде используется большинство библиотек и фреймворком, таких как: [[React]], [[Angular]], [[Vue.js]], [[Ember.js]], [[Backbone.js]].


Иногда под бэкендом в контексте информационных систем понимается административная часть системы (включая интерфейс), не отображаемая конечному пользователю, в частности, такая терминология используется в [[Система управления содержимым|системах управления содержимым]] (в этом случае разделение ближе к используемому в сфере организационного управления, где [[бэк-офис]] отвечает за административные функции, а [[фронт-офис]] — за непосредственную работу с заказчиками).
Иногда под бэкендом в контексте информационных систем понимается административная часть системы (включая интерфейс), не отображаемая конечному пользователю, в частности, такая терминология используется в [[Система управления содержимым|системах управления содержимым]] (в этом случае разделение ближе к используемому в сфере организационного управления, где [[бэк-офис]] отвечает за административные функции, а [[фронт-офис]] — за непосредственную работу с заказчиками).

Версия от 17:24, 26 апреля 2023

Фронтенд (англ. frontend) — презентационная часть информационной или программной системы, её пользовательский интерфейс и связанные с ним компоненты; применяется в соотношении с базисной частью системы, её внутренней реализацией, называемой в этом случае бэкендом (англ. backend).

Разделение программных систем на фронтенд и бэкенд — одно из стандартных решений для архитектуры программного обеспечения, связанное в программной инженерии с принципом разделения ответственности между внешним представлением и внутренней реализацией. Как правило, бэкенд реализует API, используемые фронтендом, и таким образом фронтенд-разработчику не нужно знать особенности реализации внутренней части, а бэкенд-разработчику — интерфейсные решения. Кроме того, такое разделение позволяет использовать различные инструменты для реализации внутренней и внешней части системы, более эффективные для соответствующих задач. Например, в веб-разработке к технологиям фронтенда относятся HTML, CSS, JavaScript; а бэкенд может быть реализован на PHP, Java, Python, JavaScript (Node.js). Во фронтенде используется большинство библиотек и фреймворком, таких как: React, Angular, Vue.js, Ember.js, Backbone.js.

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

Специфическое разделение применяется в инфраструктуре компиляции LLVM: под «фронтендами» в нём понимаются трансляторы исходных кодов программ различных языков программирования в универсальное промежуточное представление, тогда как единый бэкенд, работающий уже только с промежуточным представлением, непосредственно занимается оптимизацией, интерпретацией, компиляцией, компоновкой.