
JavaScriptでできること・できないこと
株式会社フラッツ
天方貴久
2009/4/20
さまざまなプログラミング言語がありますが、プログラミングそのものに触れてみたいと思うならJavaScriptをお勧めします。Webブラウザとメモ帳があれば、本格的なプログラミングに挑戦できるのです(編集部)
プログラミングを学びたいと思ったら
- - PR -
皆さんは、JavaScriptというと何を思い浮かべるでしょうか。
Webで動的なユーザーインターフェイスを実現するための技術でしょうか。それとも、オブジェクト指向のスクリプティング言語でしょうか。JavaScriptというキーワードを聞いたことがある程度という方もいるでしょう。
JavaScriptは現在多くのWebブラウザに搭載され、さまざまな場面でWebの中核技術を支えているスクリプティング言語です。
本連載は、プログラミングを初めて学ぶ人を対象にしたJavaScriptの入門記事です。特に次のような方のために分かりやすく解説を行っていきます。
- いままでプログラミングを学んだことがない人
- 数あるプログラミング言語の中から最初となる言語を探している人
- JavaScriptの基本的な文法を学びたい人
逆に、JavaScriptを使っていますぐにWebアプリケーションを作成したい方にはお勧めできないかもしれません。しかし、Webアプリケーションを構築する際に、JavaScriptの基本的な知識も身に付けたいということであれば、本連載が役に立つでしょう。
プログラミングを初めて学ぶ人にとってJavaScriptの魅力の1つは、最近のWebブラウザを利用できる環境があれば、プログラミングに必要な最低限の環境を比較的容易に準備できるということです。その気になれば、テキストエディタとWebブラウザを用意するだけでプログラミング言語を学べます。
それでは早速、JavaScriptというプログラミング言語がどのようなものなのかから見ていきましょう。
JavaScriptは、Webコンテンツに動きを与えた
JavaScriptの登場以前、Webブラウザは文章や画像などの静的なWebコンテンツしか扱えませんでした。1995年、Netscapeのブレンダン・アイク(Brendan Eich)は、Webコンテンツを動的に扱うためのスクリプト言語としてLiveScriptを発表し、Netscape Navigator 2.0というWebブラウザに搭載しました。
NetscapeはJavaを開発していたサン・マイクロシステムズと技術提携を行い、LiveScriptはJavaScriptという名前に変更されました。勘違いされやすいのですが、JavaScriptとJavaは言語としてはそれほど似ていません。JavaScriptという名前は、「Javaよりも初心者やデザイナーが容易に利用できる言語である」という当時のマーケティング的な思惑から付けられたのです。
その後、JavaScriptはマイクロソフトのInternet Explorer 3.0にも搭載され、1997年には国際的な標準化団体であるEcma International(ECMA)によって標準化されました。ECMA標準ではECMAScriptという正式な名称がありますが、たいていJavaScriptという名称で呼ばれます。ECMAScriptという用語は、標準に準拠しているかいないかといった話をする場合にのみ使われることが多いようです。
JavaScriptを使うことで表現力が向上する
JavaScriptが搭載される以前のWebブラウザでは、URIを直接指定するか、ハイパーリンクをクリックした時にのみ、Webサーバと通信して新しいコンテンツを取得します。また、新しいコンテンツを取得した場合は、Webブラウザに表示されているコンテンツ全体が新しいものに置き換わります。


この仕組みは、非常に単純で理解しやすいのですが、Webアプリケーションを作る場合には、デスクトップアプリケーションに比べて、必ずコンテンツ全体が置き換わってしまうという制約がありました。
これに対してJavaScriptを利用すると、Webサーバと通信しなくてもコンテンツを更新することができます。このように、クライアントマシンで利用されるJavaScriptをクライアントサイドJavaScriptと呼びます。

また、ユーザーのマウス操作などと連動して、コンテンツ全体を更新することなくWebサーバと通信をして、コンテンツの一部を置き換えることも可能になります。このような仕組みのことを特にAjax(エイジャックス:Asynchronous JavaScript+XML)と呼び、近年では多くのWebアプリケーションでこの機能が利用されるようになりました。

Ajaxを利用したWebアプリケーションの代表的なものとしては、GoogleのGoogleマップやGmailなどが挙げられます。これらのアプリケーションは、JavaScriptの力を得て、デスクトップアプリケーションのような優れた操作性や表現力を持つに至りました。
このようなデスクトップアプリケーションと比べても遜色ない、優れた操作性や表現力を持つWebアプリケーションをRIA(Rich Internet Applications)と呼ぶことがあります。RIAはJavaScriptだけでなく、FlashやSilverlight、Javaアプレットなどでも実現できますが、RIAという概念が多くの人に認識されるのにJavaScriptは欠かせない役割を果たしたといえるでしょう。
本連載では、Ajaxについては触れませんが、JavaScript入門が終わったらぜひ挑戦してみてください。
| 関連リンク: | |
| 古くて新しいAjaxの真実を見極める http://www.atmarkit.co.jp/fwcr/special/ajax01/01.html |
|
| Ajax解体新書 http://www.atmarkit.co.jp/fwcr/special/ajax_kaitai01/01.html |
|
1/2 |
| Index | |
| JavaScriptでできること・できないこと | |
| Page1 プログラミングを学びたいと思ったら JavaScriptは、Webコンテンツに動きを与えた JavaScriptを使うことで表現力が向上する |
|
| Page2 クライアントサイドJavaScriptの制限 JavaScriptの利用シーン 早速JavaScriptプログラミング! document.writeメソッド−HTML文書への文の出力 |
|
| 初めてのJavaScriptプログラミング |
TechTargetジャパン
- 実例で学ぶRailsアプリのテスト方法 (2011/12/22)
具体的なWebアプリを例に簡単なテストを使ったリファクタリングについ
て解説する - Railsの人気テストフレームワーク6選! (2011/8/18)
今回からテストを使ったリファクタリングを解説する。まずはRailsで人
気のあるテストフレームワークをいくつか紹介する - ActiveRecordの更新系操作 (2011/6/27)
Railsのモデル層を担当するActiveRecordを使った登録、更新、削除
など、更新系の機能を中心に見ていきます - 実例アプリで学ぶ“Railsらしさ”の基礎 (2011/5/26)
Ruby on Railsで書かれた実例アプリを取り上げて、初心者が陥りがちなコードの書き方を指摘します。より「Railsらしい」コードとは?
|
|
