
いまさら聞けないリッチクライアント技術(2)
いまさら聞けないJavaScript入門
江原顕雄
2007/7/17
- - PR -
さて、今回取り上げるリッチクライアント技術は「JavaScript」です。このプログラミング言語は、皆さん何度も聞いたことがあると思います。
しかし、名前は知っていても、実際どんな言語でどんな特徴があるのか、JavaとJavaScriptは違うのか? Ajaxと関係があるの? ……と、もし上司や同僚から質問をされたらきちんと答えられますか? JavaScriptに関して何となくでしか分かってない人も、今回の記事を読めば、ばっちり答えることができますよ! それでは、見ていきましょう。
いまさらだけど、“JavaScript”って何?
JavaScriptは、WebブラウザNetscape Navigatorをリリースしていた、米Netscape Communicationsによって開発されました。
JavaScriptはWebブラウザ上で主に動作します。JavaScriptが誕生した当時、いまと違って、Webページはとても静的でした(文字と写真のみで動きがなかった)。閲覧者が文字のサイズを変更したり、クリックでデザインを変えたりするようなアクションやユーザーとの対話性を出すために、JavaScriptは作り出されました。
JavaScriptとよく似た名前のプログラミング言語が「Java」です。関連性があるかのように思えますが、まったく関係がありません。歴史的な因縁はあるのですが、それは後ほど解説しているので、そちらの方で見てくださいね。
じゃあ、“スクリプト言語”って何なの?
JavaScriptの使われるコンセプトはなんとなく分かりましたが、いったいどんなプログラミング言語なのか? その特徴について、見ていきましょう。
PC用語辞典やJavaScriptについて解説しているサイトでは、よく次のように説明しています。
| 「JavaScriptはスクリプト言語である」 |
では、スクリプト言語とは何でしょう? 通常プログラミング言語は、英単語や数字、記号を使って、「ソースコード」と呼ばれるプログラムの設計書を作成します。しかし、このテキスト形式のソースコードでは、PCは動いてくれません。
ソースコードの「コンパイル」という変換作業を経て、コンピュータが理解できるバイナリ形式の「ネイティブコード」「機械語」といわれる状態にしなければなりません。この形にして、初めてPC上でプログラムを実行できるのです。上記のような一連のやり方を「コンパイラ方式」といいます。
![]() |
| 図1 通常のプログラミングの流れ |
しかし、このやり方ではプログラムを変換するソフトやネイティブコードを動かすための環境がないとダメです。Webページに「動き」「変化」を出すのに、いろいろなソフトを用意しないといけないのでは、誰も利用しません。そこで、もっと手軽にプログラミングを利用するために使われたのが、「スクリプト言語」です。
■コンパイラ方式? インタープリタ方式?
スクリプト言語は台本(スクリプト)のように記述された、簡易なプログラミング言語全般を指します。
また、テキスト形式のソースコードをそのままプログラムのように実行できるのが特徴です。実際には、ソースコードをPCが理解する形に変換をしているのですが、自動的に変換作業が行われるので、ユーザーは何もしなくていいのです。このように、ソースコードをその場で順を追って解釈する形式を「インタープリタ方式」といいます。
スクリプト言語としては、今回の主役である「JavaScript」、CGIでおなじみの「Perl」や動的Webページ生成で活躍している「PHP」、Microsoft社が開発した「Visual Basic Script」などがあります。
![]() |
| 図2 スクリプト言語の流れ |
| 1/3 |
| INDEX | ||
| いまさら聞けないリッチクライアント技術(2) いまさら聞けないJavaScript入門 |
||
| Page1 いまさらだけど、“JavaScript”って何?/じゃあ、“スクリプト言語”って何なの? |
||
| Page2 JavaScriptで、どんなことができるの?/お手軽JavaScript体験 |
||
| Page3 聞くも涙、語るも涙の(?)JavaScript史/これからどうなる!? JavaScript |
||
いまさら聞けないリッチクライアント技術 バックナンバー
- 第1回 いまさら聞けないWeb2.0時代のXML入門
- 第2回 いまさら聞けないJavaScript入門
- 第3回 いまさら聞けない、“Ajax”とは何なのか?
- 第4回 いまさら聞けない“Web標準”、そしてXHTML+CSS
- 第5回 いまさら聞けない! FlashとActionScriptについて
- 第6回 “リッチクライアント”に至るまでの軌跡と現在(いま)
- 第7回 いまさら聞けないウィジェット/ガジェットで気分転換
- 第8回 いまさら聞けないActiveX&デジタル証明書入門
- 第9回 いまさら聞けないSVG、なぜ知られていないのか?
- 第10回 いまさら聞けない「マッシュアップ」超入門
- 第11回 いまさら聞けない「Webブラウザ」超入門
- 第12回 いまさら聞けない「Webブラウザ」超入門 後編
- 第13回 いまさら聞けない「SEO」で検索結果の最適化を学ぶ
- 第14回 いまさら聞けないオフラインWeb、スタンドアロン型とは
- 第15回 いまさら聞けない「Curl」入門(お菓子じゃない方)
- 第16回 開発現場のUIトラブルを解決!? 画面プロトタイプ入門
ホワイトペーパー(TechTargetジャパン)
- いまさら聞けないTwitter超入門−@IT記事も対応なう (2010/2/4)
Twitterは最近話題のつぶやきツール。基本的な使い方から、iPhoneアプリの使い方、RTの解説、4人のご意見番の活用例や感想まで - HTML5は開発者側の都合。ユーザーには関係ない (2010/2/2)
3つのレンダリングエンジンを載せている“国産”ブラウザベンダは、HTML5やWeb/ブラウザの進化について何を語るのか - テキスト・フォント周りをキレイに見せるCSS、13選! (2010/1/29)
無数にあるCSSのプロパティを大まかに分類し、1つずつ紹介していく本連載。初回は、テキスト・フォント周りについて - OpenGL ESが大変な3Dアプリ開発を楽にするUnity (2010/1/27)
iPhoneゲーム開発に必須のOpenGL ES。そのコーディングに手こずっている方に有用なツールを紹介し簡単なサンプルを作成します
|
|
スキルアップ/キャリアアップ(JOB@IT)
スポンサーからのお知らせ
お勧め求人情報

**先週の人気講座ランキング**
〜CCNA編〜
| ◆ | 企業の仮想化に足りない“発想”とは? 仮想化運用管理のキモは意外なところに! New! |
| ◆ | 操作もマニュアルも分かりやすい! ユーザー視点で開発されたPC管理ツール New! |
| ◆ | 仮想化すればコストは削減できるか? 仮想化に必要な「3つの視点」を解説する |

| ◆ | セキュリティを知り尽くす上野氏が登壇! @ITメールソリューションLive! in Tokyo |
| ◆ | 運用管理の課題を“2つの観点”から分析 ユーザー満足度の高い「仮想環境」とは? |
| ◆ | 世界に通用するストレージの作り方とは? 製品に込めた思いを富士通の開発者に聞く |

| ◆ | OSSで手間も時間も、障害も減った―― 「マピオンの事例」オープンソース活用法 |
| ◆ | 「ノートPCの持ち出し禁止」で大丈夫? 情報漏えいを防ぐ管理手法とインフラは? |
| ◆ | 1日の処理を1秒に――MySQLの達人が語る 「コスト削減」できるチューニング |

| ◆ | ドキュメント作成を自動化して、SEの作業 効率を大幅アップ! Visio 2007の魅力 |
| ◆ | 急速に広がるHyper-Vでのサーバ仮想化 そのベストプラクティスをデルが解説 |
| ◆ | @IT主催セミナーで語られた、「担当者に 求められるセキュリティ対策」をレポート |

| ◆ | @IT「Windows 7」 特設サイトオープン! 最新情報・移行ノウハウを公開しています |








