TGViewer
Надя думает Надя думает @hopethinks · 151 subscribers
Post #158 273
Итак, про мини игры на js

Даже если игра одноразовая, без грамотной архитектуры можно получить большое количество проблем на свою голову (проверено лично). Поэтому делюсь тем, как обычно структурируют игры, чтобы можно было легко добавить новый уровень, поменять визуал, переиспользовать логику или просто минимизировать баги.


✨ MVC ✨

Это архитектурный подход из далёких 80-х, придуманный ещё для первых интерфейсов.
Его суть в чётком разделении ответственности:

M — Model → логика
V — View → отображение
C — Controller → обработка действий пользователя и связующее звено


Я люблю объяснять MVC через аналогию с обычным компьютером:

⚫️ Model — внутренняя работа системы
⚫️ View — то, что отображается на мониторе
⚫️ Controller — обработка действий пользователя

У этого подхода много вариаций, но общий принцип сохраняется.


Как это связано с игрой:

⚫️ Логика игры — правила, состояния, расчёты → выносим в отдельный модуль Model

⚫️ Отображение — HTML, canvas → это View, отдельный модуль

⚫️ И связка между ними → Controller. Этот модуль самый непостоянный: в зависимости от игры контроллер может отслеживать события пользователя, запускать тик игры, запрашивать обновления состояния игры и отрисовку.


При такой архитектуре модули независимы. Можно, например, один раз написать модель, а потом поменять графику: сначала сделать игру на HTML, а затем, без переписывания логики, перевести её на canvas или добавить WebGL.

Реализация вторична, тут главное понять принцип — разделяй и властвуй 😏
  • 🔥 7
  • ❤ 2
  • ✍ 1
  • 👍 1
More from @hopethinks
  1. Apr 8, 2026Обожаю (нет) этот момент, когда на этапе погружения во что-то новое попадаешь в долину отч…
  2. Mar 17, 2026Channel photo updated
  3. Mar 17, 2026Всем привет. Я пропала на месяц и думаю, что лучший способ вернуться — это рассказать, где…
  4. Feb 3, 2026Вчера на уроке английского узнала идиому “Fake it till you make it”. Дословно «притворяйся…
  5. Jan 28, 2026Вчера был мой день рождения! В честь этого события я решила обновить пост-знакомство. Я На…
  6. Dec 18, 2025В процессе работы мне постоянно кажется, что я топчусь на месте или вообще деградирую. Осо…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →