私は現在リポジトリを作成していて、エンティティの削除操作の「ベストプラクティス」は何であるか疑問に思っていました。以下のオプションでは、makeとmodelがCarエンティティのキーを構成します。
オプション1:
deleteCar(Car car)
オプション2:
deleteCar(String make, String model)
オプション3:
deleteCar(CarKey carKey)
最初はオプション1を考えましたが、実際にはオプション2の方が魅力的です(削除メソッドに渡すためだけにIDしかない場合は、オブジェクトを取得する必要はありません)。私はそのようなものを見たのでオプション3を入れましたが、CarKeyは実際にはドメインオブジェクトではないので、それは私には正しくないようです。
考え?