ステロイドのMVP:ロボットにコードを作成させます

記事「Moxy-ひとつまみのAndroidでのMVPの実装」で、ライフサイクルの問題を克服し、Androidプロジェクトのコードをレイヤーに分割する方法について説明しました。 ただし、MVPでは(Moxyでのビューステートのスマートコード生成でも)大量の追加コードを作成する必要があります(プレゼンターを作成し、相互に接続されたクラスとインターフェイスを表示します)。 実際、ロボットがあなたのために仕事をするはずです! :) Moxyの下でAndroid Studioテンプレートをカスタマイズして、定型文をさらに削減するときが来ました。


プロジェクト構造


コード生成を開始するには、プロジェクト構造を修正する必要があります。


プレゼンター、ビュー、アクティビティ、およびフラグメントパッケージのコンテンツは、順番に論理モジュールに分割されます。 多くの場合、このようなモジュールはアプリケーションのセクション(イントロ、オファー、フィードなど)です。 以下は、2つのアクティビティ(CarActivityとHomeActivity)と1つのフラグメント(CarDetailsFragment)を持つプロジェクト構造の例です

画像

私たちの目標は、これらのクラスを生成する方法を学ぶことです。

テンプレートのカスタマイズ


Android Studioでテンプレートを作成する方法については、 Fi5tの Total templatingに関する記事をご覧ください

Moxyのテンプレートをプロジェクトに追加します。


テンプレートにすばやくアクセスできるようにホットキーを設定します。


画像

パターンを使用する



残りのフィールドは自分で入力します。

画像

次に、「パッケージ名」フィールドの空白をサブパッケージの名前に変更し、「終了」をクリックします。 クラスパックの準備ができました! Android Studioを更新すると、すべてのカスタムテンプレートが破棄される可能性があることに注意してください。 この場合、再度インポートする必要があります。

結果は何ですか


MVPの概念には、アプリケーションロジックをレイヤーに分割し、その結果、コードベースを増やすことが含まれます。 テンプレートとコード生成を使用すると、ボイラープレートが最大限に解放され、ランダムエラーから保護され、ビジネスロジックに集中できます。 ロボットにコードを書かせてください!

関連資料


Source: https://habr.com/ru/post/J305798/


All Articles