Рубрики
Технологии

Пост @Maggotya — Разработка игр — N/P

🏗️ Темы по архитектуре для инженеров ПО💪

Уровень материала: 🐓 #senior

Разгребая бэклог, добрался до поста канала S0ER с «темами по архитектуре, которые должны входить в архитектурный минимум каждого инженера». Структуризация, возможно, спорная, но это авторское видение, и если «душность» оставить за скобками, то ещё и очень хорошая система тегов для профессионального развития.

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

☝ Пользуясь случаем, напомню, что игры — это тоже ПО. А разработка ПО — инженерная дисциплина. У игр, несомненно, есть своя специфика, но она никак не отменяет всего остального инженерного бэкграунда. Особенно, когда работаешь не только на клиентской части.

🤓 Скорее всего, вся эта «техническая канитель» не нужна людям, которые идут в геймдев ради творчества и самореализации через инди-проекты в инди-командах. Но если ты осознаёшь себя программистом, осознаёшь геймдев своей специализацией, хочешь уметь разрабатывать более сложные продукты, развиваться как профессионал, расширять зону ответственности, приносить больше ценности для своей команды и, как следствие, в какой-то форме для себя, то (-записывайся на курс-) держи бесплатную верхнеуровневую роудмапу для расширения своих компетенций. Корреляция с игровыми проектами произойдёт сама собой по мере получения большего опыта в сфере.

🎥 Можно ещё побродить по YouTube-каналу S0ER‘а. Видео не выходили давно, но контента там уже накопилось много. Например, я недавно пересматривал видео по KISS, чтобы освежить в памяти некоторые красноречивые пункты.

🕸 Схема в текстовом виде:

Архитектура:

|- Требования:

|—- Функциональные

|—- Нефункциональные

|—- Производные

|—- Пользовательские истории

|- Принципы:

|—- Границы: толстые, тонкие

|—- YAGNI

|—- KISS

|—- DRY

|- Подходы:

|—- Проектные

|—- Продуктовые

|- Методология:

|—- DDD: тактика, стратегия

|—- Agile: SCRUM, экстремальное программирование

|—- Waterfall: сверху вниз, снизу вверх

|- Процессы:

|—- Документирование: BPMN, UML

|—- Проектирование: ADR, C4

|—- Выпуск: версионирование, CI/CD

|- Уровень предприятия:

|—- ITIL

|—- PRINCE2

|- Облачная архитектура

|- Проектирование и разработка:

|—- Уровень кода:

|——- Шаблоны проектирования (GoF)

|——- Парадигмы:

|———- ООП: SOLID, GRASP, DI

|———- ФП

|—- Уровень приложения:

|——- Концепции:

|———- Реактивная архитектура

|———- Чистая архитектура

|———- Порты и адаптеры

|———- Feature Sliced

|——- Структура:

|———- Монолит

|———- Сервис

|———- Микросервис

|———- Микроядро/плагин

|——- Данные:

|———- Потоки данных: CQRS, Конвейер/pipe, pub/sub, SAGA

|———- Целостность: BASE, ACID

|—- Системный уровень:

|——- Данные: Data Lake, Data Mesh

————————————

#gamedev #development #architecture #roadmap #software #геймдев #разработка #архитектура #по #рекомендация

Читать дальше →