DSLもオブジェクト指向の歴史を追いかけている
平鍋さんのDSLの記事があったのでメモ。
【元ネタ】
マーチンファウラのDSL本をマインドマップにまとめてみた:An Agile Way:ITmedia オルタナティブ・ブログ
Hadoopの本質は分散I/Oにあり~クラウド時代の非同期処理: プログラマの思索
マーチンファウラーがDSLの本「Domain-Specific Languages (Addison-Wesley Signature Series (Fowler))」を昨年秋に出版していたらしい。
今思うと、UMLによるモデリングでOCLで書いていたビジネスロジックは、本来DSLで表現すべきものではないかと想像する。
ドメインモデルは型として表現できるが、ドメイン同士のリレーションや複雑な制約条件はUMLでもDOAでも表現しづらい。
OOAもモデル駆動開発(MDA)を志向して袋小路に入ったけれど、DSLで概念モデルを表現してプログラミングの一種にしてしまう発想は面白い。
プログラムにしてしまえば、実際にすぐ動かせるし、編集→コンパイル→実行という開発スタイルはAgileになりやすい。
ソフトウェア設計技法の歴史を振り返ると、下流工程の技術が上流工程を覆い尽くすパターンがとても多い。
オブジェクト指向がまさにその典型例だ。
Agileもオブジェクト指向の歴史をなぞらえるように、今まさに上流工程に乗り込んでいる。
DSLもそういう歴史の流れの一部なのかもしれない。
| 固定リンク
「モデリング」カテゴリの記事
- ストラテジストとプロジェクトマネージャの役割の違いは何なのかpart2~プロセスのレイヤと達成目標のレイヤが異なる(2023.02.18)
- UMTPモデリングフォーラムのパネル討論の感想(2022.11.29)
- Go言語でできることは何なのか(2022.11.06)
- クラウド上の開発がJavaに与えた影響は何なのか(2022.10.16)
- 「ソフトウェアアーキテクチャの基礎」本はアーキテクトが読むべき本だった(2022.09.18)
「ソフトウェア工学」カテゴリの記事
- ストラテジストとプロジェクトマネージャの役割の違いは何なのかpart2~プロセスのレイヤと達成目標のレイヤが異なる(2023.02.18)
- プロジェクト管理やソフトウェアアーキテクチャの問題の背後にはトレードオフが隠れているのではないか(2023.02.18)
- デブサミ2023の感想(2023.02.11)
- ChatGPTにEclipseでEclEmmaとJaCoCoからカバレッジを出力する方法を聞いた(2023.02.01)
- DDPは品質管理に役立つのか(2022.12.13)
「Agile」カテゴリの記事
- PM理論では課業志向の方が関係志向よりも生産性が高いことを主張しているのではないか(2023.01.22)
- 現代日本人の弱点はリーダーシップ不足と生産性が著しく低いこと、そしてリスク許容度が著しく低いことだ(2022.12.23)
- DDPは品質管理に役立つのか(2022.12.13)
- UMTPモデリングフォーラムのパネル討論の感想(2022.11.29)
- XPエクストリームプログラミングは偉大だ~時代がその設計思想に追いついた(2022.11.16)
コメント