渋日記@shibu.jp 渋川よしきの日記です。ソフトウェア開発とか、ライフハックを中心に記事を書いていきます。 By Jeremy Brooks under CC BY-NC 先日、cURL as DSLというツールを公開しました。その後、何度も同じような質問を受けたりしたので、ブログにまとめてみます。 なぜこのツールを作ったの? RESTfulというものは大分一般的になってきました。HTTPでAPIを提供というのもよく見かけます。ですが、僕はこのRESTfulというやつが嫌いです。 GETのURLをシェアすればいつでも同じページがある(変な状態を持たない)、みたいな思想はいいんですが、HTTPのAPIはどうも使いにくい。ドキュメントのHTTPのサンプルを見て、ドキュメントをじっくり読み込んで、パラメータをJSONやらXMLで組み立ててボディに乗っけて(しかも大抵パラメータがアホのように
少し前になりますが、DSL読書会@JavaEE勉強会でCode GenerationとLanguage Workbenchesのまとめを発表したので、ここにも載せておきます。 Google Docsで作ってみたのですが、Slide Shareと勝手が違っていて、埋め込んだ状態でうまく閲覧できそうにないです。まともに見たい人は、最大化ボタンをクリックするのが良いかと思います。 僕の担当分はDSL本の最後の部分で、この資料はそれまでの部分のまとめが他の人から発表されている前提で作っています。これだけ見てもあまりわからないかもしれませんので、字だけになりますが少しだけ補足しておきます(Fowler DSLのエッセンスにさらっと目を通しておかれると、少しは分かり良いかもしれません)。 DSL Overview DSL概念全体の中でCode Generationがどのような位置づけにあるかを俯瞰する
FowlerDSL本のAlternative Computational Modelを足がかりとして、ソフトウェアアーキテクチャにおけるDSLの役割について考察する。 導入 Martin Fowler氏はWeb版DSL本の中で、「DSLにおいて重要なのは、言語それ自体ではなく、DSLによって構築される意味モデル("Semantic Model")である」ということを繰り返し述べています(意味モデルについては、以前こちらのエントリで紹介しました)。その上で、この意味モデルが持ちうる、ある性質について「もう一つの処理モデル("Alternative Computational Models")」と題された章で説明されています。 ここで「もう一つの」("alternative")とされているのは、命令的な("imperative")処理に対する宣言的な("declarative")処理です。こう
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く