「これからキャリアを積むにはJavaはマスターしておきたい、しかし時間が……」という声をよく聞く。そこで今回は、忙しいITエンジニアのためのJavaプログラミングの「学び方」を4回の予定で紹介する。なお、本記事は@ITラーニングデスクにおいて2001年11月16日に掲載した記事を加筆、修正したものである。
実際にJava(あるいはそれ以外の何か)を学ぶ場合、大きく分けて以下の2つの手段がある。
(1)モノから学ぶ
(2)ヒトから学ぶ
結局、モノ(本、教材)もだれかが作ったものなので、実際には、ヒトから直接学ぶか間接的に学ぶかのいずれかといえる。これをさらに分類すると、以下の5つの学び方がある。
(1)モノから学ぶ
(ア)書籍/雑誌
(イ)CD-ROM/eラーニング教材
(ウ)Webサイト
(2)ヒトから学ぶ
(エ)講習会(セミナー、トレーニング)
(オ)仲間
ここでは、それぞれの方法で学ぶ場合のメリット、デメリット、注意点、賢い活用法について説明する。今回は、コストがあまりかからないモノから学ぶ方法について説明する。
まず書籍で学ぶ場合のメリットとデメリットをまとめた。
メリット | デメリット |
---|---|
安い | 疑問点が解決しにくい |
マイペースで学べる | 選定が難しい 自己管理が必要 |
書籍で学ぶ場合のメリットとデメリット |
次に雑誌で学ぶ場合のメリットとデメリットをまとめた。
メリット | デメリット |
---|---|
書籍よりさらに安い | 包括的な情報が得にくい |
マイペースで学べる 特集記事などであるテーマに絞って学べる |
必ずしも関心のあるテーマが扱われているとは限らない |
雑誌で学ぶ場合のメリットとデメリット |
書籍を使って何かを勉強するのは、どの分野においても一般的といえる。最近は地元の小さい本屋でさえJavaの解説書が置かれているし、コストもだいだい2000〜3000円と安価で済む。ただし、自分で継続的に学ぶにはそれなりに強い意志が要求されるし、また著者がせっかく手を替え品を替えて説明してくれても、何度も繰り返さないと理解できないトピックや概念もある(特に手続き型のプログラミング経験がなまじある場合、オブジェクト指向の概念を理解するのに手間取るかもしれない)。
ただし、すでにほかのプログラミング言語などを学んで基礎ができている人は、書籍を通読して概要を身に付け、後は現場で経験を積んでいくだけで十分なことが多い。特にC++を理解できている人であれば、すぐにJavaも使いこなせるはずだ。
C言語が分かっていれば、JavaをポインタのないC的に使うことも可能だろう。ただし、生産性の高さに直結するオブジェクト指向言語の利点を使わないのはもったいないので、ぜひ学習してほしいところだ。
初めて学ぶ場合は、Java(J2SE)の言語仕様を段階的に学べる「入門書」(演習問題の付いたものを選びたい)、概要や概念、技術用語(テクニカルターム)を学べる「副読本」(ビジネスマン向けの教養書でよい)を併用し、理解が深まったところでさらに言語の理念や内部処理・構造、設計思想などコンピュータサイエンス的な視点で書かれた読み物に挑戦してみることをお勧めする(図1)。
包括的な内容の書籍と、テーマに特化した構成の雑誌という媒体の違いも、うまく活用したいところだ。「入門書」で概要を学び、「副読本1」で実習、雑誌でジャンルを絞って集中的に学ぶ。理解が深まったところで「副読本2」を読むというように、それぞれの長所を生かした相互補完的なサイクルを作って活用していくといいだろう。さらに雑誌では最新のトピックやキーワードが幅広く学べるので、今後の動向を知るうえでも大いに役に立つ。
筆者がお薦めしたい入門書は、『10日でおぼえるJava入門教室』だ。1日1章ずつ学習していき、Javaの基本のプログラム(メッセージ表示)からゲーム、クラス、コンポーネントなどを順序よく効率的に学ぶことができる。各章ごとに練習問題があり、それを解くことで次の章に進むべきだろう。ビギナーならば一読の価値がある。もちろん、本書にはCD-ROM(Java2 SDKバージョン1.4)が付属する。
10日でおぼえるJava入門教室
丸の内とら著
翔泳社
2001年2月
ISBN4-7981-0001-3
3200円(税別) 注文ページへ
価格が高く、ボリュームもあるが、段階的に学んでいけばJavaについて包括的に理解することができる。
独習Java 第2版(CD-ROM付き)
ジョゼフ・オニール著、トップスタジオ訳、武藤健志監修
翔泳社
2002年7月
ISBN4-7981-0278-4
3600円(税別) 注文ページへ
Javaとオブジェクト指向の考え方が分かりやすく解説されている読み物。学習中は何度か繰り返して読むといいだろう。
Javaのからくり オブジェクト指向入門(JavaWorld BOOK)
植田竜男著
IDGジャパン
1999年2月
ISBN4-87280-362-0
1900円(税別) 注文ページへ
GUIについての説明が充実していて、インベーダーゲームの設計を想定したオブジェ クト指向の説明は秀逸。ネットワーク関連の解説がやや少ない感あり。
図解でわかるJavaのすべて ネット時代のプログラミング
山下関哉著
日本実業出版社
2000年9月
ISBN4-534-03120-3
2300円(税別) 注文ページへ
サーブレットに限らず、Webアプリケーション全体の説明と比較からサーブレットの概念や仕組みについて解説していく。コードが少なく図が多い構成で、非常に明解でとっつきやすいサーバサイドJava入門書。
図解でわかる Javaサーブレット 動作原理から設計まで
栗林 克明、石井真著
日本実業出版社 2001年9月
ISBN4-534-03281-1
2500円(税別) 注文ページへ
この本はJavaの基本を学んだ後、Webシステム構築という次のステップに進んだときに役立つ。国内有数のWebシステム構築事例を持つテンアートニの執筆で、実は@ITの「Java Solition」フォーラムの連載記事に大幅加筆したもの。FAQ形式で分かりやすく、Tips集としても使える。
JavaプログラミングFAQ Web開発で誰もがつまずくポイントを達人が徹底指南!!
テンアートニ著
日本実業出版社
2001年11月
ISBN4-534-03319-2
1800円(税別) 注文ページへ
書評にある「注文ページへ」をクリックすると、オンライン書店で、その書籍を注文することができます。詳しくはクリックして表示されるページをご覧ください。
最近では、Javaに関するムックも珍しくない。内容的には過去の雑誌の特集記事や連載記事をテーマ別に、あるいは段階的に再編集したものが大半だが、書籍のような包括的な構成に雑誌の読みやすさがミックスされ、よくまとまっていて理解しやすい。
現在では、書籍や雑誌だけではなく、Javaに関連したCD-ROMやeラーニングで学習することも容易になった。では、これらの方法で学習する場合のメリットとデメリットを挙げよう。
メリット | デメリット |
---|---|
自分のペースで学べる | まだ始まったばかりの分野であり、出来の悪い教材は電子紙芝居レベルであることも |
最新情報が反映される(Web教材の場合) | 選定が難しい 自己管理が必要 |
コストは教則本と講習会の中間くらい | 書籍に比べて受身になりがち |
CD-ROMやeラーニングで学習する場合のメリットとデメリット |
eラーニングは、ネットワークやマルチメディア技術を使った自習教材で、講習会より安いコストで動きのない書籍よりも分かりやすく学ぶことができる。自分のペースで学んでいくという点では書籍に近いが、動画や音声などにより、より感覚的に学ぶことができる。
CD-ROM教材の場合は、ノートPCにインストールしておけば、出先などでも学習することができる。まさに「時間と場所を選ばない」が実現される。Web教材の場合は、管理機能などを集団で学習する場合に、リーダーなどが進ちょく状況を確認することも可能。個人学習だけでなく、チーム全体で学習する場合にも有効なツールである。
逆にストーリーがしっかりしている教材では、選択問題や穴埋め問題などはあるものの、学習が受け身になりやすい。イメージとしては、CD-ROM教材の画面、ソースコード入力用のテキストエディタ、コンパイル・実証用のMS-DOSエミュレータ(UNIX環境では端末エミュレータ)の3つが起動しているのが理想的だ。
お薦めのCD-ROM教材
・JavaTutorシリーズ「Javaプログラミングライブラリ」(サン・マイクロシステムズ) やや価格は張るが(9万6000円)、CD-ROM3枚のエンジニア研修向けの充実したコンテンツは、基本文法からGUI、I/O、ネットワークまで網羅している。
コンピュータに限らず、実習は欠かせない。水泳の本を読むだけで泳げるようにはならないように、コンピュータ技術の習得にも実際に動かしたり試したりしないと、なかなか身に付くものではない。可能な限り、ソースコードは自分でテキストエディタで入力してコンパイル/実行して、実際に試しながら書いていこう。
知人のベテランエンジニアから聞いた話だが、最近はスクラッチで(ゼあロから)ソースコードを書ける人が少なくなったそうだ。これは便利なGUIベースの開発ツールに慣れすぎたためであろう。実作業では便利なGUIツールだが、基本はコマンドラインモードでテキストエディタを使ってコードを書けることが大切だと思う。
ソースコードを書いてコンパイル/実行するにはそれなりの環境も必要なので、いつもできるわけではない。実際は参考書を読む時間が最も多いだろうが、それでも要所にある例題やサンプルプログラムだけでも最低限打ち込んでコンパイル/実行してほしい。
また、単純にサンプルプログラムを打ち込むだけでなく、文字列であればメッセージ内容を変えてみたり、足し算と引き算だけの演算なら掛け算や割り算も入れてみたり、ウィンドウにボタンを1つ表示するなら別の機能を持ったボタンをもう1つ追加してみたりなど、自分なりにあれこれ「実験」してみるとよい。時にはうまくいかずにハマることもあるが、その試行錯誤こそがセンスや勘などのアナログな能力を磨くのである。
とにかく「百聞は一見にしかず」というように、目だけでなく手を使って実際に体験するのが、理解への早道だと断言できる。
最近手軽に勉強できる方法として思いつくのはWebサイトだろう。この場合のメリットとデメリットを挙げておこう。
メリット | デメリット |
---|---|
無料 | レベルにバラつきがある |
自分に合ったコンテンツが発見できるとよい | 記述の内容が不十分な場合がまれにある |
常に最新情報を入手できる | |
Webサイトで学習する場合のメリットとデメリット |
何かの情報を得たい場合、最初にすることはそのテーマをWebサーチエンジンで検索することだろう。それほどWeb上での情報は豊富だ。Javaについても、Web上には研究者やエンジニア、マニアの書いた多くの資料やインストラクションなどがあり、その中には当然入門者向けのドキュメントなど、参考になるものも多い。
レベル的には「自分の勉強のまとめがてら書いたメモ」のようなものから、市販書籍顔負けのディープなものまで千差万別であるが、実際に苦労しながら理解した人が自分の勉強のまとめや、後進のための道案内的な内容で書いた入門用ドキュメントなどは、学習に入るときに目を通しておくとかなり役立つだろう。またそれらの先達の推薦するJava入門書などを見ておくと、教材や教則本選びの参考にもなる。
書籍などの教材にお金を使う前に、無料でアクセスできるWebドキュメントを読んで、下地を作っておくとよい。実際に有償の教材を選ぶ場合にも、多少の予備知識があるといろいろ役に立つことも多い。
それでは、学習するうえで参考になるWebサイトを最後に紹介しておこう。
The Source for Java Technology
サン・マイクロシステムズのJavaサイト。最新情報はここでゲット。
@IT Java Solution
筆者の原稿をアットマーク・アイティに掲載してもらったからではないが、本当に「役に立つ」情報がこれでもかというほどある。Java学習者から開発者まで必見のサイト。
Java FAQ
巨大なJava FAQ集。疑問、質問があれば、まずここに飛ぶべし。
稚内北星学園大学
Java教育の世界では大御所の丸山不二夫氏が学長、植田龍男氏が学部長を務める同校の講義用資料の掲載やそれ以外にも無料でストリーミング配信をしたり、数々の実験的な取り組みを行っている注目サイト。
東京理科大サンサイト
こちらは東京理科大学の運営するサンサイトのJava情報コーナー。入門やリファレンスなど海外資料(翻訳もあり)、ソフトウェアのダウンロードなどいろいろ役に立つ。
そのほかで使えるWebサイトのリンクは、Java Solutionフォーラムの「Java関連リンク集」を参考にしてほしい。
渡辺 知樹(わたなべ ともき)
先日、米国Meade社製の天体望遠鏡を並行輸入して、晴れた夜は密集した住宅地のベランダから月や惑星、その衛星などを眺めている。問題は、「アンタが望遠鏡を抱えているとノゾキ魔と間違えられる!」と怒る科学に無理解な妻と、隣りの家が近すぎて天頂しか見えないこと。それでも夏までにはコンピュータ制御での自動天体捕捉とデジカメ撮影できるシステム構築を目指している。
Copyright © ITmedia, Inc. All Rights Reserved.