コンテキストをせずに2つの2の静的関数を崩壊しますリファクタリング、どの親関数が非静的
は、我々はマイクロサービスに移動するためにコードをrefectoringしています。 複数の製品(A、B、CおよびA、B、Cの共通コードはモノリシックで サービス)。現在、共通のコード用の新しいサンドボックスを作成しています。
問題:
User.java
Class User {
public **static** void init(){
List<Items> users=Items.getItemsList();
}
}
Items.java
Class Items {
public **static** Items getItemsList(){
//many static functions and dependancy
return items;
}
}
だからここに、両方の機能は静的であり、私は新しいサンドボックスではないItems.javaにのみUser.java を移動したいです。どのように私はこの依存を分解することができます。 と私はそれ以外の場合はコンパイルされません、サンドボックスはItems`もサンドボックス内に存在する必要があります」は、jarファイルを生成し、独立したプロジェクトを意味と仮定
"私は[User]は静的ではありません" これはまさにあなたがすべきことなので恥ずかしいです。 –
「新しいサンドボックスを作成する」または「新しいサンドボックスにのみUser.javaを移動する」とは、この依存関係をどのように「分解する」ことを意味し、なぜメソッドの「静的」修飾子が変化する? – Holger
@Holger User.javaを使用している製品が複数あるためです。 User.java、Order.javaなどの一般的なファイル用の新しいサンドボックスを作成しています。 このシナリオは です。製品Aのサンドボックス+共通ファイル 'サンドボックス 製品Bのサンドボックス+共通ファイル'サンドボックス....最終的にマイクロサービスにつながる。これについて他のアイデアはありますか? Plsは示唆している? –