Java入門(JREとJDKについて)

どうもGBSの兼平です。

先日ブログにてJavaの概要を大雑把に説明しました。

早速ですが、
今回はJREとJDKについて少し細かく見て行きましょう!
少し長くなりますが、お付き合いください(笑)

■JDK(Java Development Kit)
    Java言語でアプリケーションを開発する際、必要最低限のソフトウェアセットです。
    JDKにはJREが含まれており、更に開発に必要のコンパイラやデバッガなどがバンドルされてます。
    JREは後ほど説明するので、まずコンパイラとデバッガについて見て行きましょう!
    
    ・コンパイラ
        OSは基本0と1しか理解できないように作られてます。
        そんなOSでもプログラミング言語を理解できるように、
        プログラミング言語で書いたソースコードをコンパイラというプログラムを使用して、
        OSが理解できる様にソースコードを翻訳するのです。
        イメージ的にはgoogle翻訳を使って他言語に翻訳するといった感じです。
        
        Javaの場合、少しコンパイルの流れが違いますが、翻訳という意味では同じなので、
        コンパイラは翻訳するプログラムという意味で捉えてください。
        
        Javaでは、コンパイラによって翻訳されたものを「バイトコード」と呼びます。
        そのバイトコードをJVMが読み取って、プログラムを実行します。
        
    ・デバッガ
        プログラミング言語を書くのは人間ですから、何らかのミスでプログラムにバグが発生して、
        動かなくなてしまうことはあったります。
        そんなバグを直す事をデバッグといい、
        そのデバッグ作業をより効率よくできるのがデバッガというツールです。
        
    JDKには他にも開発時に役立つたくさんの便利ツールがあります。
    興味ある方は調べてみて下さいね。
            
■JRE(Java Rutime Environment)
    前回説明しましたが、JREはOS上でJavaプログラムを実行するのに必要不可欠な環境です。
    そんなJREにはJVM(Java Virtual Machine)とライブラリ等がバンドルされています。
    JVMとライブラリってなんぞやって思う方もいらっしゃるとは思いますので、説明しますね!
    
    ・JVM(Java Virtual Machine)
        JVMはJava仮想マシンと呼ばれ、その役割は以下のようになります。     
            ・コンパイラによって翻訳されたバイトコードをJVMが読み取る
            ・バイトコードをOSが理解できるネイティブコードに翻訳して、
                Javaプログラムを実行します。

・ライブラリ
        ある特定の機能を持ったプログラムを他のプログラムから利用できるように部品化し、
        複数の部品をまとめたものをライブラリといいます。

        ものに例えるとライターですかね。
        火をおこすのに、木を使うと大変ですよね?
        そんな時、売られているライターを使えばすぐに火を起こせます。
        ライブラリとはライターの様に面倒くさい処理を簡単にしてくれる、
        そんな便利道具と考えてください。

    
さて、
こんなたくさんの知識をいきなり覚えられませんよね(笑)
なので、重要なポイントだけまとめてみましょう!

■まとめ
・JDKにバンドルされているコンパイラを使用して、ソースコードをバイトコードに翻訳する
・プログラムにバグがあれば、JDKにバンドルされているデバッガを利用してプログラムを直す
・翻訳されたバイトコードをJVMがOSが理解できるネイティブコードに翻訳しプログラムを実行する
・ライブラリとは面倒くさい処理を簡単にしてくれる便利道具

はい、これくらいなら覚えられそうですね!
僕は頭が良くないので、これらを理解するまで時間がかかってしまいました(笑)

これでJava全体の大まかの流れが分かったところで、
次回は実際ソースコードの書き方について見てみましょう!

Java

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です