「ドメイン特化言語」を読んで | プログラマーとしての日記
- 「リファクタリング」や「PoEAA」など、歴史に残ると言っていい書籍を数多く出してきたマーチン・ファウラーの日本での新刊。
今回も歴史に残る価値のある本ですね。
ドメイン特化言語(DSL)は、ユーザーにでも読める簡易言語で、プログラマーによって比較的簡単に作られます。
これを使うことにより、ユーザーがプログラムのチェックができるようになり、コミュニケーションが進展するというもの。
まあCOBOLのころから目指していた理念ですが、年を追うごとにコンピューターは人間にやさしくなっているので、
そこら辺はどんどん進歩しています。
その最新版といったところ。
普通にテキストで書く言語を自由に設計する外部DSLのほかに、
ほかの言語の文法を拝借して、ライブラリで提供する内部DSLがあります。
ユーザーに読めるということは、プログラマーには非常に簡単に読めるということでもあります。
昨今のライブラリの設計時には、その呼び出しが非常に簡単に読めることが必要とされるので、
内部DSLの技術は一般的なライブラリ設計にも非常に役に立つようになっており、プログラマーには必須の技術と言っていいでしょう。
とはいえ、この本で解説されているのは普通のライブラリの話ではなく、
普通のライブラリとは一線を画した、
本当に素人でも読めるよう工夫を凝らしたライブラリの話のようです。
APIが特殊になるため、普通のライブラリとAPIは分けたほうがいいとのこと。
なるほど。
また外部DSLを作るための文法解析の話とかもあり、
全般的に大変興味深い内容となっています。
ドメイン特化言語を利用する人には大変役に立つ本ですし、
利用しない人にも応用次第で非常にためになる本ですね。
ドメイン特化言語 パターンで学ぶDSLのベストプラクティス46項目/ピアソン桐原

- ¥5,985
- Amazon.co.jp

