UN:
私は、クラスと呼ばれているPhotoManager
、それはシングルトンです。このクラスは、のようなメソッドが含まれています。
fun downloadPhoto(context: Context, photoUrl: String) { }
fun savePhotoUri(context: Context, uri: Uri) { }
fun setWallpaper(context: Context, photoUri: Uri) { }
私も持っているいくつかの他のクラス持っているManager
自分の名前に接尾辞を。例えば、SuggestionManager
それは、いくつかの入力データと戻り、ユーザベースの提案を受信します。
私はこれらの2つのクラスをリファクタリングしたいのですが、私は使用するパターンか分かりません。それはFacadeパターンにすることはできますか?
マシューTimmermans:
なぜPhotoManagerは存在しませんか?PhotoManagerは、どのような状態を持っていますか?そうでない場合には、単にそれを取り除きます。Kotlinでは、外側のクラスの機能を有することができます。
それは状態を持っている場合は、あなたがクラスを必要とする理由を把握し、それはあなたがより良い名前を把握するのに役立ちます。
「PhotoManagerは、」誰もが考えていないので、「私がする何かが必要、悪い名前で管理し、私の写真を」...と誰かがあればやったことを考えて、それが仕事をするだろうと同じように、そしてあなたのクラスは鳴りません。あなたのクラスの消費者として、それが何にある私?