3 типовые проблемы программиста мэйнстрима (детский сад штаны на лямках).
1. Я не видел ошибки, когда делал изменения в коде.
2. Я не проверял эту часть своего модуля, когда тестировал изменения.
3. Мне понадобился целый час, чтобы исправить эту дурацкую ошибку, потому что я не смог сразу найти точку, где она была.
2 - вообще база QA, хотя по большому счёту линтеры/стат.анализаторы + инспекции кода (метод пристального взгляда) в целом работают даже лучше, чем покрытие тестами (вчера в приватном клубе выложил материал на эту тему). но, нужно уметь держать в голове всю модель целиком хотя бы на уровне текущего модуля/класса с его контекстом использования.
3 - потому что код мутный и тотально запутанный, а про инварианты и слыхом не слыхивали (начьните хотя бы ассерты в коде почаще ставить).
1 - потому что код тотально хрупкий; решать задачу надо не тупым подбором синтаксических инструкций, а комбинированием абстракций (для начала прокачать автоматическое думание триплами Хоара); а потом make illegal states unrepresentable и функциональные паттерны.
Post #2074
793

- ❤ 37
- 🫡 15
- ✍ 3
- 👍 2
- 🏆 1