平成24年度 秋期 ITパスポート試験 問73 解説 Javaプログラム実行環境
Java 言語で作成したプログラムであり, Web サーバからダウンロードして, Web ブラウザ上で実行するものはどれか。
- ア Java アプリケーション
- イ Java アプレット ✓ 正答
- ウ Java 仮想マシン
- エ Java サーブレット
解説
どこで動くプログラムなのかを見分ける
この問題は、Java関連技術の動作場所(サーバ側かクライアント側か)を整理することで瞬時に解くことができます。「Webブラウザ上で実行される」というキーワードから、Webブラウザというクライアント環境で動く仕組みを探しましょう。
Javaアプレットは、Webブラウザの中で動作する小さなJavaプログラムのことです。一方、サーバ側で動作するものはJavaサーブレットです。この「動作場所の違い」を意識すれば、迷わず正解を選べます。
Javaに関連する技術のすみ分け
Javaには、用途に応じていくつかの実行形態が存在します。試験で混同しやすい用語を整理しましょう。
- Javaアプレット: Webブラウザにダウンロードして実行されるプログラムです。Webサイト上でゲームを動かしたり、複雑な計算をブラウザ上で行わせたりするために開発されました。
- Javaアプリケーション: コンピュータ上で単独で動作する一般的なソフトウェアです。Webブラウザを介さず、OS上で直接動きます。
- Javaサーブレット: Webサーバ上で動作するプログラムです。クライアント(ブラウザ)から送られてきた要求を受け取り、データベースを検索したり、動的にHTMLを生成してブラウザに返したりする役割を担います。
- Java仮想マシン (JVM): Javaプログラムを動かすための「土台」となるソフトウェアです。JavaはどのOSでも動くように設計されていますが、それはこの仮想マシンがOSの違いを吸収してくれているからです。
実行場所に着目した判断プロセス
問題文には「Webサーバからダウンロードして」「Webブラウザ上で実行」という二つの条件があります。
実行場所はどこか? Webブラウザ上で実行されるため、クライアント側の技術である必要があります。この時点でサーバ側で動く「Javaサーブレット」は除外できます。
どのような実行形態か? 単独で動く「Javaアプリケーション」ではなく、Webブラウザという入れ物の中で動くプログラムであるため、「Javaアプレット」が適切だと判断します。
構造的な理解 Java仮想マシンはプログラムそのものではなく、プログラムを動かす環境(実行エンジン)であるため、プログラムを指す名称としては不適切です。このように「実行環境なのか」「プログラムの種類なのか」「動く場所はサーバなのかクライアントなのか」という切り口で分類を整理しておくことが、ITパスポート試験で正答率を上げるコツです。
技術の変遷と現在地
Javaアプレットは、かつてWebサイトにリッチな機能を加える手段として広く利用されました。しかし、現在はセキュリティ上のリスクや、ブラウザの仕様変更(プラグイン廃止など)により、Webの世界ではHTML5やJavaScriptといった他の技術に取って代わられています。
試験問題としては、歴史的な知識として「Javaアプレット=ブラウザ上で動くプログラム」という定義を暗記しておく必要がありますが、実務の現場では、同様の仕組みが現在どのような技術で実装されているのかを比較して学ぶと、知識の定着がより深まります。