JavaScriptコードの解析、コーディングをしていたら、なんとなく違和感みたいなものが湧いてきた。
かゆいところに手が届かないような物足りなさ感、スクリプト故の自由度、
まあ、これらは慣れればいいけど、一番面倒な部分はブラウザ間での互換性の無さ。IEvsその他ブラウザという構図。シェア競争ということではなくて、コード互換性の意味ね。
W3Cという標準化機構の決めたことをIEが守っていないこと原因で、コードを書く人間からしたら迷惑この上ない。IEとその他ブラウザについてコードを分けなくてはならないからだ。
(その他ブラウザ間でも違いはあるだろうけどIEはひどすぎる)
慣れてきたら自然と分けてコーディングできるようになるんだろうけど、わたしの今の状態ではそうもいかない。
そこで見つけたのがJavaScriptライブラリ。
通常のJavaScriptに一皮被して、足りないところを補完してくれる。
オブジェクト指向スクリプトとして足りないところ、機能の補完、ブラウザ間のコードの違いの吸収、などなど語り尽くせない。
ブラウザ間で同じ動きをするのに違う名前がついているものには、上に一枚被せて一つの名前だけ覚えれば良いようになっている。
ライブラリにいくつかあって、その中の2トップが「Prototype」と「JQuery」だ。
どちらを選択するか、それが問題だ。
JQueryはPrototypeを参考に作られた後発だし、バージョンアップも頻繁で最近の更新でかなり軽くなっているらしい。
さあどちらにするか?
わたしの判断としては初学なので、なにより学習の容易性。
ネットでの紹介や学習サイトが多いとか、書籍が充実しているとか。
これらライブラリーについて調べてみるとほとんど無いと来ている。まだまだ日本ではメジャーでは無いらしい。
決めてになったのが、オライリーから解説書が出ているということ。
Prototype & script.aculo.us JavaScriptライブラリによるAjaxアプリケーション開発/Christophe Porteneuve

¥3,360
Amazon.co.jp
そうPrototypeに決まり
大好きなオライリー様の本だし。
JQueryも和書は出ているけど、どうやらリファレンスらしくて初学には向かないと判断。
読み物系の解説書が出ている方を選びました。
これは言語系のPrototypeと、そこから操るUI(ユーザーインターフェース)系のscript.aculo.us(スクリプタキュラスと読むらしい)の両方を扱っている。
UIはWebページに特殊効果を与えるものね。要素のドラッグとかエフェクトとかを簡単に作成できるらしい。
この本、まず最初の章で初学者はつまづく。
説明も無くいきなり初見のコードが出てきて「これがPrototypeだ、どうだ。凄いだろう」と自慢される。
もちろん読めるわけがないのだが、これでいきなり諦めてしまう人も多いのでは無いだろうか。
この本は翻訳本なのだが、これは海外の本ではよくあるパターンのようだ。
前にPerlの本を読んだときもそうだったのを思い出した。
1章を飛ばして2章から読み進めることをお勧めします。
内容については、Prototypeについてはもちろん、JavaScript自体のロジックにも再発見がある。中級者以上でも役に立つんじゃないかと思う。
Rubyの仕様が参考になっているんだったかな?他の「高級」なスクリプトの仕様に触れられる点でもおすすめ。言葉は聞いたことあるけどハッシュなんて初めて扱いました。
Prototypeについては、確かにJavaScriptに多くの機能と利便性を追加してくれる。
でもこれによって速度に問題が出たりもあるかもしれない。でも個人で書く規模のコードぐらいで気にするほどのものなのかどうか。それはこれからの実践で分かってくるんだと思う。
今の時点でひとつだけ困っていることがある。
Prototype(prototype.js)のファイルサイズは120KBほどなのだけど、IEでの読み込みが異常に遅くなってしまう。キャッシュが効いているからなのかIEを起動して最初の読み込み時だけ。
毎回16秒ぐらいしてからloadが起動される。その間IEはフリーズしたような状態になる。
これはIEのみの現象。他のメジャーなブラウザでは発生していない。
これだけはなんとかしてほしい。IEだけに致命的だよね。
諸先輩方、対策があったら教えてくださいませ。
一応JQueryの書籍を上げておくとこれね。
jQueryで作る Ajaxアプリケーション/沖林 正紀

¥2,919
Amazon.co.jp
これはV1.2用の本だけど、今の最新はV1.3らしい。
Prototypeもそうだけど、バージョンが上がると互換性が無くなることが多いらしいのでご注意ください。
かゆいところに手が届かないような物足りなさ感、スクリプト故の自由度、
まあ、これらは慣れればいいけど、一番面倒な部分はブラウザ間での互換性の無さ。IEvsその他ブラウザという構図。シェア競争ということではなくて、コード互換性の意味ね。
W3Cという標準化機構の決めたことをIEが守っていないこと原因で、コードを書く人間からしたら迷惑この上ない。IEとその他ブラウザについてコードを分けなくてはならないからだ。
(その他ブラウザ間でも違いはあるだろうけどIEはひどすぎる)
慣れてきたら自然と分けてコーディングできるようになるんだろうけど、わたしの今の状態ではそうもいかない。
そこで見つけたのがJavaScriptライブラリ。
通常のJavaScriptに一皮被して、足りないところを補完してくれる。
オブジェクト指向スクリプトとして足りないところ、機能の補完、ブラウザ間のコードの違いの吸収、などなど語り尽くせない。
ブラウザ間で同じ動きをするのに違う名前がついているものには、上に一枚被せて一つの名前だけ覚えれば良いようになっている。
ライブラリにいくつかあって、その中の2トップが「Prototype」と「JQuery」だ。
どちらを選択するか、それが問題だ。
JQueryはPrototypeを参考に作られた後発だし、バージョンアップも頻繁で最近の更新でかなり軽くなっているらしい。
さあどちらにするか?
わたしの判断としては初学なので、なにより学習の容易性。
ネットでの紹介や学習サイトが多いとか、書籍が充実しているとか。
これらライブラリーについて調べてみるとほとんど無いと来ている。まだまだ日本ではメジャーでは無いらしい。
決めてになったのが、オライリーから解説書が出ているということ。
Prototype & script.aculo.us JavaScriptライブラリによるAjaxアプリケーション開発/Christophe Porteneuve

¥3,360
Amazon.co.jp
そうPrototypeに決まり

大好きなオライリー様の本だし。
JQueryも和書は出ているけど、どうやらリファレンスらしくて初学には向かないと判断。
読み物系の解説書が出ている方を選びました。
これは言語系のPrototypeと、そこから操るUI(ユーザーインターフェース)系のscript.aculo.us(スクリプタキュラスと読むらしい)の両方を扱っている。
UIはWebページに特殊効果を与えるものね。要素のドラッグとかエフェクトとかを簡単に作成できるらしい。
この本、まず最初の章で初学者はつまづく。
説明も無くいきなり初見のコードが出てきて「これがPrototypeだ、どうだ。凄いだろう」と自慢される。
もちろん読めるわけがないのだが、これでいきなり諦めてしまう人も多いのでは無いだろうか。
この本は翻訳本なのだが、これは海外の本ではよくあるパターンのようだ。
前にPerlの本を読んだときもそうだったのを思い出した。
1章を飛ばして2章から読み進めることをお勧めします。
内容については、Prototypeについてはもちろん、JavaScript自体のロジックにも再発見がある。中級者以上でも役に立つんじゃないかと思う。
Rubyの仕様が参考になっているんだったかな?他の「高級」なスクリプトの仕様に触れられる点でもおすすめ。言葉は聞いたことあるけどハッシュなんて初めて扱いました。
Prototypeについては、確かにJavaScriptに多くの機能と利便性を追加してくれる。
でもこれによって速度に問題が出たりもあるかもしれない。でも個人で書く規模のコードぐらいで気にするほどのものなのかどうか。それはこれからの実践で分かってくるんだと思う。
今の時点でひとつだけ困っていることがある。
Prototype(prototype.js)のファイルサイズは120KBほどなのだけど、IEでの読み込みが異常に遅くなってしまう。キャッシュが効いているからなのかIEを起動して最初の読み込み時だけ。
毎回16秒ぐらいしてからloadが起動される。その間IEはフリーズしたような状態になる。
これはIEのみの現象。他のメジャーなブラウザでは発生していない。
これだけはなんとかしてほしい。IEだけに致命的だよね。
諸先輩方、対策があったら教えてくださいませ。
一応JQueryの書籍を上げておくとこれね。
jQueryで作る Ajaxアプリケーション/沖林 正紀

¥2,919
Amazon.co.jp
これはV1.2用の本だけど、今の最新はV1.3らしい。
Prototypeもそうだけど、バージョンが上がると互換性が無くなることが多いらしいのでご注意ください。