FRONTEND И BACKEND РАЗРАБОТКА
Рассмотрим более подробно эти два термина:
Frontend — все, что браузер может читать, выводить на экран и/или запускать. Frontend разработка подразумевает использование таких технологий как HTML, CSS и JavaScript.
HTML (HyperText Markup Language) – это язык гипертекстовой разметки, который получил очень широкое распространение в сети Интернет. Язык HTML определяет структуру, содержание страниц, которую вы видите в браузере. Каждый сайт в сети интернет использует для отображения информации язык HTML. Если за содержание страниц отвечает HTML, то за их оформление - CSS (Cascading Style Sheets). HTML (Hypertext Markup Language, язык разметки гипертекста) говорит браузеру, что он должен отобразить, например, заголовок, абзац, список, элемент списка и так далее.
Я начал изучать HTML и CSS, потому что это базис фронтенд-разработки. Без знания HTML и CSS невозможно создать действительно стоящий и уникальный сайт, как и без языков программирования. Если провести аналогию, HTML и CSS — кузов в машине, двери, колеса и т.д., а язык программирования — это уже комплектация, внутренняя начинка автомобиля, у каждого авто она своя. Так же как возможности авто зависят от комплектации, так и возможности сайта зависят от его «начинки». Кто-то обращает внимание на внешний вид, а кому-то важнее характеристики. То же самое и с сайтом, вы можете предложить красивую пустышку или мощный функционал с посредственным дизайном. Но идеальный вариант сочетает внешнюю привлекательность и удобство, обеспеченное мощным программным кодом. Да, можно сделать сайт на CMS, залить на него какой-то бесплатный дизайн, наполнить контентом и получить невыразительную шаблонную болванку. Но сегодня с таким сайтом далеко не уедешь, нужна уникальность, нужны доработки сайта под нужды пользователя.
- Роман Кузько, веб-разработчик INTEC.
CSS используется для оформления внешнего вида документа, созданного с использованием языка разметки HTML. Использование CSS (Каскадные таблицы стилей), обеспечивает большую гибкость в оформлении страниц и уменьшает общий объем кода и сложность веб-страниц. CSS (Cascading Style Sheets, каскадные таблицы стилей) отвечают за то, как выглядят элементы: «отступ после первого абзаца равен 20 пикселям», «весь текст в body должен быть темно-серым».
JavaScript - это язык программирования, как правило, выполняется на стороне клиента, с его помощью можно создавать различные условия «если-то», «циклы», алгоритмы и др. Он используется для взаимодействия с пользователем. Веб-браузеры имеют встроенную поддержку для этого языка. Сфер применения данного языка очень много. Одно из ранних примеров использований JavaScript-кода - это его использование в диалоговом окне сообщений, предусмотренных предупреждениях, оповещениях или приглашениях пользователям. JavaScript может использоваться для обратной связи с пользователями посредством онлайн-форм. Он широко используется в формах регистрации и принятия индивидуальных логина и пароля. JavaScript заставляет браузер некоторым образом реагировать на действия пользователя.
Сам JavaScript — создан для Front-end и его код обрабатывается непосредственно браузером, но из-за повсеместной популярности, из него сделали и Back-end—версию. Плюс, для JavaScript создано большое количество всевозможных фреймворков, заточенных под разные задачи и облегчающие процесс кодинга.
"В настоящий момент мы наблюдаем очень большой интерес к серьёзным разработкам на JavaScript в мире. Front-end – как правило делается или на JavaScript или на TypeScript с использованием framework-ов: React, Vue, Angular (в порядке популярности, примерно 90% - React). При этом на TypeScript/JavaScript с использованием React, Electron и ReactNative получают Desktop и Mobile версии приложений, это тоже популярно."
- Степанов Борис Вячеславович, технический директор ООО "Прикладные технологии".
Backend - все, что работает на сервере, то есть «не в браузере» или «на компьютере, подсоединенном к сети (обычно к Интернету), который отвечает на сообщения от других компьютеров». Для Backend разработки используются любые инструменты, доступные на вашем сервере (который, по сути, является просто компьютером, настроенным для ответов на сообщения). Это означает, что вы можете использовать любой универсальный язык программирования: PHP, Python, JavaScript/Node. Это также означает, что вы можете использовать системы управления базами данных, такие как MySQL.
Хасанов Евгений, программист Digital-агентста Xpage, говорит о том, что PHP действительно крутой язык, потому что с первых же уроков вы начинаете творить простые, но полезные вещи. При изучении, допустим, Java вам придётся потеть над теорией: ООП, классами, переменными, областями видимости, чтобы потом написать «Hello, World!» в консоли. Пока вы дойдёте до реально полезных вещей, обучение может порядком надоесть. Синтаксис PHP обеспечивает низкий порог входа. Это, конечно, не Python, но большинство функций интуитивно понятны и используют удобную форму записи. А многое из того, что казалось сложным и архаичным в синтаксисе, было решено в PHP7. Кроме того, продолжает с увлечением рассказывать о PHP Евгений:
"В конце концов, PHP всё ещё один из самых популярных языков программирования и безусловный лидер, если говорить о серверной стороне веба. Маловероятно, что вы сможете работать в этой области и не знать PHP".
Кроме PHP, в процессе Back-end разработки используется и JavaScript/Node.
"Для Back-end разработки – используется Node.js с фреймворками вроде Express.js или Koa, большинство провайдеров облачных сервисов (основная тройка точно: Amazon Web Services, Google Cloud и Microsoft Azure) хорошо поддерживают Node.js, в последнее время стали не стесняться его использовать и корпоративные клиенты. В сторону Node.js плавно переводят приложения, которые были написаны на Java и C#. На мой взгляд, Node.js в ближайшие 5 лет станет самой востребованной и интересной платформой для разработки. В российских проектах также есть интерес, пусть и не столь большой."
- Степанов Борис Вячеславович, технический директор ООО "Прикладные технологии".
При регистрации у Вас есть возможность выбора технологий, которые вы будете изучать: Frontend (HTML, CSS, JavaScript) или Backend (JavaScript, PHP).