『基礎からわかるMDA』

3冊目。ここにきて、やっと技術書(というか技術解説書?)。

少し前、MDAに関するWebの記事を読んでいて、MDAの背景知識と基礎知識が自分に足りないことに気づきました。最低限、MDAの記事で出てくる言葉の意味やトピックの文脈くらいは追えるようになりたいと思い、あわてて読みました。

正直、第4章の後半で脱落。ECoreモデルの説明のあたり。メタメタクラスインスタンスメタクラスの…えーと? みたいな。ついていけん。

でも、ずっと持っていた疑問に対して、回答を得られたのがよかった。「コードの自動生成なんてそんな上手くできるの?」とか、「実装と切り離したモデルを作っておけば、実装が変わっても大丈夫、なんてほんまかいな」とか、そういうドシロートが持つ疑問に、著者の説明は丁寧に答えてくれている…ような気がする。要は、「原理的にはできる」けど、「前提条件が厳しい」らしいということは分かった。

大学のとき、研究室の先輩が、JavaC#(だったかC++だったか…)の自動変換システムを卒論テーマにしようとして、教授に止められていましたが、この本を読んで、なるほど、そりゃ難しいわな、と少し理解できました。最初から上位概念でモデリングしておいて、言語に落としていくならともかく、逆は難しいんだね。

あと、第5章の事例の話が、具体的で面白かった。富士通すごい。

勉強になりました。この次に読めばいいMDA本って何なんだろう……。