プログラミングを学ぶに当たってどの言語を選ぶのか,
何種類くらいの言語を学ぶべきかに関しては議論がよく起こります.
最終的な目標は,
「必要に応じてどんな言語でも習得して目的を果たすことができるようになる」
ということですが,初心者がそんなことを考えてはいけません.
Javaは本格的なプログラミングのための要素をひと通り含んでおり,
初心者が最初の学びの関門としてJavaを選ぶのはとても良い選択だといえます.
ある程度プログラミングに熟達してくると,
「結局,最終的にはC言語で」
という結論になることが多いと思います.
C,C++,C#,Objective-C,… と,
C言語のファミリーに属する言語はいくつかあります.
どれも完成度が高く,実装したプログラムの実行速度も大きく,
他の言語の追随を許さない感があります.
「それならはじめからC言語を勉強すれば?」
と言いたくなるのですが,色々な意味で苦労が大きいです.
C言語では,記憶を扱うために「ポインタ」の概念を確実に習得し,
それを自在に扱うことが要求されますが,プログラミングの初心者にとっては
これが1つの難所になっています.
それだけでなく,C言語では憶えなければならない項目がたくさんあり,
初心者がとりあえず実用的なアプリケーションプログラムを作れるようになるまでには
かなりの労力と時間が要求されます.
また,C言語のプログラミングのために必要となる各種のツールの扱いも
初心者にとって優しくないものが多く,色々と大変です.
JavaはC言語と比べると新し部類の言語処理系であり,
C言語からの反省などもあり,色々な面でわかりやすく使いやすくなっている点が
多いです.
それでいて普及率も大きく,PC,スマートフォンからスーパーコンピュータまで
広い範囲で使えます.
Javaで作成したプログラムの実行速度に関しても,C言語に少し劣るという程度であり,
十分な実用性があることは確かです.
実際に身の回りの情報機器の色々な部分でJavaで開発されたプログラムが動いていますし,
Android携帯のアプリもJava言語で開発されていることは有名です.
しかもJavaの言語処理系はフリーソフトで,
経済的に恵まれていない学習初心者にはとてもありがたいです.
それだけではありません.
Java言語の文法は基本的にはC言語とそっくりで,Javaをしっかり習得すると,
C言語への速やかな移行が望めます.
(Javaそれ自体も十分実用的な言語処理系なので,Javaだけでも
十分やっていける言語であることも一応添えておきます)
まとめますとJavaは,
● ひと通り本格的な仕様を持った言語である
● C言語とそっくりな上,C言語よりわかりやすい
● 実用的な性能を持っている
● 学ぶのにお金があまりかからない
ということで,プログラミングの学習初心者にはとても良い
おすすめの言語であるといえます.
「お決まり」という感じですが,
● 言語の文法
● データ構造とアルゴリズムの基本
● 入出力
の3つは学ばないとどうしようもありません.これが本当の基礎です.
ただ,ここで苦労しただけで終ってしまっている学生さん(生徒さん)がとても多いですね.
とてももったいないです.
実用的なアプリケーションソフトが作れるようになれば,
それからの学びがとても楽しくなります.
そこで,是非おすすめしたいのが「GUIの構築とグラフィックスの作成」です.
ここまで学ぶと創作意欲が湧いて学びが楽しくなり,学習が加速します.
Javaは学びに最適です.本格的なアプリケーションソフトを作るための全ての機能が
含まれた「オール・イン・ワン」の処理環境です.