実践 prototype.js [1]

今話題(?)の prototype.js を使ってみました。


うれしいこと

  • Class.create(), extendは最高。
  • ある程度気軽にクラスを作れる。オブジェクト指向に慣れている人は生産性・コードの品質が上がる。(実際コードはコンパクトになったし、仕様追加時にもいい感じだった。)
  • 実はクラス関数も作れて便利(これはprototype.jsの機能ではない)


悲しいこと

  • Ajaxとの組み合わせでちょっと戸惑う。
    • インスタンス関数を、onreadystatechange ハンドラに登録した場合にいわゆるコールバック関数なので、this.xxx などのプロパティにその関数内からアクセスできるか微妙。(回避策がありアクセスできるがこれでよいのか?仕様的に不安。クロージャ?)
  • コードに文法ミスがあった際にエラーメッセージが分かりづらい。エラー箇所が prototype.js の中とかになったりする。
  • 同じ .js ファイルの中で宣言の順番に気を使う。後方参照できない(?)


今日書いたコードは、そのうち公開します。