SOLID может помочь, если класс плохо спроектирован, но не поможет ответить на вопрос типа «Является ли объектно-ориентированное программирование лучшим подходом к этой проблеме?»
Люди сделали очень хорошую работу в программировании для математики и естественных наук, прежде чем объектно-ориентированное программирование вошло в моду. Если ваша проблема относится к этим категориям, возможно, объектно-ориентированное программирование не для вас.
Объекты - это состояние и поведение вместе; они имеют тенденцию сопоставлять объекты проблемной области один к одному. Если это не относится к вашей проблеме, возможно, объектно-ориентированное программирование не для вас.
Если вы плохо знаете объектно-ориентированный язык, возможно, объектно-ориентированное программирование не для вас.
Если ваша организация не знает и не может поддерживать объектно-ориентированные решения, возможно, объектно-ориентированное программирование не для вас.