我对在团队成员之间推广SOLID感到有些困惑。有人认为SOLID是一种工具,只有在需要根据SOLID原则(例如TDD开发)进行构建时,才可以使用它。他们认为,如果这是一个简单的应用程序,则可以像SOLID应用程序一样“走马观花”。鉴于此,每当他们一个人开始一个项目时,他们都会按照自己的意愿进行编码。
让我们给出一个场景:您的框架提供了一个IoC,并且您继续在类构造函数中使用new运算符创建对象。这样做的原因可能是因为键入“ new”比在IoC中描述对象依赖关系或创建工厂要快。也许该类需要一个配置,所以他们从对象内部获取此配置,将对象绑定到一个帮助程序,该帮助程序获取一个环境变量,而不是注入对象并使对象不可知。
他们说,这没错,SOLID不是您在每种情况下都应该遵循的。
您如何在这样的团队中提高技能?如果人们似乎认为这只是像库一样的另一种工具,而您又不需要那么在意,那么您如何习惯于根据原理来编写结构良好的代码呢?