読者です 読者をやめる 読者になる 読者になる

ジェネレーティブプログラミング

book programming

ジェネレーティブプログラミング (IT Architects’Archive CLASSIC MODER)

ジェネレーティブプログラミング (IT Architects’Archive CLASSIC MODER)

  • 作者: クシシュトフ・チャルネッキ,ウールリシュ・W・アイセンアッカ,津田義史,今関剛,朝比奈勲
  • 出版社/メーカー: 翔泳社
  • 発売日: 2008/04/23
  • メディア: 大型本
  • 購入: 7人 クリック: 399回
  • この商品を含むブログ (45件) を見る

最近お仕事でフレームワークつくってるので、帯の「ソフトウェア再利用を、現実的な一歩として進めるために」という文句に惹かれて読んでみた。

分厚いわ、難しいわで大変だったけど、何とか読み終わった。翻訳はとても読みやすかったと思う。

  • ドメイン工学
    • このあたりは読んでて辛かった。
    • 水平とか垂直とかフィーチャリングとか何やねんと。たぶん半分も理解できてない・・・
  • ジェネリックプログラミング
  • アスペクト指向プログラミング
    • 今までは名前とおおよその概念しか知らなかったので勉強になった。
    • JavaだとAspectJとかあるけど、C++の場合は複数に分離したクラスをあとでガッチャンコして実現。
    • C#だと、拡張メソッドでアスペクト指向っぽいことができるのかなぁ?
  • C++による静的なメタプログラミング
    • C++のテンプレートは変態かw
    • 最初はテンプレートで条件分岐しているだけだったので、へーこんなこともできるのか、と読んでいたんだけど、だんだんとループを実現したりコードジェネレートしたりすごいことに。
    • 関数型言語的な考え方ですよね。
    • 仕事では絶対使わない/使えないだろうなぁ。
  • インテンショナルプログラミング
    • この本で紹介されている、ドメイン、アスペクト指向、メタプログラミングを使って実現している拡張可能な開発環境。
    • コードの意図性を高めることができる。
    • Microsoftが開発していたが、2000年に開発をやめてしまったとのこと。
    • 意図は分かるんだけど、ちょっと複雑過ぎる気がするな。
    • 「11.6 IPの背後にある哲学」は結構おもしろい。現状のプログラミング言語の問題を認識するためにも読むとよいかと。