Javaの位置づけ

プログラミング言語

プログラムはコンピュータに人間がやらせたいことを書いたものです。コンピュータに人間の意思を伝える言葉のようなものなのでプログラム言語と呼ばれることがあります。人間の言葉にも日本語や英語、フランス語、中国語といろいろあるようにプログラム言語にもいろいろな種類があります。

プログラミング言語の系譜

プログラミング言語もハードウェアの進化とそれに伴うソフトウェアの規模の拡大につれて進化してきました。とはいうものの、FORTRANや C のように古くに作られて長く主流にのこる言語もあれば華々しく現れてすぐに忘れられる言語もあります。また、主流にならなくても Smalltalk の様にのちの言語に大きく影響をのこすものもあります。

ここでは主要な手続き型言語の系譜をあげます。下に行くほど新しいのですが、下に行くほど優れているというものではありません。

プログラミング言語の系譜

右側にある黄色い背景の言語はスクリプトとも呼ばれる言語で比較的小規模なプログラムを手軽に書くためによく使われるものです。

この他にも宣言型の言語など考え方や目的を異にする言語があります。どれか優れているものが残るというよりは問題によって長所を生かしながら使いわけていくという方向にすすむと思います。

Java

Javaは Sun Microsystems が作った言語です。2007年にオープンソースとなり、ソースコードがGPLの下で公開されました。これを基にオープンソースによるJavaの実装である「OpenJDK」が始まっています。しかしsunもJDKを公開しています。同じ言語使用の元、異なる実装が存在するようになります。互換性に微妙な違いが出てくる可能性はあります。

以下はsunのJavaの歴史です。1.2と5.0で大きな変化がありました。Javaという名前はかわりませんがSunが提供する開発キットの正式名は微妙に変わっています。

授業で使用するのは Java SE 6 です。

JDK:Java開発キット (Java Development Kit の略)。

J2SE:(Java 2 Platform, Standard Edition) 2は大きな改良を,SEの他にEE(Enterprise Edition 企業用機能セット)と ME(Java 2 Platform, Micro Edition 小型セット)もある。

この他に開発はしないが,Javaのプログラムを使用するためのJava実行環境(Java仮想マシン)があり JRE (Java Runtime Environment)と呼ばれている。ブラウザやOpenOffice.orgなどのアプリケーションに付加する形でインストールされていることが多い。

Javaの特徴

プラットホームに依存しない
Java仮想マシン用のプログラムとしてコンパイルされるので,作ったプログラムはJava仮想マシンが用意されていれば CPU や OS (プラットホーム) が異なるコンピュータに持っていってもそのまま走ります。Solaris、Linux、Windows、MacなどのOSにJava仮想マシンが用意されています。
オブジェクト指向
オブジェクト指向プログラミングの考え方に基づいて設計されているので、ソフトウェアの開発効率があがり保守も容易になります。オブジェクト指向の考え方を身につける必要がありますが,いまや本格的な言語でオブジェクト指向の影響のないものはありません
守備範囲の広さ
Java はネットワークコンピューティングや Web サービスで有名ですが,携帯電話、カメラ、ゲーム機などの組み込み分野から,企業の大規模な情報システムまで広く使われています。

Javaを学ぶことが有利な理由

開発のためのツールが無料で手に入り書籍,ウェブサイトでの情報が多い。

プログラム本体の書き方が C と共通な部分が多く,また,他のスクリプト言語とも共通部分が多い。他の言語を学ぶ場合も応用が利く。

GUIのプログラムを書くために共通の部品が用意されている。

学校のLinux環境だけでなくWindowsやMacの環境でも動くプログラムが作れ,他の環境に移ってもJDKを用意すればプログラムができる。

もくじ

Javaプログラミング(Apr. 2010)
聖愛中学高等学校
http://www.seiai.ed.jp/
Nov.2010加筆