
いまさら聞けないリッチクライアント技術(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ジャパン)
- 画像を美しく魅せる効果を加えるjQueryプラグイン3選 (2010/3/17)
2つ重ねて比較するBefore/After、部分ごとに切り替えるpanelGallery、ズーム/カーテンなどができるcycle - 現場の無駄な流血を止めるための「プロトタイプ」とは (2010/3/12)
サイトやWebアプリ/RIAの設計やデザインを効率良く進めるには、プロジェクト関係者の想定を一致させていくことが大事だが… - Flashを閃光のごとく高速化するための基礎知識 (2010/3/9)
Flash高速化のための基礎知識や実践的テクニックを紹介する連載。初回は“処理負荷”を調べる具体的な方法を解説します - Windows 7でどんだけ“おばか”なアプリが作れるの? (2010/3/4)
おばかの発想の源やアプリの作り方などについて、おばかアプリ選手権の歴戦の受賞者や、マイクロソフトの代表者に話を伺った。アイデアのご参考に
|
|
スキルアップ/キャリアアップ(JOB@IT)
スポンサーからのお知らせ
| 「いつかは壊れるサーバ」そんな故障に 迅速で安価に手軽に対応する方法とは? New! |
| 「特権ユーザー」の事件を防げ! 万能権限を持つユーザーの管理方法とは? New! |
| 仮想環境の構築とデータ保護の特効薬?! 実績と信頼性の高いパッケージで安心運用 |
| 仮想環境のバックアップもこれまでどおり 「まるごと取ってまるごと戻す」簡単運用 |
| おばかアプリ選手権、第4弾開催中!! ムダにカッコよくてくだらない作品求ム! |
| 社内ファイルサーバを“クラウド”に統合 VPN直結「クラウド型ストレージ」を紹介 |
| その数、なんと400台以上! グループ内 サーバの「統合管理」によるメリットは? |
| 美人!? まあまあ? 気になる いやし系!! PV急増で「美人時計」がとった手段とは? |
| 進化を続ける富士通ストレージETERNUS DX 製品開発者の自信を裏付けるものとは何か |
| 運用管理の課題を“2つの観点”から分析 ユーザー満足度の高い「仮想環境」とは? |
お勧め求人情報

**先週の人気講座ランキング**
〜CCNA編〜
| ◆ | TomcatやJBossなどAPサーバ環境に関する 情報を集約! “業務”用APサーバ大百科 New! |
| ◆ | 一気に解説! 最新のクラスタストレージ 「RAIDを超えたストレージ基準」……など New! |
| ◆ | クラウド的ユーザー体験の変化は脅威か? 仮想化技術を使いこなす運用管理術を紹介 New! |

| ◆ | 上司や部下、部署内メンバーとの情報共有 を“ガラッ”と変えるコラボツールとは? New! |
| ◆ | おばかアプリ選手権、第4弾開催中!! ムダにカッコよくてくだらない作品求ム! |
| ◆ | 社内ファイルサーバを“クラウド”に統合 VPN直結「クラウド型ストレージ」を紹介 |

| ◆ | Twitterのアカウントはなぜ突破された? メールによる新手の攻撃手法とその対策 |
| ◆ | もう仮想化のお試しフェイズは終わりだ! Hyper-V 2.0が基幹システムも仮想化 |
| ◆ | 美人!? まあまあ? 気になる いやし系!! PV急増で「美人時計」がとった手段とは? |

| ◆ | クライアント企業から求められる人材 ⇒IT技術と経営戦略を併せ持つ「戦略家」 |
| ◆ | .NET編集長が実践する「技術情報検索術」 サンプル・コードを簡単に探す“技”は? |
| ◆ | 業務効率と情報セキュリティ対策を両立! 手間なく確実に機密情報を守る方法とは? |

| ◆ | 進化を続ける富士通ストレージETERNUS DX 製品開発者の自信を裏付けるものとは何か |
| ◆ | 運用管理の課題を“2つの観点”から分析 ユーザー満足度の高い「仮想環境」とは? |

| ◆ | 【CTC事例】約30の基幹システムを統合! 膨大なバッジジョブを制御した方法は? |
| ◆ | 仮想化すればコストは削減できるか? 仮想化に必要な「3つの視点」を解説する |
| ◆ | その数、なんと400台以上! グループ内 サーバの「統合管理」によるメリットは? |








