Amon2 と JavaScript
こんにちは!tokuhirom です!
Ark アドベントカレンダーをやるということなので、Amon2 アドベントカレンダーもやろうかとおもいます。
しかし、こちらはあんなにしっかりしたものをかく余裕がないので、ぺろーっとかくかんじにしようかとおもいます。
初日からネタがつきたので Amon2 と JavaScript の話をかこうかとおもいます。あまりこのへんかいたことなかったですよね。
現代の Web Application においては、JS をつかわないことはほとんどないといっても過言ではないでしょう。
ある程度の規模のウェブアプリケーションでは、JS が必須となっております。
そこで Amon2 では JS のサポートをしっかりやっていきたいとかんがえているわけです。
まあ、JS のサポートといっても、jQuery のコードを Amon2 にバンドルしておくとかそういった程度のことなわけですけど。
そういったレベルのことをキチッ、キチッとやっていくことが framework においては重要じゃないかな、とおもっているなうです。
僕がかんがえるに、「Web Application Framework は中心的関心事に集中させるためのもの」なので、中心的関心事に集中することをさまたげる要因はすべて排除していきたい所存なのであります。
Why jQuery?
いや、とくに他に選択肢ないし。。 やはり基礎となるライブラリはユーザー数がおおくないと、エッジケースでのバグがあったりしそうでこわいですよね。
Zepto とかもあるけど、まあ jQuery がおもくてこまっているということもとくにないので、いいかなと。
prototype.js とか MooTools とかも最近はつかってる人みないですしね。
なんで添付してるの?なんで Google Ajax API じゃないの?
Google の CDN とかつかうようにしておけば別に jQuery を添付する必要はないんですが、オフラインで開発しようとおもったときにめんどくさいので、標準添付しております。
他のライブラリは添付しないの?
実は Twitter の Bootstrap についているスクリプトをいくつかバンドルしてあります。
このへんにつかいかたのってるので参照してください。
今後の予定は?
よくつかうものについて標準添付したいなとおもっています。毎度さがすのめんどくさいんです。
具体的には以下のあたりのものをそろえていきたいな、とかんがえています。
- sprintf
- Date.prototype.strftime
- JS 用のテンプレートエンジン
- Function.prototype.bind とか ES5 系のやつ
現在ライブラリの選定などをおこなっていて、だいたいきまりつつあるんで、作業がおわったらリリースされる予定です。
JS のライブラリとかは、セットアップスクリプトの範疇なのでちょいちょい仕様かえてもいいというところで、しばらくはちょっとずつ調整がはいるかとはおもいますけれど。
まとめ
しょっぱなから Perl 関係なかった!