Если операторы Switch нарушают принципы SOLID, как утверждает дядя Боб (в "Чистом коде"), должен ли я их вообще использовать с языками OO?

В " Чистом коде"дядя Боб утверждает, что операторы switch почти всегда нарушают принципы единой ответственности и открытости / закрытости. Значит ли это, что я должен редко (единственный случай, который он предлагает, - это когда переключатель скрывается в абстрактной фабрике для создания полиморфных объектов), использовать операторы переключения и, следовательно, перечисления? В связи с этим возникает вопрос, действительно ли необходимо иметь инструкции Switch на языке OO?

Например, язык Swift предпочитает перечисления (они могут нести данные и т. Д.). Минимизация их использования будет важным решением. Swift является языком OO, применяются ли те же правила?

0 ответов

Другие вопросы по тегам