Java仮想マシンインタプリタの長所と短所

ヘッドセットを身に着けている若いビジネスレディ

電話のカスタマーサービスエージェント。

画像クレジット: ストックの表示/ストックの表示/ゲッティイメージズ

Adobe Flashやその他の最新のWebテクノロジーが存在する前は、サイト所有者はJavaを使用して魅力的でインタラクティブなWebサイトを作成していました。 Flashと同様に、Javaプログラムは映画を再生し、高品質のグラフィックを生成し、デスクトップアプリに似た複雑なアプリケーションをサポートします。 舞台裏で実行されるJava仮想マシンインタプリタを使用すると、これらの利点を享受できますが、顕著な欠点があります。

Java仮想マシンの構造

Javaという用語にはいくつかの意味があります。 これは、開発者がアプリケーションの作成に使用するプログラミング言語、アプリケーションプログラマーのインターフェイス仕様、またはJava仮想マシン仕様を参照できます。 アプレットとも呼ばれるJavaプログラムを含むWebページにアクセスすると、ブラウザはJavaコードを解釈してアプレットを実行するJava仮想マシンをアクティブにします。 実際のコンピューティングマシンと同様に、JVMは命令を処理し、メモリ領域を管理します。

今日のビデオ

利点:Javaは保護された領域で実行されます

Webページにファイルを削除したり、プライベートドキュメントを調べたりする機能があった場合にどうなるか想像してみてください。 Javaアプレットは、通常のHTMLコードでは実行できない便利なタスクを実行できますが、JavaはJava仮想マシン内で分離して実行されます。 JVMは、危険なサイトからの反逆アプレットがハードドライブなどのシステムリソースにアクセスできないようにします。

短所:サイバー犯罪者はJava仮想マシンを悪用する可能性があります

JVMはアプレットのアクションを制限しますが、攻撃者がJavaプラットフォームの弱点を悪用する可能性はあります。 たとえば、2013年の初めに、Microsoftは、リモートコード実行を使用してコンピュータに感染するように設計されたアプレットの3つの例を見ました。 Javaの開発者であるOracleは、アプレットのデフォルトのセキュリティを設定することで、より安全な状態を維持するアップデートをリリースしました。 レベルを「高」にします。 この設定により、署名されていないアプレットが次のことを試みたときにブラウザが警告を発します。 走る。 Microsoftが指摘しているように、「セキュリティの脆弱性を悪用するアプレットの大部分は署名されていません」。 デジタル アプレットの署名により、誰がアプレットを作成したかがわかり、作成者の後に誰もアプレットを変更していないことを確認できます 署名しました。

利点:ワンサイズですべてに対応

「クロスプラットフォーム」とは、さまざまな種類のハードウェアで正常に実行されるプログラムの機能を指します。 Javaはクロスプラットフォームであるため、開発者は、PC、Mac、携帯電話、およびJVMを備えたその他のデバイスで実行される1つのコードを記述できます。 Javaは必ずしもブラウザで実行する必要はありません。 通常のプログラムと同じように、デスクトップで実行されるJavaアプリをダウンロードできます。

短所:いくつかのアセンブリが必要になる場合があります

コンピュータにJavaランタイム環境をインストールしたことがない場合は、Javaを使用できません。 「Javaバージョンの確認」Webページにアクセスし、指示に従って最新バージョンをダウンロードしてインストールします(お持ちでない場合)。 長時間のインストールではありませんが、いくつかの問題が発生する可能性があるため、インストールを機能させるためのサポートが必要な場合は、Javaのトラブルシューティングページを参照してください。

その他の利点

詳細なレベルでは、Java仮想マシンはジャストインタイムコンパイラを使用して、Javaコードを通常のアプリケーションと同じ速さで実行される低レベルの機械語に変換します。 ブラウザはこのコンパイル済みコードをキャッシュできるため、後で再度ダウンロードしてコンパイル手順を実行しなくても再利用できます。