Я не любитель видеоигр. Последней игрой, в которую я (охотно) играл, была Mario Kart для Nintendo 64 в начальной школе. Думаю, я упустил возможность пролить слезы над старшими братьями и сестрами, отключившими вашу консоль прямо на краю пропасти.
Однако на этой неделе я сделал обнаружил, насколько чертовски круты игры для обучения программированию.
Краткий обзор моего внутреннего монолога на этой неделе:
- Почему я ничего не вижу на странице?
- Что, вы имеете в виду, что DOMDisplay не определен ?? Буквально правильно. там.
- Почему мой персонаж движется так, будто у него под задницей ракета ??
- Клянусь, я ничего не менял. Почему сейчас работает ?? Не трогай, Камила. Не трогай его.
На этой неделе я боролся с тем, чтобы чувствовать себя хорошо, не зная всего. Моя игра-платформер была построена по принципу туториала. Там было много кода и подробные объяснения, но я не чувствовал себя комфортно из-за того, насколько я знал, что не смог бы реализовать эту игру самостоятельно.
По прошествии недели я сделал шаг назад и понял, что именно поэтому учебник существует. Если бы все, кто следит за инструкцией, уже знали, как построить эту чертову штуку, ее бы не существовало. Сделай вдох.
Все сказано - я понял ~ 80% моего кода, что на 100% больше, чем я понял в понедельник. Мне нужно быть добрым к себе.
Вот несколько самородков, которые я вынес на этой неделе:
- ES6 значительно упрощает мне разделение мыслей и следование игровой логике. Возможность видеть классы с четко организованными объявлениями методов - это просто рай. Несмотря на то, что в этом руководстве использовался синтаксис ES5, я планирую через несколько недель провести рефакторинг этого проекта с использованием ES6, чтобы увидеть, не смогу ли я глубже понять некоторую логику.
- Мне нужно еще раз изучить
.appendChild()
. Он часто использовался в коде учебника, и я хочу быть уверенным, что у меня есть четкое представление о нем. - Реализация игрового движения - это тонна проб и ошибок. Отсюда и вышеупомянутое «почему мой персонаж движется, как будто у него под задницей ракета ???». Требуется множество попыток, чтобы персонажи двигались в логичном и плавном темпе, имитируя «гравитацию», когда они падают с платформы на платформу.
- Меня на 100% больше не пугает необходимость соединять файлы HTML, CSS и JavaScript вместе. Не знаю, почему эта задача всегда казалась мне сложной. Я счастлив, что эту компетенцию проверили.