JavaScriptはプロトタイプオブジェクトを使用し、これらのオブジェクトはクラスのインスタンスなしで直接他のオブジェクトにアクセスするのに役立ちますが、Javaはクラスのプロパティがクラスのインスタンスを通して継承されるクラスの原則に基づいて構築された言語です。
比較表
比較基準 | Java | JavaScript |
---|---|---|
によって開発された | サンマイクロシステムズ | ネットスケープ |
基本 | 静的型付け | 動的型付け |
オブジェクトの種類 | クラスベース | プロトタイプベース |
オブジェクトのカプセル化 | 有効 | 提供しない |
名前空間の存在 | Javaで使用されます。 | 名前空間を含まない |
マルチスレッド | Javaはマルチスレッドです。 | マルチスレッドの提供はありません。 |
範囲 | ブロックレベル | 関数 |
Javaの定義
Javaは、同じコードをどこでも使用できるコードを作成することを目的として設計された、汎用のオブジェクト指向プログラミング言語です。 Sun Microsystemsの James Goslingが、1990年代後半にJavaの開発を指導しました。 このプログラミング言語はクラスベースで、オブジェクト指向であり、人間が読むことができます。 Javaはコンパイルされ解釈されます。 ジャバコンパイラはソースコードをバイトコードに変換し、ジャバインタプリタはジャバプログラムが走っている機械によってまっすぐに実行される機械コードを生成する。 それは信頼性があり、分散型で、移植性があります。 スタンドアロンアプリケーションやWebベースのアプリケーションの開発に使用できます。
javaの特徴:
- コンパイルと解釈 :最初に、Javaコンパイラはソースコードをバイトコードに変換します。 それから機械によってまっすぐに実行されることができる機械コードが作り出されます、そして、インタプリタはこれをすることに対して責任があります。
- プラットフォームに依存せず、移植性があります。あるマシンから別のマシンに移動することができます。オペレーティングシステム、システムリソース、およびプロセッサを変更しても、Javaプログラムに影響はありません。 Javaコンパイラによって生成されたバイトコードは、どのマシンでも使用できます。
- オブジェクト指向 :Javaは純粋にオブジェクト指向言語であり、すべてがクラスとオブジェクトを中心に展開します。
- 堅牢で安全 :Javaはウイルスの脅威とリソースの誤用を防ぎます。 これはガベージコレクタで構成され、エラーとクラッシュの危険性を排除するために例外処理を採用しています。
- 分散 :ネットワーク上でのアプリケーションの作成も可能になり、データとプログラムの両方を共有できます。 Javaを使用してインターネット経由でリモートオブジェクトにアクセスすることもできます。これにより、複数のプログラマが異なるリモートロケーションから連携して作業することができます。
- マルチスレッドおよびインタラクティブ :複数のタスクを同時に処理できるマルチスレッドプログラムを支援します。
- 動的かつ拡張可能 :新しいクラス、オブジェクト、メソッド、およびライブラリは、おそらくJavaで動的にリンクされています。 CやC ++などの言語で書かれた関数もサポートできます。
- 開発の容易さ:コードの再利用性により開発が容易になります。
- スケーラビリティとパフォーマンス :スケーラビリティとパフォーマンスは、起動時間を短縮し、Javaランタイム環境におけるメモリの消費を最小限に抑えることによって向上させることができます。
JavaScriptの定義
JavaScriptは主に、Webアプリケーションに動作と対話機能を提供するために設計されたクライアントサイドのスクリプト言語です。 1995年にBrendan EichによってNetscapeで考案され、当初は「 Mocha 」、その後「 live script 」として知られていました。 その後、Netscape(現在のMozillaのもの)とSun Microsystems(現在のOracleのもの)の間の使用許諾契約のために、「live script」という名前は「 JavaScript 」に変換されます 。 この言語は、標準化の目的でNetscapeによってECMA(European Computer Manufacturers Association)に提出されました。
いくつかの商標の理由で、標準化されたバージョンは「 ECMAスクリプト 」と命名されています。 しかし、それは興味と興奮を得るためにマーケティングの策略のために "JavaScript"として普及しました。 しかし、それらの間に類似点はありません。 ブラウザはJavaScriptコードを実行するために使用され、さまざまなバージョンがブラウザの実装と相互運用可能でした。
ブラウザがプラットフォームとして使用されているだけでなく、Mongo DB、Couch DBなどの一部のデータベースでは、スクリプトおよびクエリ言語としてJavaScriptが使用されています。 それはブラウザによって解釈されるJavaに関連したコマンドの小さくて単純なセットを含みます。 WebページのイベントはJavaScriptによって迅速に構築することができます。 ただし、Webページを操作するように設計されているため、JavaやC ++などの他の言語の開発方法でデスクトップアプリケーションを開発することはできません。
JavaScriptの機能
- 解釈 :JavaScriptコードはブラウザで実行され、コードのコンパイルは直接行われません。
- クライアントサイドのスクリプト言語 :ブラウザを使用してコードを実行するクライアントサイドのスクリプト言語であり、サーバーとのやり取りは含まれません。 ただし、新しいバージョンとフレームワークにより、サーバーサイドのスクリプト作成も可能になります。
- イベントベース :何らかのイベントが発生したときに特定のコードを実行することができます。 イベントには、任意の読み込みページまたはフォームの送信などがあります。
- オブジェクト指向 :JavaScriptは、HTMLページ内のオブジェクトを操作することによってHTMLページに制御を適用します。
JavaとJavaScriptの主な違い
- JavaはSun Microsystems(現Oracle)によって発明され、Netscape(Mozilla所有)はJavaScriptを開発しました。
- Javaは静的に型指定されています。つまり、変数の型、パラメータ、およびオブジェクトのメンバーは、コンパイル時にコンパイラに認識されます。 それとは対照的に 、JavaScriptは変数の型がコンパイラに知られておらず、実行時に変更することができるところで動的に型付けされています。
- Javaはクラスベースの言語で、定義されたクラスがオブジェクトを呼び出すことを意味します。 一方、JavaScriptはプロトタイプに依存しているため、2倍に拡張できる機能を持つ一般化されたオブジェクトは、オブジェクトのプロパティとメソッドを共有できます。
- Javaのカプセル化はJavaScriptより優れています。
- JavaScriptは名前空間を含みません。 対照的に、Javaには名前空間があります。
- Javaは、複数のプログラムを同時に実行できるマルチスレッドをサポートしています。 それどころか、JavaScriptはマルチスレッド機能をサポートしていません。
- javaのスコープはブロックベースで、インスタンスやクラス変数ではなくなるまで制御がブロック外に達すると変数はスコープ外に出ます。 逆に、JavaScriptでは、宣言された関数内で変数にアクセスできる場所では、 関数ベースのスコープが使用されます。
結論
JavaとJavaScriptはどちらも構文上の類似点を除いて異なる言語であり、本質的に異なる目的のために設計されています。 Javaは、デスクトップ、モバイル、またはWebベースのアプリケーションの開発に使用できる汎用言語です。 一方、JavaScriptは、Webベースのアプリケーションの動作や対話性を設計するために特に使用されるクライアントサイドのスクリプト言語です。 JavaはJavaScriptよりも複雑で硬いです。 ただし、どちらの言語も優れたWebページイベントを作成でき、ユーザーとWebページ間の対話を提供できます。