独り言

プログラミングの講師をしています。新人研修で扱う技術の解説と個人の技術メモ、技術書の紹介など

【書籍】スッキリわかるJava入門

Javaの入門書の紹介です。
紹介する本はこちら、スッキリわかる Java入門です。

第2版は以前読んだことがあるのですが、最近新しくなって第3版が出版されました。
研修生に配布するので、私も今一度復習の意味も込めて読み直してみました。
以前読んだときも分かりやすかった印象はありますが、改めて読んでもやはり分かりやすかったです。
2版と比べると、新しく追加された要素が多数あり、ボリューム満点の入門書となっています。
(全体のページ数でいうと700ページを超えています。。)
本書では3人の登場人物がいて、それぞれが対話をしながら徐々にステップアップしていく構成になっていて、それが分かりやすさの1つのポイントになっています。

オブジェクト指向を分かりやすく学べる

本書の魅力は何と言ってもオブジェクト指向の概念が分かりやすいことでしょう。
RPGを題材にしてオブジェクト指向を解説していくため、ゲームが好きでRPGをしたことがある人にとってはとてもなじみやすい入門書になっているのではないかと思います。
オブジェクト指向は、プログラミング初心者が躓きやすく、初心者にとっての一つの壁となっています。
私自身、新人だったころは、新人研修でJavaを学んだのですが、オブジェクト指向については深く理解できませんでした。
というのも、オブジェクト指向の使い方自体は、ただ構文を覚えてしまえばいいだけなので、何も難しくはなかったです。
ただ、オブジェクト指向を使うことで何のメリットがあるかはあまりピンと来なくて、実務で2年くらいプログラミングをやっているうちに、自然と理解が深まったような印象です。
オブジェクト指向を本当の意味で使いこなすには、デザインパターンなど、プログラミング言語の入門書ではあまり触れない分野まで踏み込む必要があるかと思いますが、Javaの概要と、オブジェクト指向の概念を理解するという意味では非常に分かりやすくて読みやすい本であると思います。

アルゴリズム力は別の本で学ぶ

本書を読む中で一つ思った事があります。
それは、本書は、Javaオブジェクト指向の知識を得るにはとても分かりやすいが、アルゴリズム力を鍛えるには向いていないという事です。
アルゴリズム力というは、要は処理の流れを考える力のことです。
プログラミングスキルというのは、プログラミング言語の知識はもちろんのこと、処理の流れ(アルゴリズム、ロジックなどと呼ばれる)を考える力も非常に重要です。
プログラミングは、説明を聞いているときは理解している気になるものの、実際にプログラムを書こうとすると手が止まってしまう人は多いです。
これは、言語の知識を理解したとしても、処理の流れを考える力は別だから起きるのでしょう。
本書を読んで分かりやすいと言う研修生は多いものの、その後に課題を出してプログラムを書かせてみると思うようにいかない人が多い。
つまり、Javaの知識を身に付けるという点では非常に優れた本なのですが、この本だけで色々なプログラムが書けるようになるわけではなく、アルゴリズム力は別で鍛える必要があります。
これは、他の本やサイトなどでの演習問題を通じて、処理の流れを考える訓練をするのが一番でしょう。

まとめ