Bulknews::Subtech RSSフィード

2006/05/10 (水)

疎結合? 22:18  疎結合? - Bulknews::Subtech を含むブックマーク はてなブックマーク -  疎結合? - Bulknews::Subtech

http://www.goodpic.com/mt/archives2/2006/05/web_4.html

そのかわり、新しく何かサービスをつくる場合には、力を入れたい部分にフォーカスすれば、その他の部分は、ネットワーク上のどこかの疎結合モジュールが自動的に補ってくれる

そうなればユートピアなのかもしれないけど、そんな世界は当分こないような気もする。

フィードアグリゲーションとリミックスという限定されたドメインにおいて、Plagger::Plugin というある意味密結合したモジュールによってその世界を実現してしまうのが Plagger

Plagger の P は Pluggable でもあるけど、Practical でもある。ということにしておこう。

V と C 18:01  V と C - Bulknews::Subtech を含むブックマーク はてなブックマーク -  V と C - Bulknews::Subtech

Cの実装はVに制約される。当たり前じゃん。Controllerからどんな変数がわたってくるかわからずに、テンプレートはかけないよ。

[Plagger] Notifier Widget 16:53  [Plagger] Notifier Widget - Bulknews::Subtech を含むブックマーク はてなブックマーク -  [Plagger] Notifier Widget - Bulknews::Subtech

f:id:miyagawa:20060510165331p:image

[Plagger] Filter::2chRSSContent 15:04  [Plagger] Filter::2chRSSContent - Bulknews::Subtech を含むブックマーク はてなブックマーク -  [Plagger] Filter::2chRSSContent - Bulknews::Subtech

f:id:miyagawa:20060510150318g:image

http://rss.s2ch.net/ には dc:date とかないので、 item/description の先頭にエンコードされてるやつをとってきて date と author (id:XXXXXXX) をセットするフィルタ。r695と696で。

Web API と MVC 14:11  Web API と MVC - Bulknews::Subtech を含むブックマーク はてなブックマーク -  Web API と MVC - Bulknews::Subtech

つまり、僕はフレームワークの話はしていない。API やプロトコルを共通化したらUIが再利用できますよ~とか、そういう話でもない。

Web API のアーキテクチャの話をしている。

http://blog.bulknews.net/mt/archives/001854.html

naoya さんはこの記事に 「デスクトップアプリケーションが V で API が C という考え方。(API は C というか M だと思うけど。)」 とコメントしていて面白い。これは API を利用するサードパーティ から(しかもアーキテクチャではなく実装サイドから)見た意見なのだと思います。たとえば、amazlet の実装の中では Amazon Web Service は Model となる。

ただ、アーキテクチャという視点では、iTMS を例にとれば、iTMS のデータベースは Model, プロトコルが Controller で、iTunes の UI が View というのはしっくりきます。いろんな視点で各所に MVC 的な役割分担が見えてくるのも興味深い。

この Web API と MVC という考えに戻る。開発ローカルなMVCじゃなくて、全体のアーキテクチャとしてのMVCね。

いまhipなマッシュアップサイト、ってのはMVC における V の実装だ。複数のサイト(Model) を API という Controller でくっつけて、それぞれ違った View としてサードパーティのサイトがでてくる。

LDR ハックが画期的なのは、デベロッパーがM+Cを利用してVを作るんじゃなく、Vを利用してCを実装することで、Mは自分の好きなものを使えるってこと。LDR のサービスが提供しているイカした View を利用させてもらうわけ。もちろん、Ajax (XMLHttpRequest) と GM があるからこれができる。Controller は LDR API を再実装、Model は Plagger でとってこれるものならなんでもいい。

もちろん、C はVの制約を受ける。この例でいえば LDR API を実装するのは実装者の仕事。いかしたVがあっても、それぞれに対してM用のCを実装しなきゃいけない。んで、それPlaggerでできるよ。ってわけだ。

hogawahogawa2006/05/10 21:30>Cの実装はVに制約される。当たり前じゃん。
て、そりゃそうさ!宮川さんが自分で書いてることを言い換えただけなんだからさ。「M+C→V」の時とは逆の依存関係があるって。