Глоссарий
Что это за умное слово? Глоссарий - это сборник терминов, которые помогут тебе понимать о чём говорят разработчики.
Основы и общее
| Термин |
Расшифровка |
Просто о сложном |
| ЯП |
Язык программирования |
Python, JS, C++ и т.д. |
| IDE |
Integrated Development Environment |
Умный блокнот для кода (PyCharm, VSCode) |
| CLI |
Command Line Interface |
Управление через терминал, без мышки |
| GUI |
Graphical User Interface |
То, на что ты кликаешь мышкой |
| API |
Application Programming Interface |
Способ двух программ разговаривать друг с другом |
| SDK |
Software Development Kit |
Набор инструментов для разработки под конкретную платформу |
| Репа / Репозиторий |
Repository |
Папка с кодом под контролем Git |
| Компилятор |
- |
Переводит весь код в бинарник сразу (gcc, rustc) |
| Бинарник |
- |
Скомпилированный исполняемый файл (.exe, ELF) |
| Интерпретатор |
- |
Выполняет код строка за строкой (Python, Node.js) |
| Пакетный менеджер |
- |
Устанавливает и управляет зависимостями (npm, pip, pacman) |
| Переменная окружения |
ENV |
Настройки вне кода - хранятся в системе, не в файлах |
Парадигмы программирования
| Термин |
Расшифровка |
Просто о сложном |
| ООП |
Объектно-ориентированное программирование |
Всё - объект: у него есть свойства и методы |
| ФП |
Функциональное программирование |
Всё - функция, без побочных эффектов |
| ПП |
Процедурное программирование |
Код сверху вниз, шаг за шагом |
| Декларативный стиль |
- |
Говоришь что хочешь, не как делать (SQL, HTML) |
| Императивный стиль |
- |
Говоришь каждый шаг что делать (большинство ЯП) |
Архитектура и структуры
| Термин |
Расшифровка |
Просто о сложном |
| SOLID |
5 принципов ООП |
Набор правил чтобы код не превращался в кашу |
| DRY |
Don't Repeat Yourself |
Не копируй код - выноси в функцию |
| KISS |
Keep It Simple, Stupid |
Не усложняй без причины |
| YAGNI |
You Aren't Gonna Need It |
Не пиши то, что "может пригодиться" |
| MVC |
Model-View-Controller |
Архитектура: данные / отображение / логика раздельно |
| REST |
Representational State Transfer |
Стиль API через HTTP запросы (GET, POST, PUT, DELETE) |
| CRUD |
Create Read Update Delete |
4 базовых операции с данными |
Разработка и процессы
| Термин |
Расшифровка |
Просто о сложном |
| CI/CD |
Continuous Integration / Delivery |
Автоматическая сборка и деплой при пуше в репу |
| Деплой |
Deploy |
Выкатить проект на сервер / в прод |
| Прод |
Production |
Живая версия сайта/приложения для пользователей |
| Стейджинг |
Staging |
Копия прода для тестов перед релизом |
| Рефакторинг |
Refactoring |
Переписать код чище, не меняя поведение |
| Дебаггинг |
Debugging |
Поиск и исправление багов |
| Легаси |
Legacy |
Старый страшный код, который все боятся трогать |
| Костыль |
- |
Временное грязное решение (которое живёт вечно) |
| Версионирование |
SemVer |
Формат версий: 1.2.3 = мажор.минор.патч |
| Линтер |
- |
Проверяет код на ошибки стиля (ESLint, Ruff) |
| Хук |
Git hook |
Скрипт, который запускается автоматически при git push/commit |
Данные и системы
| Термин |
Расшифровка |
Просто о сложном |
| БД |
База данных |
Хранилище данных (PostgreSQL, SQLite) |
| ORM |
Object-Relational Mapping |
Работа с БД через объекты, без сырого SQL |
| SQL |
Structured Query Language |
Язык запросов к реляционным БД |
| JSON |
JavaScript Object Notation |
Универсальный формат передачи данных |
| Парсинг |
Parsing |
Извлечение нужных данных из текста/HTML/JSON |
| Эндпоинт |
Endpoint |
Конкретный URL у API (/api/users) |
| Миграция |
- |
Изменение структуры БД через код, с историей изменений |
| Кэш |
Cache |
Временное хранилище для быстрого доступа к данным |
| Очередь |
Queue |
Задачи выполняются по порядку (RabbitMQ, Redis) |
Сеть и безопасность
| Термин |
Расшифровка |
Просто о сложном |
| HTTP/HTTPS |
HyperText Transfer Protocol |
Протокол общения браузера с сервером |
| JWT |
JSON Web Token |
Подписанный токен для авторизации - данные читаемы, но защищены от подмены |
| OAuth |
Open Authorization |
Войти через Google/GitHub без пароля на сайте |
| SSH |
Secure Shell |
Безопасное подключение к серверу через терминал |
| CORS |
Cross-Origin Resource Sharing |
Правила кто может обращаться к твоему API |
| DNS |
Domain Name System |
Переводит домен в IP-адрес (телефонная книга интернета) |
| Порт |
- |
Число после : в адресе, например :8080 - канал связи |
| Прокси |
Proxy |
Посредник между клиентом и сервером |
DevOps / Инфра
| Термин |
Расшифровка |
Просто о сложном |
| Контейнер |
- |
Изолированная среда с приложением (Docker) |
| Образ |
Image |
Шаблон из которого создаётся контейнер |
| Том |
Volume |
Постоянное хранилище для Docker-контейнера |
| Оркестрация |
- |
Управление множеством контейнеров (Kubernetes) |
| Reverse Proxy |
- |
Nginx перед твоим приложением - раздаёт трафик |
Жаргон
| Термин |
Просто о сложном |
| Хардкод |
Захардкодить значение прямо в код вместо переменной/конфига |
| Абстракция |
Скрыть сложность за простым интерфейсом |
| Зависимость |
Библиотека/пакет от которого зависит твой проект |
| Дока |
Документация |
| Пулреквест (PR) |
Запрос на слияние твоего кода в основную ветку |
| Мёрдж |
Merge - слить две ветки Git в одну |
| Форк |
Копия чужого репозитория себе |
| Скаффолдинг |
Автогенерация базовой структуры проекта |
| Бойлерплейт |
Шаблонный повторяющийся код |
| Синглтон |
Паттерн - объект существует только в одном экземпляре |
| Дебаг-режим |
Запуск приложения с подробными логами и без оптимизаций |
| Флаг |
Переменная-переключатель: включено/выключено (true/false) |
| Моки |
Mock - подставной объект для тестов, имитирует реальный |