Java アプリケーションがあり、それを拡張可能にしたいと考えています。拡張機能を作成するには、社内の開発者が特定のインターフェースを実装する Java クラスを作成します。また、関連するヘルパー クラスを作成することもできます。これらの拡張機能を停止することなくアプリケーションにロードしたいと考えています。
このクラスでできることを次のように制限したいと思います。
- アプリケーションの API でメソッドを呼び出します (これはコンストラクターへのパラメーターになります)
- 同じパッケージ内に他のオブジェクトのインスタンスを作成します (これにより、拡張クラスの作成者は他のクラスを使用して作業を完了できます)。
クラスが呼び出されると、渡された API オブジェクトには、すでに「顧客」が定義されており、メンバー変数として格納されています。これを使用して、API を介したアクセスをその顧客のデータに制限します。
これらのクラスに、データベースへのアクセス、ディスクへの書き込み、その他の処理などを実行させたくありません。同じ開発者チームが拡張機能とコアの両方を作成するアクセス権を持つため、これは主に依存関係の管理とカプセル化への取り組みです。システム。
これにはパターンがありますか?私は正しい軌道に乗っていますか?