みたにっき@はてな

三谷純のブログ

Javaは初心者向け言語?

今日は月曜日ということで、週一の非常勤講師でJavaの講義をしてきました。そろそろ後期の授業も終わりが近く、あとは来週の1回を残すばかりです。

今更なのですが、最近ちょっと「Javaってホントに初心者向け言語?」と疑問に思えてきてしまいました。
クラスやインスタンスという聞き慣れない用語が出てくるオブジェクト指向言語よりも、直感的でわかりやすいフローチャートに則ったプログラミングができる、BASIC言語なんかが、実はきっと初心者には理解しやすいんだろうなぁ、と思うわけです。
プログラミング言語というのは、だんだん発展して新しい言語が出来てくるわけですから、後発のJavaは他の言語のいいところを取り合わせた優れた作りになっていると思います。ここで優れている、というのは技術の進歩と共に必要になってきた、例えば数十万ステップを超えるような大規模で複雑なシステムを効率的に開発できる、ということです。
その反面、初学者が練習用に作成するミニプログラムには、仰々しすぎるような気がします。
Java言語を学習する以上、クラスの継承、インターフェイスポリモーフィズム、例外処理、アクセス制御などなど、難しい概念がたくさん登場します。このような概念は、実はたった1つの自作クラスで数値計算をするだけだったら全然必要ないし、アプレットを作る際にも、グラフィックスとアニメーションくらいだったら実は既存のライブラリの使い方さえわかれば、あまり自ら複雑なクラス群を大量に作ることもないわけです。

というわけで、今まで半年の講義をしてきて、でも最終的に自作できるアプリケーションが100行程度の小さなものであったときに、Javaの大層な概念を無理に理解する必要もないのかなぁ、なんて振り返ってしまうのでした。

でもきっと、ここで学習したことは将来、大規模なシステムを開発するときに役立つに違いない!