Web フレームワークは常に、優れた OO コードから離れているようです (コードとデータをオブジェクトにグループ化し、そのオブジェクトにメッセージを送信するという観点から考えるなど)。
主な問題は、Bean パターンの存在のようです。データベース、Web サービス、およびその他のほとんどのものと対話するために、Bean パターン (人々は違いを理解していないように見えるため、最近は POJO と呼ばれることが多い) を使用します。
したがって、コードなしでセッターとゲッターのこのボールに行き詰まっているわけではありません. オブジェクト指向コードのほとんどすべての利点がなくなりました。
私が検討している 3 つの解決策がありますが、それらのいずれかに重大な欠点があるかどうかを知りたいと思っていました。
1) Bean パターンの代わりに POJO パターンを使用します。これは、POJO からセッターとゲッターを削除し (カプセル化/データの安全性を確保できるようにするため)、代わりにビジネス ロジック メソッドを追加することを意味します。これは最も理にかなっているように思えます。実際、休止状態のようなライブラリが Bean を要求することから POJO を許可するように切り替えた理由だと思いますが、それでも誰もが代わりに Bean パターンを使用しているようです。
2) Bean のフィールドをストレージとして使用するビジネス ロジック クラスで Bean を拡張します。これは不安定で問題があるように見えますが、移行する方法として既存のコードベースにドロップするのは非常に簡単です...
3) Bean パターン オブジェクトをビジネス ロジック オブジェクトでラップします。#1が本当に問題がある場合、これが必要になる可能性があると思います。
私が最も疑問に思っているのは、なぜ #1 が使用されているのを見たことがないのかということです。休止状態のオブジェクトに Pojo パターン (ビジネス ロジックを使用し、セッターとゲッターを使用しない) を使用し、それに問題があった (または非常にうまく機能した) 人からの連絡をお待ちしています...