髪盛ってるから森姫

1分で分かる「独学参考書選び」

»

◆開始(制限時間15秒)

 こんにちは。新人プログラマの森姫です。

 先日より、C言語の勉強を始めました。あれ? もうAndroidアプリ作成は飽きちゃったの? なんていわれそうですが、そんなことはありません。

 その話は今度ゆっくりということで、今月のお題は「1分で分かる○○」とのことです。例のごとく締め切りが守れない私ですが、がんばって書きたいと思います。

 プログラミングを覚える手っ取り早い手段は先生を見つけて教えていただくことです。学生ならば、詳しそうな先生の下で授業として教えてもらうことはたやすいかと思います。

 が、社会人にはそれはできません。先生などいないので。

 先生はいませんが、先輩はいます。上司はいます。もっといってしまえば、自分より詳しい後輩もいます。そういう人に聞くのが一番の上達方法です。

 ですが、周りにそういう人がいない。つまり「独学」で勉強しなくてはならない状況に陥ることもあります。

 そんなときに欠かせないのは「情報」となるもの。最近はGoogleというすばらしい検索エンジンがありますが、ここは古典的に「参考書」でいきたいと思います。

 新しい技術ならば参考書は少なく、選択肢は限られています。しかし、古い技術であったり、昔の技術であったり、流行である技術である場合は参考書は星の数ほど存在します。その中から「自分にあった参考書」を選ぶのはとても困難なことです。

 Google先生に「一番いい参考書を頼む」といって出てきた参考書を購入してみても読んでみると全然大丈夫ではなく、「大丈夫だ、問題ない」とはいえない状況下に陥ることもあります。

 では、どうすればGoogle先生でも不可能な「自分に合った参考書」をすばやく見つけることができるのか。

 私も少し考えてみました。C言語を勉強する前に。C言語の本は山ほどありましたので……。最初に断っておきますが、私は心理学者ではありません。むしろ行動心理学とかそういう「人の心や理解」についてはかなり鈍感です。なので多少の誤差はあるかもしれませんが、まぁ、これも「参考書選びの参考」と思って

 1分でさらりと読み流してください。

◆本題(制限時間15秒)

 では、ここからが本題です。C言語の話題で申し訳ないですが、C言語にはポインタというものが存在します。

 さて、ポインタの説明として、あなたが「分かりやすい」と思うものはどちらでしょうか?

 A.ポインタは「例えるなら家の住所」

 B.ポインタはメモリのアドレス

 どちらの表現に「ピン」ときますか? どちらの表現が理解しやすいですか?

 これには答えがありません。あなたの分かりやすい方を選んで以下を分岐で読んでください。

◆Aを選んだあなたは「関連付けがうまい」(制限時間20秒)

 ポインタを「家の住所」という現実世界での身近なもので置き換えることができるあなたは、例え話や図が多く多用されている参考書を選ぶとよいでしょう。なお、文字は大きい方がよいです。行間も大きい方がよいでしょう。その行間には、あなたが思ったことを書いてください。

 こっちの例えの方が分かりやすい、と思ったら書くべきです。そうして「現実世界、身近な世界との関連付け」で理解を深めていきましょう。あなたは、言葉と物質のリンクをつなぐ能力に長けています。

 なお、重要なところは太字になっていたり、カラーになっていたりするものがよいと思われます。本はカラーであってもなくてもいいですが、どちらかというと3色以上使われている方がよいと思います。

◆Bを選んだあなたは「根本から探る人」(制限時間20秒)

 ポインタそのもの定義で理解できたあなたは、正直にいうと例え話が想像することが難しくないでしょうか?

 よく人から説教されるときに「○○さんの気持ちになって考えて見なさい」といわれて「分からない」と返したことでしょう。

 もちろんです。あなたはあなたであり、○○さんではありませんので。それは決して悪いことではありません。あなたが知りたいのは「例え」ではなく「構造の真実」です。

 というわけなので、参考書としては説明としてやや論文体で書かれているもの、そしてコードが書かれているものがよいです。さらに、白黒だということはありません。2色刷りが限度です。あまりカラフルなものは選ばない方がよいでしょう。

 なぜなら、白黒であると「自分が重要だと思った個所にマークができるから」です。

◆いかがでしたか?(制限時間10秒)

 さて、そろそろ1分なのでまとめます。参考書選びの大切なところは「自分は図と文章、どちらが分かりやすいか?」というところです。

 それは世間のモノサシでなく、勉強する「あなた」を基準にして選ぶべきところなのです。

 本屋で実際に少し読んでみて、理解できる方を買いましょう。

 人の意見は参考にするのはいいですが、あくまでも参考です。判断するのは自分です。

 以上が、簡単な選び方です。なお、レベルとかそういうことも細かく書くと1分ではまとめられないので要望があれば書かせていただくことにします。コメント欄やTwitterで意見をください。

◆好きです(制限時間なし)

 私はBタイプです。教科書には『C言語ポインタ完全制覇』(技術評論社)を使用しています。

 理解した「根本」を勝手に脳内で「比喩表現」に変換してこのコラムを書いています。なので、理解はB、説明するときはAタイプのようですね。「理解」と「説明」はまた別フェイズのようです。

◆おわび(ごめんなさい)

 前に「もごもご記事」を書きましたが、一個所修正があります。「cancan」ではなく「cancam」でした。思い込みって怖いですね。申し訳ございませんでした。

Comment(2)

コメント

ヴァン

こんにちは。

自分の場合、アセンブラが一番最初に覚えたプログラム言語なので、

>B.ポインタはメモリのアドレス

のほうがピンときますね。

とくめい

こんちは。
僕は、アセンブラとC言語を同時に覚えたのでどちらでもいいです。
説明するときは、相手の習熟度によって使い分けます。

コメントを投稿する