👩‍💻

JavaとJavaScriptの違い

2024/08/13に公開

JavaJavaScriptは名前が似ていますが、異なるプログラミング言語で、それぞれに異なる特徴と用途があります。
違うことはわかってるけど説明できないなーと思ったのでまとめてみました〜〜〜


1. Javaの概要

Javaはプログラミング言語の1つで、1995年にサン・マイクロシスズがリリースしたプロミング言語。

2. Javaの特徴

  1. バックエンドを開発するプログラミング言語
  2. コンパイル言語
    プログラムを実行する際にコンピュータが読み取れる言語に翻訳することをコンパイルと呼び、事前にコンパイルする言語をコンパイラ言語と呼びます。
    Javaはバイトコードという中間形式にコンパイルされ、これをJava仮想マシン(JVM)で実行します。JVM(JavaVM)は異なるコンピュータ上でも同じように動作するため、普通はOSが変われば動かなくなるのが普通ですが、Javaプログラムは「一度書けば、どこでも動く」という特性があります。
  3. 事前にコンパイルしているため「処理スピードが早い」のも特徴

3. Javaの主な用途

  • 大規模な企業や組織のアプリケーション
    業務システムや大規模なデータベースと連携するアプリケーションに広く使われています。
    特に金融機関や大企業での利用が多いです。
  • Androidアプリケーション
  • Webサーバーやアプリケーションサーバー
「Webサーバー」と「アプリケーションサーバー」
  • Webサーバー
    ユーザーからのHTTPリクエストを受け取り、HTML、CSS、JavaScript、画像などのWebページコンテンツを提供するサーバーのこと(Nginx、Apache HTTP Serverなど)
  • アプリケーションサーバー
    ビジネスロジックやアプリケーションの機能を提供するサーバー。
    Webサーバーからリクエストを受け取り、データベースとのやり取りや複雑な処理を行います。
    (Apache Tomcat、JBoss、Pumaなど)

1. JavaScriptの概要

JavaScriptは、1995年にNetscape(ネスケープ)によって開発されたプログラミング言語です。
フロントエンド用の言語の1つとして広く使われています。
基本的に、フロントエンドとサーバーサイドは別のプログラミング言語で作業します。
しかし、JavaScriptは同じ言語でどちらも開発できるため、使い勝手の良いプログラミング言語とされています。

2. JavaScriptの特徴

  1. フロントエンドを開発するプログラミング言語
    ただNode.jsを使用することで、サーバーサイドでも動かすことが可能です。
  1. インタプリタ言語
    インタプリタ言語とは、プログラムのコードを一行ずつ読み取り、その場で実行していくタイプの言語です。
    これにより、コードの変更が即座に反映されるため、開発やデバッグがしやすいです。
  2. 非同期処理に適した言語である
    JavaScriptは非同期処理に強く、サーバーとの通信や複数の処理を同時に進める必要がある場面でよく使われます。

3. JavaScriptの主な用途

  • ウェブページの動きやインタラクションを作る
    JavaScriptは、ボタンをクリックしたときの動作や、画像のスライドショー、ドロップダウンメニューなど、ウェブページ上で動きのある要素を作るために使われます。
  • データの表示や更新
    JavaScriptを使って、サーバーから取得したデータをページに表示したり、ページをリロードせずに新しい情報を取得したりできます。
    例: ニュースサイトで「もっと見る」ボタンを押すと、さらに記事が表示される機能
  • ゲームやアニメーションの作成
    シンプルなゲームやアニメーションもJavaScriptで作れます。
    例: ブラウザ上で遊べる簡単なパズルゲーム
  • サーバーサイドのプログラム
    Node.jsを使うと、JavaScriptでウェブサイトのバックエンド(データベースと連携する部分)も作成できます。
    例: ユーザーがログインするシステムの作成
  • モバイルアプリの開発
    React Nativeなどのフレームワークを使うと、JavaScriptでスマートフォン向けのアプリも開発できます。
    例: InstagramのようなSNSアプリの一部

まとめ

Javaは「大きなアプリケーションやサーバーのための強力な言語」で、安定性と安全性が重視されます。
JavaScriptは「Webページを動的にする為の言語」でユーザーのアクションにリアルタイムで反応出来る。

参考記事

https://freelance-start.com/articles/474

Discussion