Поддерживая большую кодовую базу в течение многих лет, которая отдавала предпочтение необработанным диктатам над объектами, я считаю, что если эта кодовая база будет поддерживаться либо А) другим человеком, либо Б) несколькими людьми, вы должны начать переходить к реальным классам и ООП. Прежде всего, тот факт, что вы можете легко увидеть, какие атрибуты должен иметь экземпляр класса, просматривая исходный код или даже интерактивно используя dir()
и другие методы самоанализа, делает ваш код намного проще для изучения, изменения и сопровождения. Понимание и отладка намного проще с классами, которые имеют интуитивно понятные имена, четко определенные свойства, документацию и читаемый исходный код, в отличие от огромного беспорядка функций, которые принимают в качестве аргументов диктанты и преобразовывают их во время выполнения множеством способов, которые могут быть понятым только читая всю кодовую базу. Трассировки также, как правило, легче читать и расшифровывать, когда используется classe, поскольку вы не получаете типовых сообщений об ошибках низкого уровня.
В качестве еще одного доказательства посмотрите на зрелые и успешные проекты на Python. Вы увидите много ООП, классов и документации. Необработанные подсказки, списки, наборы и кортежи хороши, когда это уместно (ваши данные действительно просты) и для небольших проектов и сценариев, но удобство сопровождения не длится дольше определенного размера проекта. Понятие «X - это просто диктат» выживает только тогда, когда ваша концепция X предельно проста.