Можливо ви вже вивчали стандартні мови програмування, алгоритми тощо й настав момент спробувати себе у Web-Development? З чого почати, у якому напрямі рухатися?
Роботу веброзробника можна умовно розділити на дві частини: роботу з даними на стороні клієнта (Front-end) та на сервері (Back-end) сайту. Списки для освоєння технологій Front-end та Back-end розробника різняться. Спробуємо визначити перші кроки для майбутніх junior-спеціалістів, які мріють стати веброзробниками.
Пропоную добірку технологій, які, на мій погляд, варта в першу чергу вашої уваги. Хоча для освоєння навіть цієї скромної добірки можуть знадобиться роки, але поверхневе ознайомлення необхідно для початку.
Front-end
- HTML, CSS
Тут здебільшого ми працюємо з графікою та структурою даних. Основні інструменти — це мови HTML, CSS.
HTML, мова розмітки, використовується для розміщення елементів на сторінці (фото, текст тощо), CSS — для роботи з їхніми стилями (ширина, висота, колір, товщина шрифту і так далі).
Для облегшення роботи з графікою необхідно використовувати фреймворки (такі собі «бібліотеки» з готовими рішеннями). Які? Найбільш популярні: Bootstrap, Tailwind. Як використовувати? Загуглити або глянути на YouTube. Благо, що їх та уроків до них зараз багато у вільному доступі, тому навіть в новачка не виникне істотних проблем.
- JavaScript
Без цієї мови не може обійтися ні один із Front-end чи Back-end розробників. Вона основна у вебі. До речі, JavaScript необхідна для придання інтерактивності сайту (наприклад, для динамічності сторінок, анімації), а також для взаємодії з Back-end частиною.
Хоча JavaScript є повноцінна сам по собі, але для облегшення роботи з нею також використовуються фреймворки. Серед найбільш популярних можна виокремити: Angular, React, Vue.
Back-end
- PHP
Основна мова програмування серверної частини та комунікації з клієнтом — РНР. З її допомогою можна, наприклад, працювати з базою даних, сесіями користувачів, cookie тощо. Для цього, звісно, можна використовувати й інші мови, але РНР наразі найбільш популярна і її знання потребується, як мінімум для підтримки проєктів, що вже існують. Але й у нових його продовжують використовувати.
- SQL бази даних
Більшість сайтів використовують інформацію з баз даних. Популярністю користуються реляційні БД, зокрема, MySQL та SQL Server. На почату мати дуже глибоких знань БД непотрібно, але знати основи побудови запитів обов’язково.
- CMS
CMS (Системи управління складовими) у нашому випадку використовуються здебільшого для створення сайтів за допомогою так званого «конструктора», що називають ще «двигуном сайту», коли не обов’язково знати програмування. Але навіщо тоді нам знати усе перелічене вище, якщо можна створювати сайти, ніби то будуючи їх з кубиків? Річ у тому, WordPress, Joomla!, Drupal можуть лише пришвидшити написання, бо нема потреби писати «все з нуля та по рядках». Наприклад, сайт магазину можна написати за декілька годин. Але якщо ви захочете змінити щось, що не дозволяє сам CMS, то потрібно лізти у код, де без вище згаданих мов, робити буде нічого.
До того ж як і у випадку з РНР, існує велика кількість проєктів, що написані на конкретних CMS, й відповідно потребують підтримки.
- Нереляційні бази даних
Знання, яке буде обов’язковим для підвищення вашої позиції веброзробника, наприклад, до Middle Web-Developer, але не завадить й для Junior, бо додає балів при працевлаштуванні. Найчастіше використовують — MongoDB.
Якщо подивитися на обраний перелік технологій, то може здатися, що Web-Developer дорівнює Full Stack Developer. І це недалеко від правди. Звісно, ви можете сконцентруватися лиш на одній частині напрямку веброзробки, але будьте готові, що від вас будуть вимагати знання основ й іншої частини. Наприклад, якщо ви займаєтесь Front-end, то при працевлаштуванні вас можуть спитати про РНР або БД.
Шукайте та знаходьте себе!
Іван Ларін