こんにちは、プログラミング学習中の@アルトと申します。
この記事では、自分がプログラミング学習を本を通じてするにあたり、わたし個人が気を付けている事を述べていきたいと思います。
折角勉強するのなら、効率よく有意義な勉強でありたい!と考えるあなたの役に立てれば幸いです。
1、そもそも論:自分のレベル感に合った本か見直そう
あなたはプログラミングをする際に、どのような本をチョイスしているでしょうか?
最短距離を走り抜けたいから難しい本から入る!という人も居るかも知れませんが、基本は自分のレベル感に合ったものをチョイスしておくのがベターだと私は考えています。
なので、身の丈に合った本を選ぶべきなのです。
ところで”自分のレベル感に合った本”とは一体なんでしょうか?
一言で言うのなら、文章をすんなり理解できる語彙力・理解度の本事を指します。
例えば自分のレベル感に合わない本をチョイスするとこういった事故が起こります。
1、数文節ごとに何の解説もなく専門用語が飛び出るため、何を言っているのか解らなくなる(語彙力不足)
2、読者がある程度の専門知識を有している事を前提に話が進むので、システムの導入方法や記法などの解説省かれて話が進み解らない部分や解決できない部分が残る(理解度不足)
そしてこの事故に巻き込まれた場合、
1、解らない単語の調査を頻繁にさせられる。
2、問題点をどう解決して良いかわからずに学習の足が止まる
結果、やる気がもげて勉強が続かなくなる
そうならない為にも、自分のレベル感に合った本をチョイスするのが大切です。
逆に自分のレベル感に合った本をチョイスする場合
1、解らない単語にちゃんと解説が入り、取り残しを喰らわない(自分の語彙力に対応している)
2、具体的な解説が丁寧に入るので、解らないまま取り残しを喰らわない(自分の理解度に合わせて適度な具体性を持った解説を入れてくれる)
この2要綱を守っていれば、理解できない事故に巻き込まれる事はないでしょう。
具体的に本を選ぶときは、内容を1章分くらい読んでみて理解が出来る(わからない部分を丁寧に解説してくれている)のなら買うべきレベルと言えますね。
逆に、解説が回りくどいと感じるのなら、あなたはその本を十分理解しているレベルと言えるでしょう。
さて以下からは具体的な本の選び方の解説です!
2、本はまえがきを確認して自分に合うかどうか理解してから買おう
まえがきを読めば、少なくともあなたに合う本かどうかすぐに理解できます。
大抵の場合前書きには、
・どんな読者向けの本なのか?(初心者向けか?初心者卒業したい人向けか?プログラミングに嫌気がさしている人向けか?)
・どんな意気込みで本を書いたのか?(理解してほしいのか?正確な事を知ってほしいのか?とりあえず動かす楽しみを理解してほしいのか?)
が解ります。
なお、前書きの時点で難解だと感じた場合、その難しいノリが本文に展開される可能性が高いから避けましょう。
「まえがき≒本の自己紹介」ですから、その時点で文体やら表現やら語彙の使われ方がおかしいなら、あなたにとっての地雷本と言えるでしょう。
こういう事前調査をせずに読んだ経済学の解説本の中身が、まえがきもろとも謎の哲学用語まみれで読む事さえままならなくなり千円近くのお金をドブに捨てた事を私は忘れない(涙)
3、本はもくじを確認して大枠を理解してから読もう
本を読む時には、まずもくじを確認し、全体を理解してから学習を進める方が、学習の効率にいい影響を与えてくれますし、理解具合もかなり良くなります。
特に新しい技術に挑戦しよう!という時ならなおさらです。
何故なら、目次を見れば、
・どんな順序で解説されるのか?
・どんな技術を使うのか?
・何の話がどこと連結するのか?
が、おおよそ理解できるはずです。
技術というのは何かの技術の連結によってできています。
例えば、for文はfor文だけで独立しているのではなく、classの概念やif文やアルゴリズムといった概念と、密接に連結しているはずです。
その連携が理解できていないまま学習すると、何のためにその技術の勉強をしているのか?が、解らなくなってしまうかと思います。
これは何かの技術書を読む場合においても同じです。
なので、まずは目次を確認して、どんな技術や話がどんな順番で出て来るのか確認してから勉強を進めましょう。
さて、ここまでもくじと、まえがきを見るという方法を用いて本の大枠が理解できれば、理解のしやすさも段違いになるはずです。
個人的なオススメは、本や段落の要素を3つの要素に纏めることです。3つ以上ある場合は、より抽象的に1つに括って何とか3つに抑えましょう。
人間、一度に何個もの情報が来ると記憶するのに問題が起きますが、概略で3つくらいにまとまっていてくれるのなら理解もスムーズに進むというものです。
「それだと正確な理解に繋がらない」という意見もあるかもしれませんが、細かい部分は後から埋め立てていくように理解すればOKです。
複雑なものは、まず大枠でとらえましょう。
3、メモは多用すべし
人は忘れる生き物です。想像以上に忘れる生き物です。
なので、メモはどんどん活用しましょう。
適切なメモがあると忘れた時に思い出す時間対効率と、調べる手間の時間を大幅カットできます。
つまり、理解を大幅にサポートしてくれる訳です。
なおメモを作る際は、解らない!となった時に、即座に思い出せるメモが良いでしょう。
1、基本はは新しい語彙(単語)を記述する。語彙を理解していれば文章は読めるようになるから。
2、語彙の詳細な解説は「専門書の〇ページ」という情報にしておく。メモは肥大化させない。
3、概念や技術の流れ/繋がりは、図か矢印で表現しておく。何と何が繋がっているのか解りやすくすると理解が深まる。
4、メモは何処でも気軽に取り出せるもの(やり方)にしておく。取り出しにくいとメモ運用が面倒くさくなる。(個人的にはGoogleスプレットシートがオススメ!)
この2点を守っていれば、使い勝手のいい覚え書になります。
学習のサポートにメモは必須です。メモ帳はどんどん使いましょう!
PS:記事の内容が技術の話ではなく、技術を覚える為の話のためQiitaの規約的に大丈夫か確証が持てずにいます。この記事が規約上問題ならば教えていただければ幸いです。