stringtranslate.com

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

В разработке программного обеспечения термины «интерфейс» и «бэкэнд» (иногда обозначаемые как «бэкэнд » или «бэкэнд ») относятся к разделению задач между уровнем представления ( интерфейсом ) и уровнем доступа к данным ( бэкэндом ) части программного обеспечения , или физическая инфраструктура или оборудование . В модели клиент-сервер клиент обычно считается интерфейсом, а сервер обычно считается сервером, даже если некоторая работа по представлению фактически выполняется на самом сервере.

Введение

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

В телекоммуникациях переднюю часть можно рассматривать как устройство или услугу, а заднюю часть — это инфраструктуру, поддерживающую предоставление услуг.

Эмпирическое правило заключается в том, что клиентская сторона (или «интерфейс») — это любой компонент, которым манипулирует пользователь. Серверный (или «бэкэнд») код обычно находится на сервере , часто физически далеко удаленном от пользователя.

Определения программного обеспечения

В системах управления контентом термины «интерфейс» и «бэкэнд» могут относиться к представлениям CMS, обращенным к конечному пользователю, и административным представлениям соответственно. [1] [2]

В синтезе речи внешний интерфейс относится к части системы синтеза, которая преобразует входной текст в символическое фонетическое представление, а серверная часть преобразует символическое фонетическое представление в реальные звуки. [3]

В компиляторах внешний интерфейс преобразует исходный код компьютерного программирования в промежуточное представление , а серверная часть работает с промежуточным представлением для создания кода на языке компьютерного вывода. Бэкэнд обычно оптимизируется для создания кода, который работает быстрее. Различие между фронтендом и бэкэндом позволяет разделить секцию синтаксического анализатора , которая занимается исходным кодом, и бэкэнд, который генерирует код и оптимизирует . Некоторые конструкции, такие как GCC , предлагают выбор между несколькими внешними интерфейсами (синтаксический анализ разных исходных языков ) или внутренними модулями (генерация кода для разных целевых процессоров ). [4]

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

Веб-разработка на примере

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

Оба

Фронтенд ориентирован

Серверная часть ориентирована

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

API

Фронтенд взаимодействует с бэкэндом через API . В случае веб- интерфейсов и мобильных интерфейсов API часто основан на HTTP- запросе/ответе. API иногда разрабатывается с использованием шаблона «Backend for Frontend» (BFF), который предоставляет ответы для упрощения обработки на стороне внешнего интерфейса. [5]

Определения оборудования

В сетевых вычислениях интерфейс может относиться к любому оборудованию , которое оптимизирует или защищает сетевой трафик . [6] Оно называется аппаратным обеспечением внешнего интерфейса приложения, поскольку оно размещается на внешнем интерфейсе или границе сети . Сетевой трафик проходит через внешнее оборудование перед входом в сеть.

В проектировании процессора дизайн внешнего интерфейса будет представлять собой первоначальное описание поведения схемы на языке описания аппаратного обеспечения, таком как Verilog , тогда как дизайн внутреннего интерфейса будет представлять собой процесс отображения этого поведения на физические транзисторы на кристалле . [7]

Смотрите также

Рекомендации

  1. ^ «Внешняя и внутренняя часть вашего веб-сайта: все, что вам нужно знать» . ДОДЗЕ Креатив . 7 февраля 2020 г. Проверено 31 августа 2022 г.
  2. ^ Таплиял, Вимал. «Разница между фронтендом и бэкендом MVC – Joomlatuts». joomlatuts.net . Архивировано из оригинала 30 декабря 2016 года . Проверено 30 декабря 2016 г.
  3. ^ Гутьеррес--Осуна, Рикардо. «L18: Синтез речи (бэкэнд)» (PDF) . tamu.edu . Техасский университет A&M . Проверено 29 декабря 2016 г.
  4. ^ Бин Мухаммад, Рашид. «Заметки об операционных системах». www.personal.kent.edu . Кентский государственный университет . Проверено 30 декабря 2016 г.
  5. Викрамараччи, Видуни (24 февраля 2021 г.). «Шаблон BFF (бэкэнд для внешнего интерфейса): введение». Остатки . Проверено 13 ноября 2021 г.
  6. ^ О'Делл, Майк. «И снова сетевые интерфейсные процессоры | Июнь 2009 г. | Коммуникации ACM». cacm.acm.org . Проверено 30 декабря 2016 г.
  7. ^ «Внешний дизайн | Интернет-документация для продуктов Altium» . techdocs.altium.com . Проверено 30 декабря 2016 г.