もうスクリプト言語しか知らない小僧とは言わせない――JavaScriptを知る:1分ショートレビュー
「低級言語を扱う小僧め」――バイナリアンたちにこう笑われても涼しい顔でいられるよう、JavaScriptが持つすばらしい言語機能を3つほど紹介しよう。
ここで紹介する記事は、developerWorksの「境界を越える:JavaScriptの言語機能」です。
JavaScriptというプログラミング言語は一時期、貧弱な開発ツールや、HTMLページ用の文書オブジェクトモデルとして複雑で一貫性に欠けること、ブラウザによって実装が異なることなどが原因で、あざけりの対象となっていたことをご記憶の方も少なくないと思う。事実、JavaScriptをまったく知らなければ、Javaのサブセットや下位バージョンであるかのような印象を持つ方もおられるのではないだろうか。
だがしかし、JavaScriptの非同期通信を利用した技術にAjaxという名前がつけられたこともあり、この悩ましい言語は現在、Web 開発用に最も広く利用できるスクリプト言語としての地位を確立するに至っている。しかし、Ajaxに最も精通したあるエキスパートはこう挑戦的に言い放つ。「私たちは2011年までに、最新のアプリケーションを開発するための、よりよい機能を備えた言語としてJavaScriptを認識するようになるだろう」
そして彼は、JavaScriptプログラムは多くの場合、類似のJavaプログラムよりも 10 倍も濃いと主張し、それを実現する言語機能として「高階関数」「動的型付け」「柔軟なオブジェクトモデル」を示すのだが、それらの言語機能を分かりやすく紹介したのが本記事である。
変数型を扱う場合とまったく同じように容易に、概念的に関数を扱うことができる「高階関数」、ユーザーインタフェースの開発において、意味合いを劇的に変更しても、構文をわずかに変更するだけで、概念を素早く切り替えられる「動的型付け」、独自のオブジェクトを作成せず、アプリケーションを作成する際にプロトタイプを作成する独特の「オブジェクトモデル」。そのいずれもJavaScriptの魅力だが、分かりやすいサンプルコードを用いて簡潔明瞭に説明されている。
この記事を読んで、JavaScript 言語の強みと弱みを知れば、いつそれを使うべきか、使わずに避けるべきかを、より的確に判断できるようになるだろう。これを知れば、もうスクリプト言語しか知らない小僧とは言わせない。
参考になる記事一覧
上記記事を読まれた後に、おすすめしたい関連記事も以下に記しておこう。
関連記事
- developersLife〜開発者という生き方
- ファズテスト――シンプルだが強力なコードテスト手法
堅実なコードとは、一貫性と正常性が検証されていない外部データは決してプログラムに入力しないという原則を守るものである。プログラム内のバグの存在を実証できるファズテストは、論理的な人間には思いもよらないバグを見つけ出してくれるかもしれない。 - Webアプリケーションの開発手法で「早くてキレイ」はRuby on Railsか
「美しいが作るのに時間の掛かる」「汚いが早く作ることができる」――Webアプリケーションの開発手法としてあなたが選択したいのはどちらか? 答えはどちらでもない。Ruby on Railsはある考えに沿って進める限りにおいて「早くて美しい」開発手法を提供してくれるのだから。 - makeに踊らされないために――makeを思いどおりに動作させるためのヒントと秘訣
makeを支配するには、makefileの理解が欠かせない。暗黙のルールや予期せぬ変数置換に惑わされることのないよう、先人の残した幾つかの知恵を授けよう。 - XAMPPはJ2EEの競合に育つか?
最近、「XAMPP」という言葉を目にする機会が多くなった。Apache、MySQL、PHP、Perlなどをワンパッケージで利用できるソフトウェアスタックだが、開発環境としては非常に便利である。
関連リンク
Copyright © ITmedia, Inc. All Rights Reserved.