メタプログラミングで生産性を上げる

メタプログラミングをすると生産性が上がる。 メタプログラミングには様々な定義があるが、ここでは広めに "無駄なコーディングや手作業を減らす手法" としておく。

以下に、実務 (主に Web のフロントエンド開発) に役立つメタプログラミングの例をいくつか挙げる。

開発全般におけるメタプログラミング

  • 設定ファイルを作る
  • ビジネスロジックを分離する
  • テスト用のツールを書く
  • ビルド用のツールを書く
  • ミニ言語 (DSL) を実装する
  • コードジェネレータを書く
  • 実装を人に頼むための資料を作る
  • 実装しないための口実を考える

JavaScript におけるメタプログラミングのリソース

書籍では、The Art & Science of JavaScript に、Dan Webb によるメタプログラミングの記事がある。DSL の実装方法を、コードを交えて解説している。