TopProgramming Language > 2014年2月
2014年2月21日

JavaとJavaScriptの違いのまとめ

February 21,2014 2:34 AM
Tag:[, ]
Permalink

JavaとJavaScriptの違いについてまとめました。

JavaとJavaScriptの違い

新人に「Java書けるんなら当然JavaScriptも書けるよね?さっさとやっておいて」と伝えたら…」の便乗記事です。

1.結論

はじめに結論ですが、JavaとJavaScriptはまったくの別物です。

いいたとえがみつかりませんが、JavaScriptしか書けない人に「Javaも書けるよね?」と言うのは、フランス料理の専門家に「和食も作れるよね?」と言うようなものでしょうか。

以下、いくつかの観点でJavaとJavaScriptを比較してみました(個人的に気がついた部分)。

認識が誤っている部分がありましたらどこかでつぶやいてください。

2.サンプル

まずソースコードの見た目です。

「Hello World!!」を表示する最小限のサンプルで比較してみました。

Java

public class HelloWorld {
    public static void main ( String[] args ) {
        System.out.println( "Hello World !!" );
    }
} 

JavaScript

<script>
console.log( "Hello World!!" );
</script>

ご覧のとおり、共通するのは「"Hello World !!"」の部分だけで、それ以外は全く異なります。

3.概略

Javaは、Sun Microsystems社が作ったプログラミング言語です(もう少し言えば「オブジェクト指向プログラミング言語」)。

JavaScriptは、Netscape Communications社によって開発されたスクリプト言語で、当時のブラウザ「Netscape Navigator 2.0」に初めて実装されました。

開発当初、JavaScriptは「LiveScript」と呼ばれていましたが、当時はJava言語が注目されており、Netscape Communications社とSun Microsystems社が業務提携していたこともあり、「JavaScript」という名前に変更したようです。

4.特徴

Javaはプラットフォームに依存しないことが特徴で、「Java VM」と呼ばれる実行環境をもつコンピュータであれば、ハードウェアやOSの違いがあってもプログラムの変更なしに動作させることができます(通常のプログラム言語ではハードウェアやOSが異なるとソースコードの改修が必要なケースがあります)。

JavaScriptは、静的な表現しか出来なかったウェブサイトに対し、文字サイズの変更といった動的なデザイン性をもたせることができるのが特徴です。

そういう意味で、それぞれの土俵がそもそも異なっています。

5.開発環境

Javaはソースコードのコンパイルが必要なため、Oracle Java SEのサイトからJDK(Java Development Kit)のインストールが必要です。

コンパイルについては後述します。

JavaScriptで最低限必要な開発環境はテキストエディタのみです。

6.動作環境

Javaでコンパイルしたコードを実行させるには、JRE(Java Runtime Environment)のインストールが必要です。JREはOracleのJavaダウンロードページからダウンロードできます。

JDKにはJREもバンドルされています。

JavaScriptは、サーバで動作させる場合には作成したファイルをサーバにアップロードする環境(FFFTP/WinSCP)があれば十分ですが、ローカルPCで動作させる場合にはApacheやIISなどのウェブサーバのインストールが必要です。

なお、JavaScriptはクライアント(ブラウザ)サイドで動作させるための言語でしたが、サーバサイドで動作可能なインタプリタ(Node.jsなど)も登場しています。

7.コンパイルについて

補足としてコンパイルについて説明しておきます。

Javaで必要な「コンパイル」とは、人間がプログラミング言語を用いて作成したソースコードを、コンピュータ上で実行可能な形式(オブジェクトコードまたはバイトコード)に変換することを指します。

言い換えると、ソースコードは人間が理解しやすい形式ですが、コンパイルされたコードはコンピュータが理解しやすい形式になるという訳です。

Javaの場合、javacコマンドでコンパイルを行うことで、Sample.classというクラスファイルが出力され、javaコマンドでこのファイルを実行します。

Windowsマシン上で実行する場合は次のようなイメージになります。

C:\>javac Sample.java
C:\>java Sample
Hello World!!

これに対し、JavaScriptはスクリプト言語はコンパイルという作業が不要です。

冒頭のサンプルをindex.htmlなどのファイル名で保存(またはアップロード)し、ブラウザに読み込ませれば実行可能な状態になる(あるいは即時実行される)という手軽さがあります。

よってプログラムを簡単に実行できるメリットがありますが、実行時にインタプリタ(コンピュータが実行できる形式に変換しながらプログラムを実行)を行うため、パフォーマンスが劣ると言われています。

8.参考サイト

参考サイトは以下です。ありがとうございました。

Comments [0] | Trackbacks [0]
Now loading...
ギターに入った猫
掲載広告募集
Styles
Font Size
Default
For defective color vision
Gray Scale
RGB Color
Search this site

このブログをメールで購読する by:FeedBurner

AMN
Categories
Monthly Archives
2020年
2019年
2018年
2017年
2016年
2015年
2014年
2013年
2012年
2011年
2010年
2009年
2008年
2007年
2006年
2005年
2004年
2003年
BlogPeople
Syndicate this site
FeedBurner(RSS1.0/RSS2.0/Atom)
Counter
これまでのアクセス
Powered by
Movable Type 6.0.3