Какие стандарты написания кода важны на практике и как их применять?
Продвинутые темы
Стандарты написания кода: соглашения по стилю (airbnb, standard), линтеры (ESLint) и форматтеры (Prettier), гайдлайны команды, TypeScript-конвенции, git-конвенции коммитов. Обеспечивают единообразие и качество.
Основные стандарты
Стайлгайды
Готовые наборы правил стиля:
- Airbnb JavaScript Style Guide — популярный, строгий.
- StandardJS, Google — альтернативы.
Определяют именование, структуру, best practices.
Линтеры (ESLint)
Автоматически проверяют соответствие правилам:
// eslint.config.js (flat config)
import js from '@eslint/js';
export default [js.configs.recommended, { rules: { eqeqeq: 'error' } }];Ловят ошибки, баги, нарушения стиля.
Форматтеры (Prettier)
Автоматическое единообразное форматирование (отступы, кавычки, переносы):
// .prettierrc
{ "semi": true, "singleQuote": true }TypeScript-конвенции
Типизация, strict-режим, именование типов, избегание any.
Соглашения об именовании
- camelCase (переменные/функции), PascalCase (компоненты/классы), UPPER_SNAKE (константы).
- Понятные, описательные имена.
Git-конвенции
- Conventional Commits (
feat:,fix:,docs:) — структурированные сообщения. - Именование веток, правила PR.
Архитектурные
- Структура папок (FSD, feature-based), разделение ответственностей.
Зачем нужны
- Единообразие — код выглядит одинаково, легче читать.
- Качество — раннее обнаружение проблем.
- Командная работа — меньше споров, проще ревью.
- Автоматизация — линтеры/форматтеры в pre-commit/CI.
Коротко для собеседования
Стандарты кода: стайлгайды (Airbnb, StandardJS), линтеры (ESLint — правила, баги), форматтеры (Prettier — форматирование), TypeScript-конвенции (strict, без any), именование (camelCase/PascalCase), git-конвенции (Conventional Commits), архитектурные (структура папок). Обеспечивают единообразие, качество и упрощают командную работу; автоматизируются в pre-commit/CI.