私は強力なオブジェクト指向のバックグラウンドから来ており、コードはJavaで書かれていますが、以前よりも優れたオブジェクト指向設計にあまり重点を置いていない組織で働き始めました。私は「あまりにも多くの抽象化」を導入し、代わりに常に行われている方法をコーディングする必要があると言われました。これはJavaの手続き型です。
TDDもここではあまり実践されていませんが、テスト可能なコードが必要です。大きな「神クラス」の静的プライベートメソッドにビジネスロジックを埋め込むことは(このチームの標準と思われます)、あまりテストできません。
私は自分の動機を同僚に明確に伝えることに苦労しています。OOとTDDを使用するとコードのメンテナンスが容易になることを同僚に納得させる方法について、誰かアドバイスがありますか?
技術的負債に関するこの質問は私の質問に関連しています。ただし、他の問題がカバーする事実の後に返済するのではなく、そもそも借金の発生を回避しようとしています。