Мини-девлог: за что я (не) люблю кодить

4 попытки, 2 полных переписывания, дикий тупняк и осознание наличия бага... но тем не менее, сегмент выполнен, контроль типа повешен (я знаю, что плохой)... но когда смотришь на итоговый объём кода в проде вспоминаешь мем "итог работы: -200 строк кода".

КДПВ - рандомная ламия из яндекса<br />
КДПВ - рандомная ламия из яндекса

В общем, работа над зрением немного затянулась и, честно говоря, я не справился, но работать должно. Код полуготовый и я более чем уверен, что бажный. Но главное - я теперь представляю ЧТО и ГДЕ я буду дебажить и вроде как точки входа-выхода определены:

Красные стрелочки - технический долг. Схема недооформлена, т.к. я в ней тоже не 100% уверен<br />
Красные стрелочки - технический долг. Схема недооформлена, т.к. я в ней тоже не 100% уверен

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

Я знаю что тут есть баги. Но зато я знаю где дебажить. Никогда не пишите код в состоянии "убейте меня кто-нибудь" - технический долг сам себя потом не поправит.<br />
Я знаю что тут есть баги. Но зато я знаю где дебажить. Никогда не пишите код в состоянии "убейте меня кто-нибудь" - технический долг сам себя потом не поправит.

Тут можно видеть 2 вложенные функции, одна из которых, "add_to_lops" - тупо враппер на одну операцию. У неё есть все шансы улететь, потому что это лишняя операция в довольно нагруженном месте.
Вторая же, "inter_proc" - мне кажется закоженной не совсем правильно, но хэй, поправить баг - не с 0 написать.

Проблему же для меня сейчас представляют классы "interaction", "line_of_persception" и "limit_of_persception" - я просто не знаю как их реализовать... но это уже нормально. По сути мне нужно "всего лишь" запилить необходимые элементы и, опираясь на них, принять решение о формате данных.

А вот как это выглядит на стороне персонажа:

Технический долг, технической долг во все поля!<br />
Технический долг, технической долг во все поля!

Пхех. Пока готовил статью нашёл баг в проверке типов. Ну штош, придётся чинить. А ведь не писал бы девлог - наткнулся бы на это только при дебаге. Польза!

Почти эталонный говнокод. Сразу пометил где искать косяк если что пойдёт не так. Никогда не кодьте в состоянии недосыпа/ИСС - потом хрен поймёшь зачем это не написано проще.<br />
Почти эталонный говнокод. Сразу пометил где искать косяк если что пойдёт не так. Никогда не кодьте в состоянии недосыпа/ИСС - потом хрен поймёшь зачем это не написано проще.

Должен делать он следующее: делает разбор каждого элемента возвратного массива на соответствие допустимой маске и проверяет, есть ли False.Если да - рип процесс с ошибкой.

В общем, медленно-медленно, но дело движется.
Хотя если кто капнет на энергос (или тем более подкинет на аренду рабочего места) - будет двигаться полегче.

Ну значит что.
1. Наконец-то можно взяться за ходы и генерацию историй.
2. Это позволит определиться с форматом взаимодействий.
3. После можно будет браться за генерацию рендера.
4. И вот уже видна электричка в конце тоннеля.

1.2K1.2K показов
176176 открытий
14 комментариев

классека

Ответить

Бро, давно кодишь? Есть полезные ссылки по полюсам?

Ответить

Самая полезная ссылка по плюсам - это гайд по C# или Rust

С плюсами я за год столько хрени понавидался, что никакой php не сравнится. Вернее, когда я увидел баги С++ - я понял почему багует php.

В общем - если тебе не требуется - держись подальше от этой тоталитарной секты.

И от питона тоже по возможности держись подальше, но иногда он "просто работает".

Ответить

Ты на питуне чтоль игру пишешь?

Ответить

Прототипирую.
Просто на питоне я могу себе позволить такую вещь как "да пофиг, потом с типами разберусь!"

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

Но я хочу мигрировать на Форт.

Ответить