Back end это: Что такое backend и frontend?

Содержание

Что такое backend и frontend?

В этой статье поговорим, что такое backend- и frontend-разработка, чем они различаются, какие технологии могут в себя включать.

Что такое frontend?

Фронтендом (англ. front-end) называют клиентскую сторону пользовательского интерфейса по отношению к программно-аппаратной части сервиса.

Говоря простым языком, frontend — это разработка функциональности и пользовательского интерфейса, работающих на клиентской стороне приложения или веб-сайта. Сюда относят всё, что пользователь видит, открывая веб-страницу. Для создания удобного и востребованного продукта фронтенд-разработчики сотрудничают с программистами, дизайнерами, UX-аналитиками.

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

п.

Вот, взгляните:

К frontend-разработке относят: • HTML — язык разметки документов, посредством которого формируют структуру веб-страницы: заголовки, списки, абзацы и т. п.; • CSS — язык для стилизации внешнего вида документа, его описания. Благодаря CSS-коду браузер понимает, как отображать элементы. С помощью CSS задаются цвета и параметры шрифтов, определяется расположение блоков веб-сайта и т. п. Также он даёт возможность выводить один и тот же документ в нескольких стилях, например, для печати и т. д.; • JavaScript

— язык, в буквальном смысле оживляющий веб-страницы. Он обеспечивает реагирование интерфейса на действия пользователя, обрабатывает клики мышкой, нажатия клавиш, перемещения курсора. Также посылает запросы на сервер, загружает данные, позволяет вводить сообщения и много чего ещё.

Что такое backend?

Бэкенд (англ. back-end) — это программно-аппаратная часть сервиса. Это набор средств, с помощью которых происходит реализация логики веб-сайта. Это то, что скрыто от наших глаз, т. е. происходит вне компьютера и браузера.

Как только вы введёте запрос на странице поисковика и нажмёте клавишу «Ввод», frontend закончится и начнётся backend. Ваш запрос отправится на сервер Яндекса или Google, т. е. по месту расположения алгоритмов поиска. Именно там и происходит вся «магия». Но вот, на мониторе появляются данные, которые вы запрашивали, — это происходит возвращение во frontend.

Также можно сказать, что backend — это процесс объединения пользователя с сервером.

Что касается backend-разработчика, то он использует любые инструменты, которые доступны на его сервере. На практике программисты применяют любой из универсальных языков: PHP, Ruby, Python, Java. Кроме того, при backend-разработке задействуются СУБД (MySQL, PostgreSQL, SQLite, MongoDB и пр.).

В зависимости от особенностей продукта меняются и обязанности backend-разработчика.

И что в итоге?

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

Вывод прост: современная разработка — это многоуровневый и сложный процесс, который можно разделить на клиентскую и серверную части. А в арсенале frontend- и backend-разработчиков есть множество инструментов. Окончательный выбор средств веб-разработки зависит от сложности проекта и поставленных задач.

Ну и, разумеется, последняя картинка, которая позволит вам окончательно понять разницу между frontend и backend. И улыбнуться при этом))

Кстати, если хотите узнать о том, как происходит взаимодействие между фронтендом и бэкендом, вам сюда.

Что такое бэкенд и фронтенд, а также в чем между ними разница

Что же такое фронтенд (frontend) и бэкенд (backend)-разработка? Скорее всего, вы уже могли слышать данные термины от знакомых программистов, но до сих не знаете, что они означают.

Предлагаем вам совместно разобраться что должен знать frontend-разработчик, какими компетенциями должен обладать backend и чем они отличаются друг от друга.

Frontend-разработчик — кто это

Хотелось бы начать с того, что frontend и backend-разработчики необходимы в одинаковой мере для создания интернет-магазина, корпоративного сайта и прочих web-ресурсов, когда речь идет о разработке многофункционального продукта.

Frontend — что же это означает? Простыми словами, фронтенд (frontend) — это, та самая составляющая программирования, которую считывает система браузера, а также демонстрирует (запускает) на странице для просмотра пользователя. Другими словами, это CSS, HTML и JavaScript.

CSS

(Cascading Style Sheets) дает команду браузеру, каким образом отражать все элементы, к примеру: диаметр отступов между блоками, цвет и размер шрифта или опять же блоков.

HTML (HyperText Markup Language) сигнализирует системе браузера о том, каким должно быть содержимое страницы в целом, то есть, в HTML вы создаете заголовки, параграфы, списки, элементы списков или пишите текст.

JavaScript информирует систему браузера о том, каким образом реагировать на определенные команды, при этом применяя простой язык программирования. На самом деле, на сегодняшний день довольно большое количество ресурсов использует JavaScript.

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

Теперь вы знаете, что такое фронтенд, давайте разберемся с тем, что такое бэкенд.

Backend-разработчик — кто это

Бэкенд (backend) — это, та часть работ, которая происходит за пределами досягаемости браузера, то есть на сервере.

Сервер — это специальный компьютер, обычно, с наиболее большими ресурсами в отношении производительности, для реализации соответствующих задач.

Он выполняет функции по хранению сведений, DNS (преобразование «буквенных» адресов в сети в IP), DHCP (динамическое распределение адресов), и так далее. В общем, в соответствии с архитектурой «клиент-сервер», сервер по запросу клиента предоставляет ему свои ресурсы.

Для бэкенда программисты могут пользоваться всеми средствами, которые доступны на сервере. Например, любой многофункциональный язык программирования:

  • Java;
  • JavaScript;
  • Python;
  • Visual Basic;
  • Swift;
  • и так далее.

Тоже самое относится и к системам управления базами данных:

  • Cassandra;
  • Redis;
  • PostgreSQL;
  • MongoDB;
  • и так далее.

Backend-разработчик — кто же это простыми словами? Бэкенд-разработчик — это программист, занимающийся внутренней, вычислительной разработкой ресурсов, к тому же прочего программного обеспечения или баз данных. Иными словами, помимо web-решений, backend необходим для десктопных версий и разработки мобильных приложений, поскольку backend — это, работы, имеющие непосредственное отношение к программно-адаптивной составляющей сервиса.

Мы кратко разобрали что это такое frontend и backend. Теперь вы знаете, в чем между ними разница, давайте рассмотрим, как же связаны сферы фронтенд и бэкенд.

Структура взаимодействия фронтенд и бэкенд

На сегодняшний день есть ряд основополагающих ресурсов, которые формируют взаимодействие между frontend и backend.

Взаимодействие между frontend и backend

Серверное приложение

Здесь HTTP-запросы передаются сразу-же на сервер самого приложения, а сервер, в свою очередь, выдает ответ в виде HTML-страницы. В процессе получения запроса и выдачи ответа, сервер производит поиск сведений по полученному запросу в базе данных и генерирует ее в шаблон (ERB, Blade, EJS, Handlebars).

После того, как страница загружена в браузер:

  1. С помощью HTML вы даете команду, что именно должно быть отображено на этой странице.
  2. Через CSS вы информируете браузер каким образом это будет отображено.
  3. JavaScript является неким языком сценариев в интернете, с помощью которого вы сможете настраивать структуру взаимодействия между браузером, HTML и CSS.

AJAX и аналогичные решения

Иной вид архитектуры применяет для коммуникации AJAX (Asynchronous JavaScript and XML). То есть JavaScript, загруженный в браузер, передает HTTP-запрос (XHR, XML HTTP Request) внутри страницы и в результате получает XML-ответ. Помимо этого, для ответов можно применять формат JSON. Более подробно про систему безопасности передачи сведений вы можете прочитать в статье о том, что такое HTTPS-протокол.

Другими словами, ваш сервер обязан иметь некую финальную ступень, которая будет отвечать на получаемые запросы через JSON или с помощью XML-кода. Существует 2 основополагающих протокола, которые используют для данной задачи:

  1. REST.
  2. SOAP.

Также AJAX дает вам возможность производить загрузку сведений при этом не обновляя страницу. Чаще всего, это требуется в таких программных платформах, как Angular и Ember. В последствии разработки, подобные приложения загружаются в браузер и все дальнейшие рендеринги реализуются на стороне пользователя, то есть в браузере. В этом случае, frontend-разработчик комуницируют с backend-разработчиком через HTTP, применяя JSON или XML-код.

Также существуют библиотеки и фреймворки, такие как: React и Ember, которые дают возможность реализовывать приложения как на сервере, так и «в клиенте». В данном случае для коммуникации frontend с backend, в приложении используется AJAX, обрабатываемый на сервере HTML.

Мы рассмотрели, что такое фротенд и бэкекд разработка и в чем между ними разница. Также хочется отметить, что на сегодняшний день крайне тяжело найти высококлассных специалистов в данных областях, в связи с тем, что большинство так называемых специалистов имеют поверхностные знания и не планируют развиваться дальше, поскольку подвержены воздействию эффекта Даннинга-Крюгера. Если у вас остались вопросы по данной статье — пишите нам в комментарии, и мы обязательно ответим.

Пройти опрос Ответить

Back-end и front-end разработка: что это такое?

Достаточно старая тема, но хотелось бы для новичков прояснить грань между front end и back end.  Сегодня я вам расскажу особенности и различия в front-end и back-end разработке.

На самом деле, достаточно многие умения веб-мастера (например, верстка) являются неотъемлемой частью во front end.

Back end разработка: что это?

Прежде, чем перейти к рассказу о двух основных понятиях этого материала, вы должны запомнить, что весь интернет строится на двух основных вещах: это сервер и клиент.

Сервером называется компьютер, который находится в дата-центре. На нём установлено необходимое серверное ПО, предназначенное для обслуживания клиентов. Разработчиков, занимающихся созданием сайтов, интересует веб-сервер. Чаще всего встречаются веб-сервера Apache с PHP (также бывает и nginx).

PHP — один из самых популярных языков программирования, который используют для написания подавляющего количества различных скриптов. В частности, именно им были написаны популярные CMS для сайтов. Back end — это разработка, связанная с написанием скриптов для сервера.

Front end разработка: что это?

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

Когда любой веб-мастер занимается созданием сайта, он хочет сделать его красивым и удобным в использовании, чтобы он одинаково отображался во всех браузерах. Вот и получается, что front end — создание клиентской части сайта. Такой разработчик пишет код по клиентской части, а также верстает шаблоны.

Современный специалист в этой области универсален и разбирается во многих вещах. Он может быть дизайнером, верстальщиком и даже программистом. Он хорошо знает HTML5, CSS3, JavaScript и другие языки программирования. Многие из них свои персональные наработки и прочее хранят в виде framework.

Источник: Михаил Семин

Frontend и backend: что это?

Все слышали в программировании про эти понятия. Простыми словами я расскажу о Frontend и Backend:  что это такое? Давайте быстро пробежимся.

Frontend и backend, чем они отличаются?

Есть допустим стартовая страница Яндекса (рис.1). Мы видим на ней дизайн, видим страницу.

Рис.1 Страница Яндекса ( дизайн)

Если нажать код этой страницы, мы увидим код этой страницы в браузере (рис.2).

Рис.2 Frontend

Это и есть frontend – это код, который скачивается в браузере, и который я вижу.В этом коде описаны все элементы, цвет стрелочки, цвет текста, верстка, что здесь такой отступ. То есть все взаимодействия внутри браузера – это frontend.

Backend – это огромные сервера, которые располагаются в самом Яндексе (рис.3).

Рис.3 Backend

Кстати, рекомендую посмотреть прямо сейчас:

Frontend или Backend, что выбрать?

Для ответа на этот вопрос важно понять, чем отличается frontend от backend. Давайте на примере разберем.

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

 Поэтому frontend —  это:

  • html
  • css
  •  java script
  • frameworks
  • Jquery, Angular, Backbone, Closure, Extj

Backend – это уже для конкретных программистов, backend дизайнеру знать необязательно. Вот чем frontend отличается от backend.

Backend:

1. Php
2. Rails
3. Ruby
4. Python
5. C#
6. Java
7. .NET
8. SQL
9. Node.js
10. Django
11. Xamarin
12. Swift

Frontend и Backend в работе веб-дизайнера

Дизайнеру важно знать Frontend и иметь представление о работе backend. Нужно просто понимать как это работает, какие данные мы понимаем. И лучше держать под боком программиста, который в backend соображает.

Frontend– и backend–разработчик: разбор профессий, поиск призвания

Встречают по одежке — провожают по уму. В жизни эта аксиома работает как: надеть модный костюм, чтобы привлечь внимание; прочесть умную книгу, чтобы произвести впечатление и не тормозить. В сети — тот же принцип.

На страже красоты и разума фронтенд и бэкенд воины. Кто эти люди? Разбираемся вместе.

Что такое фронтенд?

С английского «front» — лицевая сторона, фасад. Это и есть основа трудов frontend разработчика — создание функционального интерфейса вебресурса или приложения, максимально «правильного», привлекательного, удобного для пользователя. Не путать с web–дизайнером, верстальщиком и прочими млекопитающими! Общее — чувство прекрасного, но, выбрав профессию фронтендщика, готовьтесь стать бойцом более широкого профиля. 

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

Frontend разработчик реализует визуал очередного проекта, с помощью следующих базовых навыков:

  • Создание годной структуры вебстраницы. Здесь неотъемлемы знания HTMLразметки, умение выделять логические блоки, структурировать разделы, заголовки, ссылки.
  • Для доработки созданного ранее каркаса и внешнего вида страницы в целом применяется язык стилей CSS: задаем фоновый цвет, окрашиваем элементы, регулируем шрифты и размеры полей. Связкой HTML+CSS давно никого не удивишь, поскольку это основа для работы преимущественного числа современных интернетсайтов. 
  • Интерактив на базе языка программирования JavaScript, как вишенка на торте. Некий этап волшебства фронтенд разработки. Оживление элементов статичной страницы: танцующие картинки, выпадающее меню, всплывающие окнаподсказки, изменение цветовых решений форм — все, что душе заказчика угодно.

Что такое бэкенд?

Говоря «back» (с английского), подразумеваем то, что находится в фоновом режиме и скрыто от глаз аудитории. Это отнюдь не указывает на малозначимость понятия, совсем наоборот — «начинка» решает. Алгоритмы, логика, функции и возможности веб-площадки ложатся на плечи backend разработчика. Он запускает «сердце» программного продукта, отвечая за жизненно важные механизмы. 

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

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

Какие знания, являются ключевыми для backend разработчика?

  • PHP, Ruby, Python, Perl, Java. Изучение хотя бы одного серверного языка — проходной билет для успешного старта в вебпрограммировании.
  • Без понимания СУБД (системы управления базами данных) не обойтись: Oracle, MySQL, Ms SQL Server. Начав обучение с одной, проблем с переходом на другую не возникнет, в связи со схожестью языка запросов в основе баз данных.
  • Фреймворк — набор библиотек для упрощения и ускорения процесса разработки веб-сайта: Django, Kohana, Symfony, Yii и другие. 
  • Технологии frontend разработки — для слаженной работы криэйторов.
  • Безусловным козырем будет знание английского языка с техническим уклоном на уровне не ниже intermediate (как, впрочем, и для коллегифронтендера).

Точки пересечения

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

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

Frontend или backend: что выбрать?

«На вкус и цвет все проектировщики разные» — скажите вы, и оспаривать это не имеет никакого смысла. Каждый выбирает то, что ближе.

Считается, что креативная личность с богатым воображением и творческим порывом — идеальное описание фронтенд разработчика; математический склад ума — дорога в бэкенд. 

Но, если не знаете с чего начать, – начните с азов интерфейса. Визуальное оформление показалось слишком скучным? Углубляйтесь в серверную часть создания вебпроектов. 

Усовершенствование, при этом, никто не отменял. Ежесекундное появление бесконечного количества дополнений, фреймворков и расширений держит в тонусе. Хотите быть востребованным? Непрерывно изучайте их. Сравнивая направления, фронтенд технологии значительно уступают бэкенду в стабильности. Последний имеет более долгий жизненный цикл, тогда как фронт динамично развивается, добавляя новые инструменты в оборот.

Чувствуете в себе потенциал «работать за двоих»? Ваша стезя — fullstack — проработка двух направлений одним специалистом. Универсальность всегда в цене и почете, а это неоспоримое преимущество перед узкопрофильными соратниками. 

Не знаешь, какой курс выбрать?

Запишись на бесплатную консультацию и мы поможем в выборе правильного направления

Как стать фронтенд разработчиком и где учиться бэкендингу?

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

Здесь нужно честно себе признаться, насколько вы дисциплинированы, усидчивы, мотивированы. Трезво оцените силы в сортировке информации — из моря обучающей веб-пищи вам предстоит выбрать самую вкусную горсть, имеющую ценность для front и backend разработчиков

Можно научиться танцевать и без помощи балерины. Но не факт, что бывалые знатоки назовут эту последовательность движений танцем, а не рукопашным боем. 

Ваша цель — обучиться качественно и быстро под патронажем опытного сэнсэя? Выбирайте курсы. Если душа просит frontend, стартовать поможет «Курс верстки (HTML5+CSS3+JS)» от Wezom Academy:

  • 32 часа = 16 занятий брейнсторма нон-стоп;
  • почва для дальнейшего изучения программирования и выбора направления «по душе»;
  • практические отработки.

Выбирая место в ITиндустрии, оценивайте как востребованность профессии, так и личные интуитивные предпочтения, способ мышления. Если, дочитав до этого места, вы определились — мишн комплит, как говорится.

Еще думаете? Стучитесь в окно обратной связи за экстренной помощью и просто поговорить о погоде. 

 

Backend разработка — Введение в веб-разработку

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

Что его характеризует?

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

- # Пример шаблона для генерации топика на хекслете (haml + ruby)
. card
  .card-header
    %div
      = link_to user_path(@topic.creator.username), class: 'no-color' do
        %b= @topic.creator
  .card-block
    %div
      .hexlet-topic-content.hexlet-content-container
        %p= markdown2html(@topic.title)
    .mt-4
      - @topic.comments.each do |comment|
        %div
          %hr.mb-3.hexlet-dashed
          .row
            .col-md-10
              %b= comment.creator
          %div
            .hexlet-topic-content.hexlet-content-container
              %p= markdown2html(comment.body)

При создании сайта обычно делают специальный административный интерфейс, через который можно модифицировать эти данные. А операции по манипулированию сущностями называют CRUD — Create, Read, Update и Delete. Другими словами, для управления статьями в админке (жаргон) есть соответствующий круд. Кстати, распространено мнение, что большинство веб-разработчиков занимается, по большей части, созданием крудов.

Самыми распространенными решениями для хранения данных являются реляционные базы данных, такие как MySQL и PostgreSQL. Их использование подразумевает знание SQL — языка, который позволяет манипулировать этими данными внутри базы данных и получать их наружу.

-- Пример sql запроса
SELECT id, name from 'users' where state = "active" ORDER BY id DESC LIMIT 20;

Для описания логики сайта и генерации HTML используется один из серверных языков программирования. Теоретически, для создания сайтов можно использовать почти любой язык, но так сложилось, что только некоторые из них популярны для веба:

  • PHP
  • JavaScript (и его производные Elm, TypeScript, ClojureScript)
  • Ruby
  • Python
  • Erlang/Elixir
  • Go
  • Clojure
  • Java/Kotlin/Scala
  • C#

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

Еще раз подчеркну то, что выполнение кода происходит только на сервере и скрыто от глаз пользователей. Все, что видно из браузера — это HTML документ, пришедший от сервера.

Ниже я попробую классифицировать способы разработки веб-приложений:

Конструкторы

Несмотря на то, что этот способ не требует программирования, его нельзя не упомянуть. На рынке представлены десятки конструкторов для создания сайтов без программирования, особенно популярны такие решения в e-commerce (интернет-магазины). Например, ecwid или setup.ru.

CMS

Content Management System — это программное решение, которое позволяет собрать сайт из уже готовых блоков. Расширяется такая система только с помощью плагинов, которых довольно много у популярных систем. В случае необходимости можно создать свой плагин. Некоторые из подобных систем платные, другие бесплатные. Например, WordPress относится к бесплатным, при этом является одной из самых качественных и популярных CMS в мире.

Такие системы особенно распространены в среде PHP. Существуют даже рейтинги, по которым можно ориентироваться. Этот рейтинг создан в первую очередь для бизнесменов, но его также полезно посмотреть для того, чтобы примерно оценить состояние дел на рынке.

Хотя использование CMS выглядит очень заманчивым, но так же, как и shared хостинг, для любой, более менее сложной системы, CMS будет больше мешать, чем помогать. Чаще их используют для типовых решений, например, каталога продуктов или сайта о компании. Системы, аналогичные booking.com или Яндекс невозможно построить на базе CMS.

Фреймворки

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

Фреймворк, который больше других повлиял на мир веб-разработки, называется Ruby on Rails. Другой Ruby-фреймворк, Sinatra, стал основателем направления микрофреймворков, которые теперь водятся в большом количестве в любом языке программирования. Они все похожи как братья близнецы, знаете принципы работы одного — легко сможете ориентироваться в остальных, даже на других языках.

# app.rb
require 'sinatra'

# get это функция соответствующая глаголу GET протокола HTTP
get '/frank-says' do
  'Put this in your pipe & smoke it!'
end
$ ruby app.rb
== Sinatra (v1.4.8) has taken the stage on 4567 for development with backup from WEBrick

$ curl http://localhost:4567/frank-says
Put this in your pipe & smoke it!

Чистый язык (cамописное решение)

Такое встречается разве что в PHP. На самом деле нет ни одной причины (кроме отсутствия квалификации), по которой стоит выбирать разрабатывание сайта без использования, как минимум, фреймворков. А любой разговор о производительности должен начинаться только после прочтения optimization.guide.

Веб-сервер

Какой бы способ разработки вы ни выбрали, есть один элемент, без которого обойтись нельзя: веб-сервер. Веб-сервером называется специальная программа, которая принимает входящие http(s)-запросы, например, из браузера, запускает ваш код на выполнение и возвращает сформированный ответ. Веб-сервер может возвращать не только HTML-страницы, но также и другие ресурсы, такие как архивы, рисунки, видео. Одним из самых популярных решений на сегодняшний день является nginx.

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

Сервисы

Backend разработка не ограничивается только самим сайтом. Сайт — это всего лишь вершина айсберга. Любой более-менее серьезный проект под капотом представляет из себя множество подсистем (говорят, «сервисы» или «микросервисы»). Возьмите, к примеру, сайт booking. com, мировой лидер по бронированию отелей. Посмотрите на него внимательно, пройдитесь по ссылкам и попробуйте прикинуть, сколько программистов работает внутри. Думаю, что цифра вас удивит: программистов в Букинге больше 800. Отдельная команда занимается подсистемой нотификаций (email’ы, факсы), другая — биллингом, третья разрабатывает Backend для мобильного приложения, четвертая, собственно, мобильное приложение. И, скорее всего, мобильных команд несколько — каждая под свою платформу.

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


Остались вопросы? Задайте их в разделе «Обсуждение»

Вам ответят команда поддержки Хекслета или другие студенты.

Ошибки, сложный материал, вопросы >
Нашли опечатку или неточность?

Выделите текст, нажмите ctrl + enter и отправьте его нам. В течение нескольких дней мы исправим ошибку или улучшим формулировку.

Что-то не получается или материал кажется сложным?

Загляните в раздел «Обсуждение»:

  • задайте вопрос. Вы быстрее справитесь с трудностями и прокачаете навык постановки правильных вопросов, что пригодится и в учёбе, и в работе программистом;
  • расскажите о своих впечатлениях. Если курс слишком сложный, подробный отзыв поможет нам сделать его лучше;
  • изучите вопросы других учеников и ответы на них. Это база знаний, которой можно и нужно пользоваться.
Об обучении на Хекслете

gsv.ru — Что такое frontend и backend

Если Вам понравился данный материал, поделитесь им с вашими друзьями в соц сетях


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

 

Клиент-серверная архитектура интернета

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

Интернет построен по клиент-серверной архитектуре, давайте рассмотрим следующие понятия:

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

Клиентом называют Ваш компьютер, который подключен к глобальной сети интернет. На данном компьютере установлено клиентское программное обеспечение, необходимое для связи с сервером, оно называется браузер. Браузером (веб-обозревателем) — называется программа с помощью которой пользователи просматривают веб-сайты.

Одна из главных задач веб-сервера принимать запросы от пользователей (клиентов), обрабатывать их и выдавать ответы. Эти ответы представляют из себя HTML-страницы с стилями оформления, анимацией, изображениями, медиа, flash объектами, javascript скриптами и т.д. Это и есть frontend.

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

Таким образов, можно сделать вывод:

frontend (фронтенд) — все что видит клиент, это публичная часть сайта, с которой непосредственно контактирует пользователь.

backend (бэкэнд) — серверная часть (работа с БД, обработка данных, и т.д.), вообщем все, чего клиент не видит.

 

frontend и backend разработчики

В соответствии с таким разделением, в сфере веб-разработчиков тоже произошли изменения, специалисты стали разделяться на frontend и backend разработчиков.

frontend и backend разработчики

 

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

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

Если следовать тенденции, то backend-разработка для серьезных бородатых дядей. В большинстве случаев работа backend-разработчика не может быть представлена визуально. Пример, backend-разработчик интегрировал две системы и автоматизировал выгрузку данным между ними. Ну и что, зато frontend-разработчик В. Пупкин такую анимированной галерею разработал, вот это да!

 

Термины frontend и backend по отношению к веб-сайтам

При разработке сайтов происходит разделение процесса его создания на две части:

  • frontend — разработка пользовательского интерфеса
  • backend — его административная часть

 

 

 

Определить языкАзербайджанскийАлбанскийАнглийскийАрабскийАрмянскийАфрикаансБаскскийБелорусскийБенгальскийБирманскийБолгарскийБоснийскийВаллийскийВенгерскийВьетнамскийГалисийскийГреческийГрузинскийГуджаратиДатскийЗулуИвритИгбоИдишИндонезийскийИрландскийИсландскийИспанскийИтальянскийЙорубаКазахскийКаннадаКаталанскийКитайский (Упр)Китайский (Трад)КорейскийКреольский (Гаити)КхмерскийЛаосскийЛатинскийЛатышскийЛитовскийМакедонскийМалагасийскийМалайскийМалайяламМальтийскийМаориМаратхиМонгольскийНемецкийНепалиНидерландскийНорвежскийПанджабиПерсидскийПольскийПортугальскийРумынскийРусскийСебуанскийСербскийСесотоСингальскийСловацкийСловенскийСомалиСуахилиСуданскийТагальскийТаджикскийТайскийТамильскийТелугуТурецкийУзбекскийУкраинскийУрдуФинскийФранцузскийХаусаХиндиХмонгХорватскийЧеваЧешскийШведскийЭсперантоЭстонскийЯванскийЯпонский

 

АзербайджанскийАлбанскийАнглийскийАрабскийАрмянскийАфрикаансБаскскийБелорусскийБенгальскийБирманскийБолгарскийБоснийскийВаллийскийВенгерскийВьетнамскийГалисийскийГреческийГрузинскийГуджаратиДатскийЗулуИвритИгбоИдишИндонезийскийИрландскийИсландскийИспанскийИтальянскийЙорубаКазахскийКаннадаКаталанскийКитайский (Упр)Китайский (Трад)КорейскийКреольский (Гаити)КхмерскийЛаосскийЛатинскийЛатышскийЛитовскийМакедонскийМалагасийскийМалайскийМалайяламМальтийскийМаориМаратхиМонгольскийНемецкийНепалиНидерландскийНорвежскийПанджабиПерсидскийПольскийПортугальскийРумынскийРусскийСебуанскийСербскийСесотоСингальскийСловацкийСловенскийСомалиСуахилиСуданскийТагальскийТаджикскийТайскийТамильскийТелугуТурецкийУзбекскийУкраинскийУрдуФинскийФранцузскийХаусаХиндиХмонгХорватскийЧеваЧешскийШведскийЭсперантоЭстонскийЯванскийЯпонский

 

 

 

 

 

 

 

 

 

Звуковая функция ограничена 200 символами

В чем разница между Front-End и Back-End разработкой?

Первоначально опубликовано 9 февраля 2017 г. , обновлено 27 февраля 2019 г.

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

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

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

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

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

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

Пользователь вводит запрос через интерфейс.

Затем он проверяется и передается на сервер, который извлекает необходимые данные из базы данных и отправляет их обратно пользователю.

Рассмотрим подробнее разницу между интерфейсной и внутренней разработкой.

Что такое Front-End разработка?

Внешний интерфейс построен с использованием комбинации таких технологий, как язык гипертекстовой разметки (HTML), JavaScript и каскадные таблицы стилей (CSS).

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

HTML

Язык гипертекстовой разметки — это ядро ​​веб-сайта, обеспечивающее общий дизайн и функциональность.

Самая последняя версия была выпущена в конце 2017 года и известна как HTML5.2.

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

CSS

Каскадные таблицы стилей дают разработчикам гибкий и точный способ создания привлекательных интерактивных дизайнов веб-сайтов.

JavaScript

Этот язык, основанный на событиях, полезен для создания динамических элементов на статических веб-страницах HTML.

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

Также популярны интерфейсные фреймворки, такие как Angular, Ember, Backbone и React.

Эти платформы позволяют разработчикам справляться с растущим спросом на корпоративное программное обеспечение без ущерба для качества, поэтому они получают свое место в качестве стандартных инструментов разработки.

Одна из основных проблем фронтенд-разработки — которая также называется «разработка на стороне клиента» — — это быстрые темпы изменений в инструментах, методах и технологиях, используемых для создания пользовательского опыта для приложений и веб-сайтов. .

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

Все становится еще сложнее, когда речь идет об Интернете вещей (IoT).

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

Что такое внутренняя разработка?

Бэкэнд, также называемый серверной стороной, , состоит из сервера, который предоставляет данные по запросу , приложения, которое его направляет, и базы данных, которая систематизирует информацию.

Например, когда покупатель просматривает обувь на веб-сайте, он взаимодействует с внешним интерфейсом.

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

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

Внутренние инструменты

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

Многие из них используют надежные базы данных корпоративного уровня, такие как Oracle, Teradata, Microsoft SQL Server, IBM DB2, EnterpriseDB и SAP Sybase ASE.

Существует также ряд других популярных баз данных, включая MySQL, NoSQL и PostgreSQL.

Существует множество платформ и языков, используемых для кодирования приложения, например Ruby on Rails, Java, C ++ / C / C #, Python и PHP.

За последние несколько лет Backend-as-a-Service (BaaS) провайдеров превратились в жизнеспособную альтернативу.

Они особенно полезны при разработке мобильных приложений и работе в сжатые сроки.

Что такое разработка полного стека?

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

Как правило, разработка полного стека одним программистом не является практическим решением.

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

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

Чтобы узнать, какую базу данных и фреймворк использовать в вашем следующем проекте, прочтите нашу статью «Какое сочетание Front-End / Back-End является лучшим для корпоративного приложения».

Если вы готовы увидеть, как мы можем применить наши знания на вас, организует бесплатную консультацию сегодня!

Что такое внешний и задний конец? Определение от WhatIs.

com От

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

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

Уровень над серверной частью является внешним интерфейсом и включает в себя все программное или аппаратное обеспечение, являющееся частью пользовательского интерфейса. Люди или цифровые пользователи напрямую взаимодействуют с различными аспектами внешнего интерфейса программы, включая вводимые пользователем данные, кнопки, программы, веб-сайты и другие функции.Большинство этих функций разработаны профессионалами в области пользовательского опыта (UX), чтобы быть доступными, приятными и простыми в использовании.

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

Назначение передней и задней части

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

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

Примеры передней и задней части

Понятия и компоненты, которые ориентированы на интерфейсную часть системы, включают:

  • Языки дизайна и разметки, такие как HTML, CSS и JavaScript.
  • Поисковая оптимизация (SEO).
  • Тестирование удобства и доступности.
  • Инструменты графического дизайна и редактирования изображений.
  • Производительность в Интернете и совместимость с браузерами.

И наоборот, те, которые сосредоточены на серверной части системы, включают:

  • Языки программирования и сценариев, такие как PHP, Python и C #.
  • Среды автоматизированного тестирования.
  • Масштабируемость и доступность сети.
  • Управление базами данных и преобразование данных.
  • Практика кибербезопасности и резервного копирования данных.

Последнее обновление: май 2019 г.

Продолжить чтение о передней и задней части

Front End и Back End: в чем разница?

Если вы новичок в мире программирования и разработки программного обеспечения, вас могут смутить такие термины, как интерфейс , серверная часть и разработка полного стека .У вас может закружиться голова при виде таких языков программирования, как Ruby on Rails и Javascript.

Давайте проведем быстрый опрос. Поднимите руку, если обнаружите, что спрашиваете: «Что все это значит? В чем разница между интерфейсом и сервером? » Мы поняли, мы тоже когда-то были там.

В Kenzie Academy мы верим, что карьера в сфере технологий возможна для всех, кто открыт для обучения и прилагает все усилия, чтобы овладеть искусством программирования. Давайте устраним путаницу в некоторых из этих технических терминов.Мы расскажем вам о передней и задней части.

Сегодня мы проясняем разницу между стилями разработки и решаем следующие вопросы:

  • Что такое фронтенд-разработка?
  • Что такое серверная разработка?
  • Чем различаются фронтенд и бэкенд разработка?
  • Что такое разработка полного стека?
  • Что платит больше: передняя или задняя часть?

Прежде всего, разработка веб-сайтов — это процесс создания веб-сайтов и приложений.В отличие от UX и UI-дизайна, веб-разработка больше фокусируется на кодировании и обеспечении хорошей работы веб-сайта. По сути, это аспект удобства использования веб-сайтов и приложений. Итак, где же тогда появляются такие термины, как front и back end? Front-end и back-end разработка — это два разных типа веб-разработки.

Давайте погрузимся и познакомимся с этими стилями веб-разработки!

Что такое фронтенд-разработка?

Front-end разработчики создают с учетом потребностей пользователей .Front-end разработка — это стиль компьютерного программирования, который фокусируется на кодировании и создании элементов и функций веб-сайта, которые будут видны пользователю. Речь идет об обеспечении функциональности визуальных аспектов веб-сайта. Вы также можете думать о внешнем интерфейсе как о «клиентской стороне» приложения. Допустим, вы фронтенд-разработчик. Это означает, что ваша работа — кодировать и воплощать в жизнь визуальные элементы веб-сайта. Вы бы больше сосредоточились на том, что видит пользователь, когда посещает веб-сайт или приложение.Кроме того, вы должны быть уверены, что с сайтом легко взаимодействовать, и при этом он работает без сбоев.

Эти разработчики берут визуальный дизайн у дизайнеров UX и UI и оживляют веб-сайт, следя за тем, чтобы он хорошо функционировал для пользователя. Один из многих способов использования навыков внешнего интерфейса — это создание статического веб-сайта, который представляет собой веб-сайт с фиксированным содержанием, которое доставляется в браузер пользователя точно в том виде, в котором оно хранится. Вы можете столкнуться со статическим веб-сайтом , если наткнетесь на простую целевую страницу или веб-сайт малого бизнеса, который не позволяет пользователям выполнять какие-либо интерактивные задачи.

Front-end разработчики создают такие элементы, как:

  • Кнопки
  • Макеты
  • Навигация
  • Изображения
  • Графика
  • Анимации
  • Организация содержания

Что такое внутренняя разработка?

Back-end разработка фокусируется на стороне веб-сайта, которую пользователи не могут видеть . Это то, что делает сайт интерактивным. Бэкэнд также можно назвать «серверной стороной» веб-сайта. В качестве примера предположим, что у вас есть веб-сайт в социальной сети.Вам нужно доступное место для хранения всей информации ваших пользователей. Этот центр хранения называется базой данных, и несколько широко используемых примеров включают Oracle, SQL Server и MySQL. Базы данных запускаются с сервера, который по сути является удаленным компьютером. Серверный разработчик поможет управлять этой базой данных и содержимым сайта, хранящимся в ней. Это гарантирует, что элементы интерфейса на вашем веб-сайте социальной сети могут продолжать работать должным образом, когда пользователи просматривают загруженный контент и другие профили пользователей.

Хотя пользователи не взаимодействуют напрямую с серверной частью веб-сайта, они будут косвенно взаимодействовать с элементами, над которыми работают эти разработчики, через интерфейсное приложение.Бэкэнд-разработка занимается хранением и упорядочиванием данных, а также обеспечивает хорошее функционирование клиентской части.

Серверные веб-разработчики работают над такими задачами, как:

  • Строительный кодекс
  • Устранение неполадок и отладка веб-приложений
  • Управление базой данных
  • Использование фреймворка

Фронтенд и бэкэнд: в чем разница?

Все еще думает: «Фронтенд или бэкэнд … в чем разница?» Теперь, когда вы получили обзор внешнего и внутреннего интерфейса, давайте обсудим их различия.Есть 4 основных различия, которые отличают фронтенд и бэкэнд-разработку.

Front и back end разработчики работают на разных сторонах сайта

Front end разработка — это программирование, которое фокусируется на визуальных элементах веб-сайта или приложения, с которыми пользователь будет взаимодействовать (на стороне клиента). Бэкэнд-разработка фокусируется на стороне веб-сайта, которую пользователи не видят (на стороне сервера). Они работают вместе, чтобы создать динамический веб-сайт , позволяющий пользователям совершать покупки, использовать контактные формы и любые другие интерактивные действия, в которых вы можете участвовать во время просмотра сайта.Некоторыми примерами динамических веб-сайтов являются Netflix, PayPal, Facebook и сайт Kenzie Academy, на котором вы сейчас находитесь.

У фронтенд-разработчиков и бэкенд-разработчиков разные сильные стороны

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

Что платит больше: передняя или задняя часть?

Имеются различия и в оплате труда, несмотря на сильные стороны.По данным Glassdoor, среднегодовая зарплата фронтенд-разработчиков в США составляет 76929 долларов. Бэкенд-разработчики из США в середине карьеры приносят в среднем 101619 долларов в год.

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

Front и back end разработчики работают на разных языках

Когда вы пишете код, вы будете использовать язык программирования. Подобно человеческим языкам, эти языки позволяют программистам общаться со своими компьютерами с помощью серии символов (называемых кодом). Проще говоря, это все равно что давать компьютеру инструкции. Внешние разработчики работают на таких языках, как HTML, CSS и JavaScript.

  • HTML — это язык гипертекстовой разметки. Это стандартный язык разметки для создания веб-страниц.
  • CSS — сокращение от Cascading Style Sheets. В то время как HTML используется для создания структуры на сайте, CSS используется для придания стиля и изящества. Он определяет цвета, шрифты и стиль другого контента сайта.
  • JavaScript — это язык, с помощью которого можно сделать сайт интерактивным и увлекательным. Вы можете использовать его для запуска игры на своем сайте, чтобы назвать один пример.

Внешний интерфейс также работает в собственном наборе фреймворков и библиотек. Вот лишь несколько фреймворков и библиотек, с которыми будет работать интерфейсный разработчик:

  • Угловой JS
  • React.js
  • jQuery
  • Sass

Back end разработчики работают на таких языках, как PHP, C ++, Java, Ruby, Python, JavaScript и Node.js. Подробнее о некоторых из этих языков:

  • PHP — это язык сценариев на стороне сервера.
  • Java — очень популярная платформа и язык программирования.
  • Python — это язык программирования общего назначения. Он отличается от некоторых других, упомянутых здесь, тем, что может использоваться для других видов разработки программного обеспечения и не ограничивается только веб-разработкой.

Бэкэнд-фреймворки включают:

  • Экспресс
  • Джанго
  • Рельсы
  • Laravel
  • Пружина

Front-end и back-end разработчики работают вместе над созданием потрясающих приложений

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

Фронтенд против бэкенда? Почему не оба?

Если вы заинтересованы в карьере внешнего или внутреннего разработчика, вы можете подумать о посещении учебного курса по программированию или технической школы.В Kenzie Academy мы предлагаем 12-месячную программу разработки программного обеспечения на полный рабочий день, которая обучает студентов навыкам, позволяющим добиться успеха как в интерфейсной, так и в серверной разработке. Вы будете учиться у отраслевых практиков, чтобы получить технические навыки, навыки межличностного общения и получить работу. Студенты проводят первые 6 месяцев, изучая все тонкости фронтенд-разработки, а затем проводят вторые 6 месяцев, чтобы научиться бэкенд-разработке. Вот несколько вещей, над которыми вы будете работать в программе Kenzie’s Software Engineering:

Front End Skills:

  • Разбейте интересные проблемы и создайте привлекательные решения.
  • Проектируйте, создавайте и изменяйте статические веб-страницы, соответствующие спецификациям HTML5.
  • Проанализируйте производительность веб-страницы на стороне клиента, чтобы лучше понять впечатления потребителей.
  • Представляйте, создавайте и развертывайте интерактивные и удобные для мобильных устройств приложения для Интернета с использованием новейших веб-технологий, включая HTML5, CSS3, JavaScript (ES6 +) и React.
  • Совместите эти навыки с внутренними технологиями, такими как базы данных и Node.js, а также с инструментами разработчика, такими как Bash, Git и автоматизированные тесты.
  • Разберитесь, как эффективно работать и совместно работать над программным проектом, и как уверенно проходить собеседование.

Back End Skills:

  • Повысьте уровень со вторым, популярным языком программирования (Python 2 и 3), а также с его собственным наиболее распространенным веб-фреймворком, Django. Используйте такие языковые функции, как списки, наборы и словари, для решения простых алгоритмических задач.
  • Научитесь взаимодействовать с закулисными технологиями, такими как базы данных и серверы, и решать более сложные наборы проблем.
  • Выявление и устранение узких мест производительности в веб-приложении. Предложите жизнеспособное решение определенного узкого места в предоставленном образце приложения.
  • Научитесь делать приложения быстрее, безопаснее, стабильнее и эффективнее.

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

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


Готовы начать карьеру UX-дизайнера или кодера? Узнайте больше о наших 12-месячных программах разработки программного обеспечения и 6-месячных программах UX-дизайна или ознакомьтесь с нашей бесплатной программой программирования для начинающих Kenzie Free.

Определение серверной части

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

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

Примеры серверных процессов:

  1. обработка входящего запроса веб-страницы
  2. запуск сценария (PHP, ASP, JSP и т. Д.) Для создания HTML
  3. доступ к данным, таким как статья, из базы данных с помощью запросов SQL
  4. хранение или обновление записей в базе данных
  5. шифрование и дешифрование данных
  6. обработка загрузки и выгрузки файлов
  7. обработка пользовательского ввода через JavaScript

Все приведенные выше примеры, кроме последнего, относятся к серверным процессам, которые выполняются на веб-сервере.JavaScript — это процесс на стороне клиента, то есть он выполняется в веб-браузере. JavaScript можно рассматривать как внутренний или внешний процесс, в зависимости от того, влияет ли код на пользовательский интерфейс или нет.

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

ПРИМЕЧАНИЕ: Backend может также записываться как «back end» (существительное) или «back-end» (как прилагательное). Для простоты термин «бэкэнд» (замкнутое составное слово) стал приемлемым термином для обоих.

Обновлено: 11 апреля 2020 г.

TechTerms — Компьютерный словарь технических терминов

Эта страница содержит техническое определение Backend. Он объясняет в компьютерной терминологии, что означает Backend, и является одним из многих программных терминов в словаре TechTerms.

Все определения на веб-сайте TechTerms составлены так, чтобы быть технически точными, но также простыми для понимания. Если вы сочтете это определение Backend полезным, вы можете сослаться на него, используя приведенные выше ссылки для цитирования. Если вы считаете, что термин следует обновить или добавить в словарь TechTerms, отправьте электронное письмо в TechTerms!

Подпишитесь на рассылку TechTerms, чтобы получать избранные термины и тесты прямо в свой почтовый ящик. Вы можете получать электронную почту ежедневно или еженедельно.

Подписаться

Фронтенд vs.back end: С чего начать?

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

На высоком уровне «интерфейс» — это то, что посетители или пользователи будут видеть, когда они взаимодействуют с программой, приложением или платформой. «Бэкэнд» — это место, где программисты создают процессы, чтобы эти взаимодействия выполнялись гладко.

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

Но остается вопрос: что вы должны сначала изучить: интерфейсный или серверный язык? В этой статье мы более подробно объясним разницу между фронтальной и серверной разработкой (а также рассмотрим разработку полного стека), чтобы помочь вам решить, с чего начать.

Что такое фронтенд-разработка?

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

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

Посмотрите следующее видео и прочтите, чтобы узнать больше о том, как начать разработку интерфейса.

Языки программирования внешнего интерфейса

Какие языки используются при разработке внешнего интерфейса? Как правило, интерфейс использует HTML, CSS и JavaScript.

HTML — это структурная основа сайта, CSS (каскадные таблицы стилей) — это настраиваемая обложка, которая определяет стиль визуальных элементов, а JavaScript влияет на перемещение элементов на странице.

Вы также захотите ознакомиться с некоторыми интерфейсными фреймворками, такими как React, Vue и Angular. Фреймворки — это специализированные технологии, которые помогают настраивать приложения.Вместо того, чтобы писать все с нуля, фреймворки позволяют ускорить процесс разработки.

Начало работы с интерфейсной разработкой

Хотите узнать больше о интерфейсной разработке? Мы предлагаем освоить основы веб-разработки с помощью HTML / CSS, поскольку они являются основой всех веб-страниц. Вы также можете погрузиться и узнать все, что вам нужно знать, чтобы стать фронтенд-инженером, с нашим карьерным курсом Front-End Engineer.

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

Что такое внутренняя разработка?

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

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

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

Языки программирования серверной части

Существует множество языков программирования, используемых в задней части. Здесь, в Codecademy, мы обучаем серверной разработке в основном на JavaScript, Python и C #. Когда вы только начинаете, мы рекомендуем сосредоточиться на JavaScript, поскольку наличие единого языка для интерфейса и серверной части упрощает путь к сильной разработке полного стека.

Хотите узнать о серверных фреймворках? Обратите внимание на Express, Flask и asp.сеть. Мы также рекомендуем ознакомиться с этой замечательной статьей MDN Web Docs о серверных фреймворках и о том, как их выбрать. Хотите стать внутренним разработчиком? Ознакомьтесь с нашим карьерным планом Back-End Engineer.

Что такое разработка полного стека?

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

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

Начало работы

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

Серверная веб-архитектура

| Codecademy

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

Внешний интерфейс — это код, который выполняется на стороне клиента. Этот код (обычно HTML, CSS и JavaScript) запускается в браузере пользователя и создает пользовательский интерфейс.

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

Обзор HTTP и ОТДЫХАЙТЕ, если хотите освежить в памяти эти темы. Это основные соглашения, которые обеспечивают структуру цикла запрос-ответ между клиентами и серверами.

Давайте начнем с обзора взаимоотношений клиент-сервер, а затем мы сможем собрать все воедино!

Какие клиенты?

Клиенты — это все, что отправляет запросы в серверную часть. Часто это браузеры, которые запрашивают код HTML и JavaScript, который они будут выполнять для отображения веб-сайтов конечному пользователю. Однако существует много разных типов клиентов: это может быть мобильное приложение, приложение, работающее на другом сервере, или даже интеллектуальное устройство с подключением к Интернету.

Что такое бэкэнд?

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

  • Сервер. Это компьютер, который принимает запросы.
  • Приложение. Это приложение, работающее на сервере, которое прослушивает запросы, извлекает информацию из базы данных и отправляет ответ.
  • База данных. Базы данных используются для организации и сохранения данных.

Что такое сервер?

Сервер — это просто компьютер, который прослушивает входящие запросы. Хотя существуют машины, созданные и оптимизированные для этой конкретной цели, любой компьютер, подключенный к сети, может выступать в качестве сервера. Фактически, вы часто будете использовать свой собственный компьютер в качестве сервера при разработке приложений.

Каковы основные функции приложения?

Сервер запускает приложение, которое содержит логику того, как отвечать на различные запросы на основе команды HTTP и унифицированного идентификатора ресурса (URI).Пара HTTP-глагола и URI называется маршрутом , а сопоставление их на основе запроса называется маршрутизацией .

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

В конце концов, будет вызвана функция промежуточного программного обеспечения, которая завершит цикл запрос-ответ, отправив ответ HTTP обратно клиенту.

Часто программисты используют фреймворк вроде Express или Ruby on Rails для упрощения логики маршрутизации. А пока просто подумайте, что каждый маршрут может иметь одну или несколько функций-обработчиков, которые выполняются всякий раз, когда выполняется запрос к этому маршруту (HTTP-команда и URI).

Какие ответы может отправлять сервер?

Данные, которые сервер отправляет обратно, могут иметь разные формы.Например, сервер может обслуживать файл HTML, отправлять данные в формате JSON или отправлять обратно только код состояния HTTP. Вы, вероятно, видели код состояния «404 — не найден» всякий раз, когда пытались перейти к несуществующему URI, но существует гораздо больше кодов состояния, которые указывают на то, что произошло, когда сервер получил запрос.

Что такое базы данных и зачем они нужны?

Базы данных обычно используются в серверной части веб-приложений. Эти базы данных предоставляют интерфейс для постоянного сохранения данных в памяти.Хранение данных в базе данных снижает нагрузку на основную память ЦП сервера и позволяет извлекать данные в случае сбоя сервера или потери питания.

Многие запросы, отправленные на сервер, могут потребовать запроса к базе данных. Клиент может запросить информацию, которая хранится в базе данных, или клиент может отправить данные со своим запросом для добавления в базу данных.

Что такое веб-API на самом деле?

API — это набор четко определенных методов связи между различными программными компонентами.

Более конкретно, веб-API — это интерфейс, созданный серверной частью: набор конечных точек и ресурсов, которые эти конечные точки предоставляют.

Веб-API определяется типами запросов, которые он может обрабатывать, что определяется маршрутами, которые он определяет, и типами ответов, которые клиенты могут ожидать получить после попадания в эти маршруты.

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

Другие принципы цикла запрос-ответ:

  • Сервер обычно не может инициировать ответы без запросов!
  • Каждый запрос требует ответа, даже если это всего лишь код состояния 404, указывающий на то, что контент не был найден. В противном случае у вашего клиента останется висит (неопределенное ожидание).
  • Сервер не должен отправлять более одного ответа на запрос. Это вызовет ошибки в вашем коде.

Отображение запроса

Давайте сделаем все это более конкретным, рассмотрев на примере основные шаги, которые происходят, когда клиент делает запрос к серверу.

1. Алиса делает покупки на SuperCoolShop.com. Она нажимает на изображение обложки для своего смартфона, и это событие щелчка делает запрос GET на http://www.SuperCoolShop.com/products/66432 .

Помните, GET описывает тип запроса (клиент просто запрашивает данные, ничего не меняя). URI (единый идентификатор ресурса) / products / 66432 указывает, что клиент ищет дополнительную информацию о продукте, и этот продукт имеет идентификатор 66432.

SuperCoolShop имеет огромное количество продуктов и множество различных категорий для фильтрации по ним, поэтому фактический URI будет более сложным, чем этот. Но это общий принцип работы запросов и идентификаторов ресурсов.

2. Запрос Алисы отправляется через Интернет на один из серверов SuperCoolShop. Это один из самых медленных шагов в процессе, потому что запрос не может быть быстрее скорости света, и ему может потребоваться большое расстояние.По этой причине у крупных веб-сайтов с пользователями по всему миру будет много разных серверов, и они будут направлять пользователей на ближайший к ним сервер!

3. Сервер, который активно прослушивает запросы от всех пользователей, получает запрос Алисы!

4. Срабатывают прослушиватели событий, соответствующие этому запросу (HTTP-команда: GET и URI: / products / 66432 ). Код, который выполняется на сервере между запросом и ответом, называется промежуточным программным обеспечением .

5. При обработке запроса код сервера делает запрос к базе данных, чтобы получить дополнительную информацию об этом корпусе смартфона. База данных содержит всю остальную информацию, которую Алиса хочет знать об этом чехле для смартфона: название продукта, цена продукта, несколько обзоров продукта и строка, которая предоставит путь к изображению продукта.

6. Выполняется запрос к базе данных, и база данных отправляет запрошенные данные обратно на сервер. Стоит отметить, что запросы к базе данных — один из самых медленных шагов в этом процессе.Чтение и запись из статической памяти происходит довольно медленно, и база данных может находиться не на исходном сервере, а на другом компьютере. Этот запрос, возможно, придется отправить через Интернет!

7. Сервер получает необходимые данные из базы данных, и теперь он готов создать и отправить свой ответ обратно клиенту. В этом теле ответа содержится вся информация, необходимая браузеру, чтобы показать Алисе более подробную информацию (цена, отзывы, размер и т. Д.) Об интересующем ее чехле для телефона.Заголовок ответа будет содержать код состояния HTTP 200, чтобы указать, что запрос выполнен успешно.

8. Ответ отправляется через Интернет обратно на компьютер Алисы.

9. Браузер Алисы получает ответ и использует эту информацию для создания и рендеринга представления, которое в конечном итоге видит Алиса!

Руководство для начинающих по внутренней разработке

Оглавление:

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

Хорошие новости? Вам не нужно писать код, чтобы понимать основы внутренней разработки и различные компоненты типичного «программного стека». На самом деле, знание своего пути полезно, будь вы генеральным директором, менеджером по найму , продавцом для технологического стартапа или менеджером по продукту .

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

Что такое Back-End разработка?

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

Основы: Front-End и Back-End

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

Важно отметить, что этот удобный способ разделения разработки значительно изменился за последние 10-15 лет с взрывным ростом JavaScript, который не был так широко распространен в интерфейсной части, как сейчас, или так распространен в бэкэнд, благодаря Node.js. Между ними больше общего, особенно когда речь идет о роли разработчика JavaScript в стеке, полностью основанном на JavaScript.

Вот наглядное пособие, которое даст вам представление о том, как протекают интерфейсная и внутренняя разработка.

Вы можете увидеть, как серверная сторона (в зеленом поле) обрабатывает все запросы, поступающие от кликов пользователей. Внешние скрипты перенаправляют эти запросы на серверную сторону для обработки, возвращая соответствующие данные клиентской части. Это часто происходит в постоянном цикле запросов и ответов на сервер.

Теперь давайте посмотрим, как работает серверная архитектура . — программное обеспечение и оборудование, которые вступают во владение на четвертом шаге на приведенном выше рисунке.

«Традиционная» серверная часть — это сочетание сервера, баз данных, API-интерфейсов и операционных систем, которые обеспечивают работу клиентской части приложения. Для более глубокого изучения программного обеспечения, которое связывает все это воедино, прочтите Серверные сценарии: технология внутренней веб-разработки . Внутренняя часть приложений может сильно отличаться от приложения к приложению, будь то использование облачных серверов и хранилищ данных, контейнеризация с помощью службы, такой как Docker, провайдеры Backend-as-a-Service (BaaS) или API для замены более сложная обработка.

Давайте углубимся в эти концепции и рассмотрим некоторые технологии, которые заставляют все это работать.

Разбивка программного стека: основы инструментов и технологий серверной части

Разработка серверной части может быть гораздо более разнообразной, чем разработка интерфейса, которая в значительной степени зависит от JavaScript, HTML, CSS и различных внешних интерфейсов. конец фреймворков, использующих эти языки.

Для упрощения мы разделим серверную часть на четыре основных компонента «программного стека»: сервер, база данных, операционная система и программное обеспечение.

Вот еще немного информации о каждом из этих компонентов серверной части.

1. Серверы: оборудование

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

2. Базы данных: мозг

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

В этом кратком руководстве по современной технологии баз данных вы получите понимание того, как работают базы данных, общие термины, которые необходимо знать, взгляните на SQL и NoSQL и как определить, какая база данных лучше всего подходит для вашей сети. заявление.

3. Промежуточное ПО: сантехника.

Промежуточное ПО, по сути, описывает любое программное обеспечение на сервере, которое соединяет внешний интерфейс приложения с его серверной частью.Подумайте о промежуточном программном обеспечении как о канале для вашего сайта — оно направляет любые сообщения, такие как запросы и ответы, между вашим приложением и вашим сервером / базой данных. Как и в случае с водопроводом в доме, вы не видите промежуточного программного обеспечения, но оно есть, и оно должно быть надежным и всегда делать то, что от него ожидается.

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

Промежуточное ПО также позволяет облачным и локальным приложениям «разговаривать» и предоставляет такие услуги, как интеграция данных и обработка ошибок. Хорошее промежуточное программное обеспечение также может повысить эффективность ИТ и обеспечить такие функции, как участие пользователей, управление бизнес-процессами, управление контентом, аутентификация и многое другое.Koa.js — это пример серверной инфраструктуры JavaScript.

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

4. Языки программирования и фреймворки: основные принципы

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

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

Большинство сайтов построено на PHP , что делает его одним из самых популярных языков программирования серверной части.Но есть из чего выбирать. Например, вы можете захотеть использовать вычислительную мощность Python для сайта, управляемого данными, или использовать скорость легких языков, таких как Ruby , для более быстрого прототипирования. Все зависит от вас и ваших разработчиков, и у каждого языка есть свои плюсы и идеальные приложения.

Взгляните на некоторых других крупных игроков в области внутреннего программирования, например:

Где эти языки действительно набирают обороты, так это с фреймворками, которые разработчики используют в качестве каркасов для создания серверных приложений. Узнайте, что такое фреймворк, в этой статье , а затем ознакомьтесь с несколькими популярными:

В нем описаны самые основные концепции и инструменты внутренней разработки, но есть еще кое-что, что нужно узнать.

API: важнейшие технологии в Back-End программировании

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

Чтобы объяснить мощь API-интерфейсов, Upwork написал бесплатную электронную книгу «Экономика API», которая охватывает все, что вам нужно знать, чтобы начать работу с API. Загрузите его бесплатно , а затем ознакомьтесь с этой серией статей об API, чтобы лучше понять, как они работают в серверной инфраструктуре, как создать безопасный API и многое другое.

Наем Back-End разработчика

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

Добавить комментарий

Ваш адрес email не будет опубликован.