SteveFreemanとNatPryceによるテストに導かれたGrowingObject-OrientedSoftwareを読み、非常に感銘を受けました。例はJavaで書かれていますが、RSpecを使用するRailsプロジェクトでこの本のアイデアを採用したいと思います。
この本の基本的な原則は、具象クラスの代わりにインターフェースをモックするべきであるということです。インターフェイスを抽出して名前を付けることで、アプリケーションの設計を改善できると言われています。
ただし、RubyにはJavaと同等の構文はありませんinterface。Railsプロジェクトに彼らのテクニックをどのように活用できますか?
アップデート
たとえば、126ページで、作成者はメソッドAuctionを実装するためのインターフェイスを紹介しましたbid。最初に、彼らAuction.classはテストに合格するために嘲笑し、次にAuctionクラスに匿名の内部クラスとしてクラスを実装しましたMain。最後に、彼らは(131-132ページ)XMPPAuctionから新しい具象クラスを抽出しました。Main
この漸進的なアプローチは、私の意見ではこの本の核心です。
Ruby開発でこのような一連のコード変換を採用または模倣するにはどうすればよいですか?