Java
概要
「Write once, run anywhere」
Java のコンセプトはコレらしいです(^_^;
一度書けばどこでも動く。
こういう思想から出現した言語は過去にもあったようですが、それらの言語は時期尚早であったためか結局発展しませんでした。
Java も当初は極度にパフォーマンス・品質が悪く、私自身は Java も同じ道を辿ると思っていたのですが、Web 上で動く Applet で人気を集め、その後 Servlet や EJB, JDBC 等サーバサイドで現在は大いに使われています。
ちなみに、2001年時に転職活動をしたのですが、IT 系の転職のためのスキルとして一番よく聞かれたのが Java のスキルでした。
C, C++, アセンブラ, Perl よりも遙かに Java の技術者は必要とされているのが2001年当時の状況のようです。
※ちなみにネットワーク管理者も重宝されます。関係ないですが
というわけで、これからプログラミングを勉強しようという人には、少なくとも Java を触ってみることをおすすめします。
気に入らなくても、そのうち使う必要に迫られる危険性があります。私みたいに(/_\*)
インストール
Java を使用するには Java 2 SDK ( J2SDK と略す。昔は JDK と呼ばれていた)と呼ばれる Java の開発環境をインストールする必要があります。
J2SDK はJava Technologyからダウンロードすることが可能で、ダウンロードしたら単にそのファイル(自己解凍型になっている)を実行して、適当なディレクトリに移動すればOKです。
Java HotSpot Server VM
サーバ環境で動作するアプリケーションのプログラム実行速度が最大になるように設計された VM だそうです。
常駐して使うような Java アプリケーション向けの VM ということですね。
java 実行時に -server オプションを指定することで使用可能です。
一応本家 Sun のサイトJava(TM) 仮想マシンで簡単な解説があるのでど~ぞ。
また、どの程度の効果があるのかは、JavaはCよりも速い!?--驚異の"-server"オプションが参考になるかも。
っていうか、ホントにこんなに速くなるのか!?
パッケージ
パッケージはクラス名の衝突を避けるために使用します。
例えば、AAA, BBB という2つのパッケージがあったとして、AAA.Same_class, BBB.Same_class はクラス名は 'Same_class' で同じですが、別々のクラスとして認識されます。
パッケージ中のクラスは、パッケージ名とクラス名を合わせて
AAA.Same_class c = new AAA.Same_class();
といった感じで使用できます(完全限定名)。
でも、これではいちいちパッケージ名を指定しないといけないので、とても面倒です。
従って、通常は import を使ってクラス名だけを指定するようにします。
import AAA.*; Same_class c = Same_class()
ちなみに、import AAA.*; の記述は、パッケージ AAA の中で public なクラス全ての import を意味します。
Ant
Ant は Java における make のようなものです。
Makefile に相当する build.xml に従ってビルドを行います。
フリーの Java アプリケーションを構築する際にはたいてい Ant が使用されているので、とりあえずインストールしておいた方がよいでしょう。
また、かなり便利なので、自分で Java アプリケーションを開発する際にも Ant を使うことをおすすめします。
Ant の入手は Apache Jakarta Project からどうぞ。
書籍
タイトル:Java 言語プログラミングレッスン 上・下
著者:結城 浩
出版:SOFT BANK
Java の入門書です。
一番初めに読む本としてはよいかもしれないが、一度一通り読んでしまうと物足りなくなると思います。
そういう意味では社内に1冊あればいい本、という感想です。