hishidaの開発blog

EBシリーズ(EBPocket,EBWin,EBMac,EBStudio),KWIC Finder,xdoc2txt,読書尚友の開発者ブログ

独学のすすめ

iPhoneandroidのような新しいプラットフォームが登場することで、今まで経験のないプログラミング環境の習得を余儀なくされることがある。
こういう場合、短期間に効率よく学習するにはどうすればよいか。誰しも苦労していると思うし、自分も日々苦闘している。自分の経験もふまえてコツをまとめると、だいたいこんな感じになるかと思う:

  • 入門書がある場合は、数冊読んで概要を理解すると、時間が節約できる。もちろん、新しい分野や技術の場合には、最初は入門書はないので、公式ドキュメントをあたるしかない。今ではiPhoneandroidも入門レベルの本が山ほどあるので、適当なものを読めばよいと思う。むしろクズ本を避けるのに苦労するほどだ。ただし、入門書が役に立つのは最初だけで、数日から1週間で役に立たなくなるのが普通だ。自腹で書籍を買う場合は、きちんと基礎を説明した、再読に耐える書籍か、リファレンスとして後々まで使える書籍を買った方がいい。
  • 習うより慣れろで、早い段階で開発環境(iPhoneならXCodeAndroidならEclips)になじむこと。
  • チュートリアルを実習する。androidなら、Developer ResourcesのなかのTutorials。iOSの場合は、Apple自身の提供している良質な和訳のドキュメントとチュートリアルがあるのでお薦め:
  • SDK付属のサンプルプログラムを研究する。はじめは片っ端からコンパイルしてみる。
  • 公式のマニュアルの参照の仕方を覚えること。これはとても重要。ちなみに、androidiOSもオフラインでドキュメントを参照できます。(android の場合は、$SDK_ROOT/docs/index.html、Xcodeの場合はヘルプ→デベロッパドキュメント)
  • 後は開発しながら知識を豊富にしていく。いろいろなブログで公開されているTips集もかなり役に立つので、個人的にブックマークを作っておくと便利。ただし個人のブログのサンプルコードは間違いも多いので信じすぎないこと。
  • できれば自分のTips集をつくっていくとよい(と思いながら、できたことがないが)
  • SDKがバージョンアップされたら、時間はなくともリリースノートだけは目を通すこと。

さて、標題の「独学のすすめ」に戻る。実際は、独学というのは効率が悪いと思う。各種学校があるのは、先生や教師から体系的に教えてもらった方が、学ぶに容易で、時間的に有利だからに他ならない。
けれども、体系化されたカリキュラムというのは、実は最新の知識ではない。iPhoneandroidも現在進行形の技術であり、入門書が出る頃には既に内容が古くなっているのが現実である。
何がいいたいかというと、実際に社会に出て役に立つのは、「独学の能力」だということ。

福沢諭吉は初め蘭学を修めたが、横浜に出て看板がすべて英語なのに驚き、落胆したという。だが福沢諭吉が偉かったのは、そこから一念発起して英語をゼロから学習したことだと思う。この精神に学びたい。