ジジイの手習いで、JavaScriptを勉強中でございます。その動機は「結局、ブラウザベースRIAかよ」のようなこと。非ブラウザベースのリッチクライアントへの期待を失ってしまったんですね。短期的・現実的な策としては、Ajax的な手法によるRIAなのかなぁ、という気分。ただし、「短期的」が“1年”と“5年”ではえらい違いです。今のところ僕には、「短期的」の実際の期間はわかりません。
僕のJavaScript調査の結果は、「初心者でも使えてプログラマでも困惑するJavaScript 」などに書きました。これらの続きとして、「プログラマのためのJavaScript (*)」というタイトルで書こうかと予定してます。あくまで予定、気まぐれでモノグサな僕のことだから、……
“プログラマのための”というのは、C, C++, Java, C#など“普通の”プログラミング言語にある程度慣れていることを前提にする、ってことです。僕の個人的な体験では、JavaScriptの最初の印象は、「“普通の”プログラミング言語の常識が通用しない異様な言語」でした。動機がなければ放り出していたでしょうが、今回は上述の事情があったので、我慢して調べてみると、エキゾチックではあるけど、それなりの原理原則と機序(メカニズム)がチャントあるんだな、とわかりました。
で、JavaScriptに少しは好意的になったってわけ。で、「そんな悪いヤツではないよ」「そんな無茶苦茶なヤツではないよ」「やっぱり、少し変だけどね」てなことを紹介したいのです。ある程度親しみがもてるようになると、JavaScriptのエエカゲンさとトンデモさの案配が、かなり僕の気性<きしょう>にマッチすることも判明しました。「純粋関数型」とか「真性オブジェクト指向」とか「論理型パラダイムの王道」とか、そのてのタリバン的言動は生理的にダメ(つまり、吐き気をもよおす)なんだわ、僕。-- やっぱり、迎合と妥協と寛容と哀愁でしょ、人生は。
で、このエントリーは、以上に書いた序文(のようなもの)と目次を提供するハブエントリーとするつもり。目次はシリーズを書き進めるに従ってメンテナンスします。
●プログラマのためのJavaScript 目次(順次更新)
- 全般的なこと、注意事項など (場所取り、後から埋める)
- 融通無碍な型システム
- 参照について考えてみる
- オブジェクト構造
- コンパイル単位
- 関数オブジェクトの秘密
- プロトタイプ継承の正体
- オブジェクト生成の仕組み
- クラスがない?それがどうした!
- クラスもどきの継承もどき
- 継承についてもう少し
- 不思議な宣言と奇妙なスコープ
- クロージャ (あくまで予定)
- 関数とapply (あくまで予定)
- オブジェクト、関数、メソッド (あくまで予定)
●関連するエントリー(上から新しい順)
タクソノミー(日記エントリー分類用ブックマーク)のJavaScript関連としてまとめました。参照してください。