Технологии / Программирование

Вот почему комментирование вашего кода имеет решающее значение.

История о том, как я потерял 3 месяца работы, и как это может случиться и с вами.

Начало 2018 года. Мой друг привел меня в программирование, показав с чего начать и еще несколько ресурсов. Мне очень нравилось — и до сих пор нравится — играть в видеоигры. Я всегда мечтал создать свою игру. И, если бы я научился программировать, мои мечты сбылись!

Начало

Я быстро изучил основы C# и несколько объектно-ориентированных концепций, которые должны были быть полезны в Unity. После часов просмотра учебных пособий я, наконец, начал программировать. Я был так взволнован, и все, казалось, работало очень хорошо!

Я разработал несколько базовых рисунков и анимаций персонажей, а также некоторых монстров и снарядов. Я также создавал тайлы — поскольку мой мир должен был быть основан на тайлах — с помощью пиксельной графики, и мне это очень нравилось. Я использовал Unity, чтобы собрать все это воедино, и придумал небольшой демонстрационный мир, где я мог протестировать свою новую механику.

Обновление

Точно так же я начал разбираться в этом. Чем больше я программировал, тем лучше у меня это получалось. Я добавил систему здоровья, анимацию, перезарядку, оружие, больше монстров, модификаторы характеристик, меню, HUD, загрузочный экран… Кроме того, кажется, я даже создал систему инвентаря. Я провел с этим десятки часов, и казалось, что он продолжает расти и расти.

Я попросил пару друзей зайти на дискорд, чтобы показать им мою новую видеоигру. Это не имело большого значения, так как графика была очень простой, и в ней был только демо-уровень, но механика им понравилась. Я продолжал все сглаживать, балансируя основных монстров и оружие, характеристики регенерации и выносливости… Вроде бы все было в порядке.

Реализация

Потом что-то сломалось. Так просто. Что-то просто перестало работать — механика повреждений — и я не понял почему. Я попытался вернуться к своему коду и исправить его, но потом кое-что понял: я не мог прочитать свой собственный код.

Я понял, что не могу исправить свою игру, потому что не понимаю собственного кода.

Сначала я думал, что, может быть, проявив немного терпения, я смогу это исправить. Но я продолжал ломать все больше и больше вещей. Мой код был абсолютным беспорядком. Я вернулся к последней версии — той, где механика повреждений все еще была сломана — и оставил код как есть. Я прекратил работу над проектом и так и не закончил его.

В чем была ошибка?

Вы, наверное, уже догадались: я не прокомментировал ни одной строчки своего кода. Я не документировал свои функции. Я не структурировал свое файловое дерево. Все должно было сломаться в какой-то момент, мне просто повезло, что я прожил 3 месяца без серьезной ошибки.

Я не виню себя. Как новичок, все делают ошибки, и никто не знает полностью, что они делают. Мои мысли, как и многие другие, заключались в том, что комментирование было бесполезным и пустой тратой времени. Я был очень, очень не прав.

Как мы должны комментировать и документировать наш код?

Вот подробное руководство, которое вы можете использовать для профессионального документирования своего кода. Он показывает пользователю, когда и почему важно документировать код, и обучает различным стилям кодирования, ориентированным на разные языки программирования.

Я планирую написать статью о советах и ​​хитростях комментирования. Но пока я просто отсылаю вас к этому превосходному источнику.

Не забудьте прокомментировать свой собственный опыт ниже. Я хотел бы знать, приходилось ли вам, как и мне, учиться документировать код трудным путем!

Больше контента на blog.devgenius.io.