Dartでのコード生成。 パート1.基本

プログラマーが怠zyであることは非常に良いことであることが知られています。 同じことを何度も繰り返したいと思う人はいません。 これは退屈で退屈で、まったく創造的ではありません。 同じアクションを繰り返して、私たちはしばしば間違いを犯しますが、幸いなことに、同様のタスクを実行するのに本当に優れた、効果的な人がいます。 そして、これらはコンピューターです!


https://yougottobekidding.wordpress.com/2012/02/18/geeks-and-repetitive-tasks/


今日、 コード生成は最短時間でジョブを実行する機能です。 基本的な考え方は単純です。何度も何度も記述しなければならないコードの同じ面倒なセクションでパターンを見つけ、生成用のツールを作成して実行し、魔法がどのように発生するかを確認します。


Android開発の世界では、このようなツールはすべての開発者によく知られています。 これは、レトロフィット、ダガー、ルームです。 Dartはどうですか? さらに重要な質問:コード生成用の独自のツールを作成するには何が必要ですか?


Dartとコード生成:手頃な価格のツール


コード生成ツールを作成するには、次の2つのパッケージが必要です。



source_gen


このパッケージは、コードを生成するための便利なAPIを提供します。 これは、 analyzerbuildなどの低レベルのDartパッケージの抽象化です。 このパッケージの使用はオプションですが、多くの困難を軽減できます。


source_genは、 Visitorパターンに従う2つの抽象ジェネレータークラスを提供します。



また、 Builderを構成する必要があります。これは、ジェネレーターのラッパーになります。 次の3つのオプションがあります。



build_runner


このツールを使用すると、開発段階でジェネレーターを実行できます。 コマンドラインから呼び出すことができます:


 pub run build_runner <command> 

<command>代わりは<command>とおりです。



source_gen機能するためには、コードジェネレーターの構成の詳細を示すbuil.yamlファイルも作成する必要があります。


Dartコード生成を使用する


コード生成は、Dartの多くの有名なライブラリで使用されています。



もっと...


2番目の部分では、注釈とコード生成を使用して、アプリケーション内のすべてのTODOを追跡するTODOを示します。



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


All Articles