ITごはん

ITを活用したい人、ITで何か作りたい人、そんなITでごはんを食べる人のためのブログ

JavaとJavaScriptの違いを分かりやすく説明する方法

エンジニアの面談をしていると、 「Javaは経験あるので、JavaScriptも大丈夫です」 なんて言われると困惑してしまうことがあります。

知っている人は知っているのですが、 JavaJavaScriptはともにオブジェクト指向言語ですが、 全然違います。

今回は、初心者や非IT系のかたにJavaJavaScriptの違いを簡単に説明する方法 を考えてみたいと思います。

JavaJavaScript

- インドとインドネシアくらい違う
- オーストラリアとオーストリアくらい違う
- メロンとメロンパンくらい違う
- ハムとハムスターくらい違う
- 宮崎県と宮城県くらい違う
- 酒井若菜と酒井彩名くらい違う
- 水野真紀と水野美紀くらい違う
- 陣内孝則と陣内智則くらい違う
- 森高千里と森下千里くらい違う
- 高橋克典と高橋克実くらい違う
- 峰竜太と竜雷太くらい違う
- 麻生久美子と麻木久仁子くらい違う
- 加藤あいと阿藤快くらい違う
- 鈴木亜美と鈴木えみくらい違う
- ASKAと泰葉くらい違う
- 矢田亜希子と和田アキ子くらい違う
- 稲垣潤一(歌手) と 稲川淳二(怖い話の人)くらい違う
- ピケティ(経済学者)とチャパティ(インド料理)くらい違う
- ピカタ(イタリア料理)とピタパ(PiTaPa。関西の鉄道系ICカード)くらい違う
- そうめんとひやむぎくらい違う
- アルジェリアとナイジェリアくらい違う
- 華氏と摂氏(20℃=68°F)くらい違う
- グラニュー糖とブランニューデイくらい違う
- ひつまぶしとひまつぶしくらい違う

さて、冗談はこれくらいにして、

JavaJavaScriptの違いを整理しておきます。 前者がJavaで、後者がJavaScriptです。

- クラスベースオブジェクト指向 vs プロトタイプベースオブジェクト指向
- 静的型付け言語 vs 動的型付け言語
- コンパイル必要 vs コンパイル不要(インタープリタ方式)
- 最初は サン・マイクロシステムズ社が開発 vs ネットスケープ社が開発

以前は、サーバーサイド言語(Webサーバで動作する)としてJavaが、 クライアントサイド言語(Webブラウザで動作する)として、JavaScriptが、 主に使用されているという役割的な違いがあったのですが、 JavaScriptがその活躍の場を広げ、サーバーサイドでも使用されますし、 スマホアプリ開発などでも利用されるようになりました。