Підбірка інструментів для backend-розробника

  • 1 сентября, 11:32
  • 4623
  • 0

Почнемо з того, чим взагалі займається backend-програміст. Він створює скрипти, які виконуються на стороні сервера. Область його роботи - отримання даних від сайту, їх обробка та підготовка до повернення користувачеві. Якщо потрібно, то звернення до бази даних. 

Іншими словами, backend-розробка - це отримання інформації, її запис в базу і повернення даних на сайт, де вони будуть представлені користувачеві засобами Frontend.

Підбірка інструментів для backend-розробника

Як виглядають Frontend і Backend насправді

Що повинен знати і вміти backend-розробник

  1. Володіти мовою програмування, наприклад PHP.
  2. Працювати з базою даних, наприклад MySQL.

Цього достатньо для початківця програміста. Надалі підключається робота з чергами через Cron. Він запускає скрипти за розкладом: раз в хвилину, день або місяць. Так як більше 70% сайтів в інтернеті написано на PHP, ми розповімо про інструменти веб-розробки саме на цій мові.

Веб-сервер

Backend-розробник повинен розгорнути на комп'ютері веб-сервер, щоб тестувати свій код. Організація локального сервера можлива в трьох варіантах.

1.  Поставити «чисті» PHP, Apache і MySQL самостійно з нуля або застосувати готові пакети -  Xampp ,  Denwer  і інші.

Така збірка працює в системі розробника і сприймається програмним оточенням як локальний сервер.

2.  Скористатися  Vagrant.

Це віртуальна машина з широкими можливостями. Фізично Vagrant знаходиться на комп'ютері, але сприймається не як локальний сервер. Розробник підключається до нього не по localhost, а по іншому IP, який він сам і прописує.

Vagrant не залежить від системи: беремо цю збірку, переносимо на іншу машину, і все працює в тому ж режимі. Це більш гнучке і зручне рішення для організації веб-сервера.

3. Використовувати  Docker.

Docker - унікальна і універсальна програма в області віртуалізації. Вона використовує систему образів для зберігання файлів, завдяки чому процеси операційної системи запускаються ізольовано один від одного. Веб-сервер сприймається програмним оточенням як такий, що знаходиться в хмарі, а не на фізичній машині.

Програми для створення коду

Код пишуть де завгодно, навіть в блокноті. Однак для зручності придумані системи, де працює автопідстановка, можна займатися дебагом і використовувати масу інших можливостей. Така програма називається IDE - інтегроване середовище розробки, або редактор коду.

Для роботи з PHP рекомендуємо дві IDE:

1. NetBeans

Основна перевага - це безкоштовна система. Однак NetBeans з'їдає багато пам'яті під час роботи і не такий прогресивний, як редактор нижче.

2. PhpStorm

Дуже зручний інтелектуальний редактор від компанії  JetBrains. Володіє відмінною автопідстановкою і просунутою системою семантичного аналізу. Програміст допустив помилку - аналізатор тут же показує, де саме. Незамінний інструмент для веб-розробника на PHP.

Недолік PhpStorm тільки в тому, що він платний: можна оформити підписку за $ 199 на рік. Через 12 місяців остання версія залишається у вас назавжди, але оновити її без оплати нового періоду не вийде.

Робота з базою даних

MyAdmin - стандартне рішення для цих цілей, але не найзручніше. По-перше, він запускається в браузері, і з'єднання іноді переривається через таймаут. По-друге, він частенько видає збої і не може похвалитися гнучкістю.

Радимо два варіанти, що перевершують MyAdmin  за характеристиками:

  1. SQLyog.
  2. Navicat.

Вони однакові в можливостях і якості, так що при виборі відштовхуйтесь від зручності використання. Хіба що Navicat підтримує більше баз даних, ніж SQLyog, але це важливо не всім.

Тестування API

Будь-який backend-розробник зіткнеться з тестуванням API. Для цього потрібні запити PUT, DELETE, PATCH і POST. Протестувати їх роботу неможливо через командний рядок. Доводиться писати запити в коді PHP і використовувати CURL, що займає багато часу і створює зайві проблеми.

Радимо програму  Postman, де тестування максимально комфортне. Просто вбивайте URL і параметри, і відповідь повернеться в трьох форматах: як запит виглядає на сайті, в JSON і в текстовому вигляді. Postman неймовірно зручний і дуже полегшує розробку API.

Програми для версіонізації

Щоб не стикатися з проблемою випадкового видалення шматків коду, програмісти використовують версіонізатори. А ще вони допомагають команді без проблем працювати над одним функціоналом спільно.

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

Рекомендуємо три системи:

1.  GitKraken  - платна програма. Призначена для Ubuntu і macOS.

2.  Tortoise  - варіант для Windows, права рука backend-розробника.

3. Ще одне рішення кроссплатформенного версіонізатора - програма від  Atlassian.

Компанія пропонує кілька передових і надійних продуктів для розробки, підтримки, управління кодом і робочими завданнями - не тільки технічними. Саме для роботи з Git є безкоштовний клієнт Sourcetree. Його вибирають, якщо з яких-небудь причин GitKraken і Tortoise не підходять.

Інтерфейс клієнта Sourcetree від Atlassian

Репозиторій для зберігання даних

Опціональний інструмент - хмарний репозиторій. За допомогою нього зберігають дані не у себе на комп'ютері, а в хмарному сервісі. Програміст закоммітив файли через версіонізатор, відправив в хмарне сховище, пересів за інший комп'ютер, скачав і продовжив розробку. Зручно, гнучко і мобільно.

Пропонуємо три кращих сховища на вибір:

  1. Bitbucket  - безкоштовно для команд з п'яти розробників. Для зростаючих і великих компаній є варіанти по 2$ і 5$ в місяць за одного користувача відповідно.
  2. GitLab  - безкоштовно з обмеженими можливостями. Платні тарифи починаються від 4$ за користувача щомісяця.
  3. GitHub  - мабуть, найбільший і відомий сервіс для спільної розробки. Безкоштовний для проектів з відкритим вихідним кодом і пропонує платні тарифи для корпоративних команд.

Висновок

Ми перерахували основні інструменти в стеці технологій для backend-розробки на PHP.


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