Какой стек разработки актуален в 2024 году?
— Алексей, как считаешь: какой стек актуален для разработки приложения в 2024?
— Смотря для какого проекта.
— Разве есть разница?
— Конечно. Стек — это набор языков программирования, фреймворков и ПО. Проще говоря это — инструменты. Важно, чтобы они подходили для выполнения задачи, а не просто были на пике популярности в 2024.
— Значит, требования к инструментарию зависят от специфики самого проекта?
— Не только. Выбор стека зависит от ряда факторов, в том числе — компетенций команды, требований, которые предъявляются к функциональности клиентской и серверной частей приложения.
Клиентская — «фронт» — это часть, с которой взаимодействуют пользователи. А серверная — «бэк» — это то, что пользователь не видит. Внутрянка.
Я обычно исхожу из задачи, которую нужно реализовать, и под нее подбираю стек.
— И заказчику нужно во всём этом разобраться, чтобы сделать заказ?
— Нет, конечно)) Заказчик просто описывает свои бизнес-требования, а мы подбираем оптимальные технологии для реализации.
Например, если нужен сайт-каталог с пятью товарами, на котором пользователь может ознакомиться с ними и оставить заявку на звонок — это одни требования к стеку.
Если требуется полноценный интернет-магазин на тысячи товаров с интеграцией платежных систем и учетом остатков на складе — совсем другие.
— Получается, важно выбрать не столько популярный, сколько подходящий стек?
— От выбранных технологий напрямую зависит время, качество, стоимость разработки, возможность дальнейшего масштабирования проекта.
Однозначно не стоит использовать устаревшие фреймворки и плодить «легаси»-код — рано или поздно его все равно придется исправлять.
— А что если проект был создан давно?
— Если стек устарел, то его нужно обновлять, так как старый стек – это дыра в безопасности. Вопрос приоритетов и сложности проектов.
— А какой стек сейчас используется командой Hands App?
— Laravel 11 (PHP 8.3), Nuxt 3 /Vue 3 (+ Vite 5), Node 20. Что ещё... Redis 7, в индивидуальных случаях Memcached 1.6+ с интеграцией в Nginx.
По базам это MySQL 8.0/8.3, PostgreSQL 16, MongoDB 7. Они подбираются и зависят от задачи: где-то используем MongoDB, где-то MySQL, а где-то — PostgreSQL.
— По твоему опыту, заказчики обращают внимание на используемый стек?
— Ну как… Есть те, кто понимают, что тот же Laravel — это один из популярных open-source фреймворков. Он бесплатный и у него большое сообщество разработчиков, в том числе в СНГ. На нем можно реализовывать проекты соблюдая принципы и правила разработки.