У меня есть проект, достаточно большой по размеру, и я не могу больше держать в голове каждый аспект. Я имею дело с рядом классов и функций, и я передаю данные.
Со временем я заметил, что получаю ошибки, потому что забыл, какую точную форму должны иметь данные, когда я передаю их различным функциям ( например, одна функция принимает и выводит массив строк, другая функция, которую я написал гораздо позже, принимает строки, которые хранятся в словаре и т. д., поэтому мне нужно преобразовать строки, с которыми я работаю, из массива в словарь ).
Чтобы избежать необходимости всегда выяснять, что и где сломалось, я начал рассматривать каждую функцию и класс как «изолированную сущность» в том смысле, что он не может полагаться на внешний код, предоставляющий ему правильный ввод, и должен сам выполнять проверки ввода (или, в некоторых случаях переделывают данные, если данные приведены в неправильной форме).
Это значительно сократило время, затрачиваемое на то, чтобы данные, которые я передаю, «вписывались» в каждую функцию, потому что сами классы и функции теперь предупреждают меня, когда какой-то ввод неверен (а иногда даже исправляет это), а я нет Я должен идти с отладчиком через весь код, чтобы выяснить, где что-то пошло не так.
С другой стороны, это также увеличило общий код.
У меня вопрос, подходит ли этот стиль кода для решения этой проблемы?
Конечно, лучшим решением будет полная реорганизация проекта и обеспечение единообразной структуры данных для всех функций - но, поскольку этот проект постоянно растет, я бы в конечном итоге тратил больше и беспокоился о чистом коде, чем фактически добавлял новые вещи. ,
(К вашему сведению: я все еще новичок, поэтому извините, если этот вопрос был наивным; мой проект на Python.)