プログラミングを人に教えることが趣味の、弓削田です。
初心者プログラマーの人は、プログラミングスキルを伸ばしたいと考えていると思いますが、
それは技術に詳しくなる事、色々なケースでのプログラミングに対応する経験を積むことなど、即座に身につくものではないものです。
中にはプログラミングコンテストなどに参加して、いい成績を残したいと考えている人もいるかもしれませんが、
多くのプログラムを学習する人は、「自分の作りたいプログラムを作れるようになる」ということが目的になっているのではないでしょうか。
プログラミング初心者のつまづきやすいポイント
- 学習をしている時に、わからない事があって先に進めなく鳴る。
- 分からないポイントが分からない状態。
- 手始めに何をどうすればいいかを理解できていない。
- webで検索する術を知らない。
- そもそも、自分はITが苦手と思い込んでいる。
- 思っていた通りの結果にならない時に、自分は向いていないと考えてしまう。
プログラミング学習だけでなく、何かを新しく始めた時に、似たような理由で挫折しがちですが、
これを乗り越えると、スキルアップできるんですが、自ら苦手と考えてしまうとこれが非常に高い壁になるようですね。
プログラミング学習の効率的なポイント
プログラミング初心者が学習するポイントは、基礎も大事ですが、プログラミングで何を目的にするかをハッキリさせることです。
闇雲に学習をして、知識を詰め込んでも、それを上手に使う方法や、実際のプログラム作業での応用がなかなかうまく結びつかなくなります。
初心者じゃなくて、少しかじった程度で仕事をゲットできたプログラマーの人も、いざプログラムの仕事をしようとしたら、思ったとおりにプログラミングできないという事も少なくないようです。
もちろん、一番いいのは、そうした経験をたくさん積んで、ケーススタディによる学習をすることで、自らスキルアップをしていくことは、悪く有りません。
この方法のデメリットは、非常に時間がかかるし、経験したことが無いスキルは、まるで身につかなくなってしまいます。
僕の考える一番いい方法は、「人のためのプログラムを作る」という事で、作ったプログラムのフィードバックをもらえると、より加速して学習できるという事を体感しました。
もちろん、仕事をするということは、似たような経験ができるし、ほぼ確実にフィードバックはもらえるのですが、そのフィードバックに対してどうすればいいかという思考を適切に対応できなければいけません。
やはり望ましいのは、そうした先導役をしてくれるメンターという存在がいる状態とも考えられますね。
汎用性のススメ
そして、実際にプログラミングをする時に、1つのプログラムとして作るのではなく、複数のシステムで使えるライブラリを作るように、色々なパーツを汎用的な感覚で作り、
その作ったパーツを実際に、組み合わせて他のプログラミングでも利用できるようにすると、非常に効率的になることは言うまでも有りません。
優秀なプログラマーは、実はこうした思考でプログラムを常に構築しているので、それをいち早く身につけるというだけなんですが、
いざやってみると、なかなか難しいという事がわかります。
でも、この汎用性の思考が無く、その場限りのいきあたりばったりのプログラムを作り続けても、実はプログラム能力も、自分の作った成果物もあまり評価ができるレベルのものとは程遠くなってしまうでしょう。
初心者も中級者も、「汎用性を意識すると良いいかもね。」という話でした。
自分の人生も汎用性を考えてみると、仕事もプライベートもうまくいくかもね。
0 件のコメント:
コメントを投稿