記事
「Moxy-ひとつまみのAndroidでのMVPの実装」で、ライフサイクルの問題を克服し、Androidプロジェクトのコードをレイヤーに分割する方法について説明しました。 ただし、MVPでは(Moxyでのビューステートのスマートコード生成でも)大量の追加コードを作成する必要があります(プレゼンターを作成し、相互に接続されたクラスとインターフェイスを表示します)。 実際、ロボットがあなたのために仕事をするはずです! :) Moxyの下でAndroid Studioテンプレートをカスタマイズして、定型文をさらに削減するときが来ました。
プロジェクト構造
コード生成を開始するには、プロジェクト構造を修正する必要があります。
プレゼンター、ビュー、アクティビティ、およびフラグメントパッケージのコンテンツは、順番に論理モジュールに分割されます。 多くの場合、このようなモジュールはアプリケーションのセクション(イントロ、オファー、フィードなど)です。 以下は、2つのアクティビティ(CarActivityとHomeActivity)と1つのフラグメント(CarDetailsFragment)を持つプロジェクト構造の例です

私たちの目標は、これらのクラスを生成する方法を学ぶことです。
テンプレートのカスタマイズ
Android Studioでテンプレートを作成する方法については、
Fi5tの Total templatingに関する記事を
ご覧ください
。Moxyのテンプレートをプロジェクトに追加します。
- Githubまたはリンクからテンプレートをダウンロードします
- アーカイブの内容をANDROID_STUDIO_DIR / plugins / android / lib / templates / activityにコピーします
- 変更を有効にするには、Android Studioを再起動します。
テンプレートにすばやくアクセスできるようにホットキーを設定します。
- 設定->キーマップを開きます
- 検索ボックスに「Moxy」と入力します
- ショートカットを追加します(アクティビティにはAlt + A、フラグメントにはAlt + Fを使用します)

パターンを使用する
- ルートパッケージを選択し、Alt + Aを押します。
- 「アクティビティ名」フィールドに「MyFirstMoxyActivity」と入力します
残りのフィールドは自分で入力します。

次に、「パッケージ名」フィールドの空白をサブパッケージの名前に変更し、「終了」をクリックします。 クラスパックの準備ができました! Android Studioを更新すると、すべてのカスタムテンプレートが破棄される可能性があることに注意してください。 この場合、再度インポートする必要があります。
結果は何ですか
MVPの概念には、アプリケーションロジックをレイヤーに分割し、その結果、コードベースを増やすことが含まれます。 テンプレートとコード生成を使用すると、ボイラープレートが最大限に解放され、ランダムエラーから保護され、ビジネスロジックに集中できます。 ロボットにコードを書かせてください!
関連資料