あどけない話

Internet technologies

2007-01-01から1年間の記事一覧

JavaScript でデザインパターン

以下は株式会社ネットスプリングのニュースレター NSquest No. 4 に寄稿した記事です。JavaScript に対するデザインパターンの議論を始めるにあたり、同社の許可を得て、このブログに転載します。 オブジェクト指向と JavaScript もし、プログラマを3つに分…

Firemacs 2.4 のリリース

Firemacs 2.4 のリリースを申請しました。承認されるとアドオンの「更新を確認」でインストールできるようになります。今回、ユーザに見える機能は1つだけです。 C-n/C-p でフォームを渡り歩く機能(Walk Form)を無効にできるようにした 内部はデザイン・パタ…

prototype.js の Ajax

prototype.js 1.6 がリリースされましたね。今日は、Ajax クラスのお話です。 prototype.js を利用しない場合 prototype.js を利用しないで、XMLHttpRequest オブジェクトを非同期に利用する場合、典型的には以下のようなコードになります。この JavaScript …

Leopard

Mac

遅ればせながら Leopard にアップグレードしました。全体的な印象としては、見た目がさらにおしゃれになったにも関わらず、動作は軽快になりました。偉いなぁ。 Spaces これで VirtueDesktop が不要になりました。昔、Epose を使うのが Mac 流、仮想デスクト…

Adobe Max Japan 2007

Mozilla Japan に招待状を頂きましたので、Adobe Max Japan 2007 に行ってきました。Tamarin の話が目的ですが、その他 3 つのセッションにも参加しました。 ActionScript 3.0 はじめの一歩 (野中文雄) ActionScript で動画を作っている人、特に絵は得意だが…

JavaScript で setter/getter

鶏肋(けいろく)。文字通りに取れば、鶏の肋骨という意味。三国志演義という「フィクション」の中で、曹操は悪役として登場します。多くの人は演義を多少なりとも知っているものですが、正史は読まないので、曹操に悪いイメージを持っていることでしょう。中…

JSONP

今日は、JSONP のお話です。昨日の JSON の話を読んでいない人は、まずそちらから読んで下さいね。JSONP は JSON with Padding の略称であり、 Bob Ippolito さんがRemote JSON - JSONPという記事の中で提唱しました。ここでいう Padding とは、JSON データ…

JSON

JSONP とは一体何か教えてと言う友達がいるので、まず JSON から説明したいと思います。(その友達は、JSON と JSONP の区別がついていませんでした。。。)JSON は、偉大なる Crockford先生が RFC 4627で定めた JavaScript 用のデータ形式です。Web サーバと…

JavaScript Lint

これまで、JavaScript の構文チェックには JSLint を使ってきました。かなり強力なんですが、JavaScript で書かれているためブラウザー越しに使わなければならない、そして速度が遅いという問題がありました。コマンドラインから使える構文チェッカとしては …

JavaScript とλ式

amachangさんの講演資料を観ていて、「ラムダ式も出来る」というページがありました。これに触発されて、少し書いてみます。amachang さんが挙げていらっしゃる例は「λx.x」で、JavaScript で書くとこうなります。 function(x) { return x; } とても面白い話…

King Lines

台風で外岩に行けないので、家にいます。とりあえず、車で T WALL に乗り付け、観たかった King Lines を買ってきました。まだ観ていない人は、ぜひクリップを観て下さい。そうです。DWS(Deep Water Solo) で、アーチのブランクセクションを 2m ランジするや…

クロージャ

JavaScript とλ式の関係について書こうと思ったのですが、その前にクロージャについてお話しする必要があることに気付きました。僕が最初にクロージャという言葉を知ったのは、大学の学部生のときです。Lisp の勉強をしていて出てきたのです。でも、まったく…

オブジェクト指向言語の文法比較

用語の揺れ まずは用語の揺れから: 僕の用語 インスタンス変数 インスタンス関数 クラス変数 クラス関数 JavaScript インスタンス属性 インスタンス・メソッド クラス属性 クラス・メソッド Java インスタンス・フィールド インスタンス・メソッド クラス・…

prototype.js 1.6 のクラス定義

prototype.js は 1.6 からサブクラスの定義が簡単になりました。使い方はチュートリアルを読んで下さい。ここでは、ソースを読んでみることにします。 Classオブジェクト Classというオブジェクトの定義は、以下のようになっています。 var Class = { create…

僕のJavaScriptスタイル

たくさん JavaScript のコードを書いてみて、ようやく自分なりのスタイルが確立されようとしているので、記しておきます。なお、クラスの定義には、prototype.js 1.6 系を使います。 Crockford先生のおしえ まず大前提として、Crockford先生のおしえをなるべ…

明日に向かってプログラめ

ブログを始めました。よろしくお願いします。どこのブログにしようかと迷ったんですが、 JavaScript の議論をしたいのが動機なので、 JavaScript の達人たちが集まっていそうな「はてな」にします。今日、「明日に向かってプログラめ」で紹介されましたので、…