ねこ丸です。
機械伯爵 writes:
> > 継承はともかく、普通のクラスと同じようなメリットがあるような気がしま
> > すけど。名前空間としてだけ使うのでも意味はありますし。
>
> 普通のクラス/オブジェクトのメリットって言うと、メッセージ式による
> 評価式の見易さとか、多態性でしょうか。
>
> 確かに一個一個手作りしてオブジェクトを作るのはしんどいですが、多態性には
> 対応できるでしょうし、見易さも、ある面ではそのとおりです。
いやいや。ちゃんと作ってあれば
new Class()
の書式でメモリの許す限り同じ型のオブジェクトをぼこぼこ作れます。何の
苦労も要りません。プロトタイプベースみたいなもんですから。だから書いた
んですよ。コンストラクタと prototype の扱いだけ気をつけてね、と。それも
特別難しくはありません。ただ、昔の JavaScript 本や解説サイトがそこを無
視していたのか分かっていなかったのか、そういう説明のなされる機会がなかっ
たのは事実ですけど。
> 長い長い名前空間のネストも、パッケージを提供する側からすれば、非常に使い
> 易いんでしょうね。
そういう作法で書いてあるだけなのでは? 気に入らなければ var で別な名
前に代入してやるだけで好きな名前でアクセスできますし。
コンストラクタを使わないで済ませちゃうと長々と書かなきゃいけないので
面倒になりますが、それはそういう方法を選択した結果ですし。(そういう方
法しか知らなかったのなら少しかわいそうですが。)
> JavaScriptって、自作のモジュールをJavaScriptで記述して、取り込めました
> っけ?
ここでも以前書いているんですけど、Ecmascript 自身にはそういう機能はあ
りません。それはプラットフォームが提供する機能になります。ブラウザで動
くのであれば <script> タグや XMLHttpRequest を使いますし、WSH でも独自
の XML で同じように <script> を使います。Rhino には load() ってのがあり
ますね。
統一されていない、という不満は分かりますが、だからこそいろんなプラッ
トフォームで動くという大きなメリットもあるわけで、痛し痒しですね。
# 個人的には以前も書きましたが、Hash オブジェクトをきちっと定義して便利
# なメソッドを用意しておいたほしかったという不満は大きいです。
> JavaScriptが熱いというのは初めて聞きました(いや、そーいや電脳CBでも
> そんな言葉を聴いたような気が……)が、その熱さが実感できるサイトってどこ
> でしょうか?
えー。はてなとか?(笑)
そう言われるとなんでしょうねぇ。自分はただ気になったブログを繋げて行っ
たらいっときみんなが JavaScript の話をしていたとか、まぁ Ajax のブーム
もあったでしょうけど、そこで JavaScript の面白さに気づいた人は少なから
ず居るはずです。ソーシャルブックマークで JavaScript を検索してみるとか?
# 世の中的には Haskell ブームの方がでかかった、なんてことないよな。
--
ねこ丸%まぁそんなに大物は書いたことないんだけど