- 124 名前:デフォルトの名無しさん mailto:sage [2016/05/13(金) 22:06:05.08 ID:PxVJ9U+u.net]
- >>120
> EWM 否定したいわけではないが、君が言っているような「打ち出の小槌」なんてどこにもないんだよ。 低レベルAPIを規定して高レベルAPIを柔軟に構築というのは確かに出来る。 ただ、その高レベルAPIを「仕様として」リリースしたら、一般的にはもう削除は出来ないんだよ。 だから不要になった場合は、エミュレーションモードとして、動きはするがそれだけのもの(速くはない)として残すことになる。 VGAとかがまさにそう。今時のグラボもVGAは表示できないといけないので、この方法で残している。 ただエミュをするのなら、低レベルAPIによってではなく、実装側で高レベルAPIだけをエミュしたほうが簡単なんだよ。 それを低レベルAPIでエミュしろ、そうじゃないと駄目だ、ということになると、性能が引き出しづらくなる。 だから結局、低レベルAPIで高レベルAPIを構築というのは効率が悪くなる。多分頓挫する。 そのやり方はAPIではなく、ライブラリの粒度でやるべきなんだよ。 ライブラリってのは標準JavaScriptを低レベルAPIとして、中レベルAPIを構築しているわけだから。 例えばAppCache、もういらないとして、ブラウザ側で高レベルAPIだけをエミュするだけならまあ簡単だろう。 他の似た機能があれば、それと中身は差し替えて見た目だけエミュすることも可能だ。 (WebSQL->IndexedDBの場合とか) しかしそれを構築するために使用した低レベルAPI群があるとして、これらも不要になるわけだが、 それらを全部エミュしたままで残せということになると、結局手がつけられず、そのまま残すしかなくなる。 結果、ブラウザ側に「開かずの扉」的コードが累積していき、長期的に進化を妨げることになる。 こうならないためには、「将来的にも」不要にならないAPIだけを規定していくことが肝要。 これは低レベルAPIの方が難しいんだよ。
|

|