Насколько глубоко фронтенд- и бэкенд-программисты должны знать смежный стек

Для максимально эффективной работы бэкенд-разработчик должен разбираться во фронтенде, а фронтенд-разработчик — в бэкенде. Но насколько глубоко? Какой конкретный минимум по смежному стеку должен знать разработчик? На эти вопросы ответил Павел Анфимов, разработчик, менеджер продуктов Рутокен компании «Актив».

Павел Анфимов

Менеджер продуктов Рутокен, Актив

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

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

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

  • принципы работы сетевых протоколов, особенно HTTP (формат запросов/ответов, коды ответов и т. д. );
  • форматы передачи данных XML и JSON;
  • особенности архитектурных стилей, протоколов и стандартов REST, RPC, SOAP, WebSocket и Long-Polling.

Изучите производительность браузеров и мощности серверов: это поможет адекватно оценить технические возможности каждой стороны.

Знайте принципы и средства (Cookie, JSON Web Token) построения аутентификации в веб-приложениях.

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

А еще есть fullstack-разработчики, которые разбираются и в серверной, и в клиентской части одинаково хорошо.

Комментарии остальных экспертов доступны в полной версии статьи на сайте Tproger.