
少し前に、大学でシステム系を専攻している義弟くんから
「JavaScriptってなんですか?Javaとはなにが違うんですか?」
と質問され、
・・・

「JavaとJavaScriptは別物なんだよ~
Javaはアプリケーションを作るときの言語で、JavaScriptは・・・Webページとかで動いてるアレだよ・・・
」というざっくり過ぎる回答しかできなかったという未熟すぎる私・・・

というわけで、私自身も知識を付けるために、この場を借りてなんちゃって解説してみたいと思います

職業訓練時代のJavaScriptのテキストには、
「JavaScriptは、文字や画像、ページ等を動かす仕掛けを作るもの」
「JavaScriptを組み込まれたページはHTMLで作成された『静的ページ』に対し、『動的ページ』とも呼ばれる」
と記載されていました

Webページで、ボタンの上にカーソルを合わせると色が変わったり動いたり、
写真の表示が次々に変化したりする、アレです

この辺の認識は間違っていなかったようです、ほっ
笑さてココからが本題です。
JavaScriptはJavaとどう違うのか?
名前に”Java”と付いているくらいだから、Javaの仲間なんじゃないのか?
こういったふうに思っている方、少なくないはずです

私も教わるまでは同じ部類の仲間だと思っていました

答えはNO

全く違うものなのです

その理由はJavaScriptとJavaの歴史について調べるとわかります

あるところにネットスケープコミュニケーションズという企業がありました。
そこでブレンダン・アイクという人が、あるプログラミング言語を開発しました。
当時はその言語はLiveScriptと呼ばれていたそうです。
同じ頃、サン・マイクロシステムズ(現オラクル)という会社で開発された
Javaというプログラミング言語が大きな注目を浴びていました。
ネットスケープコミュニケーションズとサン・マイクロシステムズは、当時業務提携をしていたということもあり、
人気のJavaという名前を頂戴し、LiveScriptをJavaScriptに改名したのでした

Wikiの内容をわかりやすく(?)書いてみました。
(引用:ウィキペディア|JavaScript)
名前にJavaとついているのは、このような理由からだったのですね

名前が似ている理由はわかりましたが、
では、具体的にどう違うのか・・・。
Javaの公式サイトにはこのような解説がありました。(一部抜粋)
①JavaはOOPプログラミング言語ですが、JavaScriptはOOPスクリプト言語です。
OOPというのは、「オブジェクト指向プログラミング」の略で、
「オブジェクト指向とは」ソフトウェア開発におけるプログラミングの手法・概念・考え方のひとつです

上記解説からすると、Javaはプログラミング言語であるのに対して、JavaScriptはスクリプト言語である、ということです。
「スクリプト言語」とは、簡易的なプログラミング言語のことで、本格的なプログラミング言語に比べて覚えやすい簡単な構造になっているのだそうです

プログラミング言語とスクリプト言語の違いについてですが、
②にあるようにコンパイルの必要があるかないかというのも違いのひとつです。
コンパイルとは、私たち人間が書いたプログラムを、コンピューターがわかるように変換することです。
簡単に言うと人間語→コンピュータ語に翻訳する作業のことです

このことから、プログラミング言語はより複雑な構造であるがためにコンパイルという変換作業が必要であること、スクリプト言語は簡易的な言語のため、コンパイルは不要であるということがわかりますね

いかがでしたでしょうか

私も書いていてだんだんちんぷんかんぷんになってきてしまいましたが・・・

以上のことから、「JavaScriptとJavaは名前は似ているけれど、違うもの」
ということが伝わってもらえたら、今回この記事を書いた甲斐がありました
笑興味のない方にはつまらない話題だったかもしれません

ですが、これからWebやITの業界に挑戦していくなら、知っていて損な知識ではないと思います

私もわからないことは少なくしていきたいので、
また、用語解説やらそういった場を設けたいと思います

私自身の復習や勉強にもつながりますので

解説の中で、「それ違うんじゃない?」「本当はこういうことだよ!」などなど
ご意見やご指摘があれば、コメントでお知らせください

私自身間違った解釈などしているやもしれませんので・・・

長くなってしまいましたが、
次回はもっと楽しい話題を書けたらと思います
笑最後まで読んでいただきありがとうございました
