プログラムって色んな書き方があるんだよ | A Day In The Boy's Life

A Day In The Boy's Life

とあるエンジニアのとある1日のつぶやき。

あなたがプログラムを理解できない10の理由:第1回 @ builder


非プログラマーがプログラミングを始めた際にそれをよく理解できないのは、プログラマー特有の構造化する能力が育っていないためと「プログラマー脳 」の記事で書いてみました。

一方で、ある程度プログラミングができるようになって、でも初心者のレベルから抜け出せない領域にいる人は、もう一つ注意すべき観点があると感じます。


それは、「プログラムって色んな書き方があるんだよ」という点。

プログラミング初心者は、どういう書き方をすればよいのかまだよくわかっていないので、参考書やネットからの情報を頼りにプログラミングをしてみる人が多いですが、一つ思うのはあまりにその情報に固執しすぎているのでは?という点です。


あるロジックを組み立てるのに、参考書の情報の中でそれに近いサンプルプログラムからコピペして動かそうとしたりしますが、一発ではなかなかうまくもいきません。

で、その際に何処が悪いんだろうと言う事になるのですが、そこで考えるのはそのサンプルプログラムのロジックありきで考えてしまっていると言うことです。

自分で何かその他の方法を工夫するのではなく、コピペした領域は正しく動くはずだと思い、その他のところで何かおかしい点を探していたりするのですが、そもそもそういうロジックを書かずともその他の方法があるんだよというところになかなか気づきません。

つまりはあまりに情報を鵜呑みにしすぎているという事。


例えばあるデータから正規表現を使って情報を抽出したいと考えた時に、一生懸命に正規表現のサンプルプログラムを眺めてたりするのですが、そもそも正規表現を書かずともそういうロジックを組み立てる事は可能です。

(プログラムとしてどちらが最適化されているかは置いておいて)

あまりに正規表現の書き方に固執して時間をロストするよりは、その他の方法でまずはプログラムを動かせる状態に持っていって見るほうがプログラミングの楽しさも分かりますし、多様な思考方法が身に付きます。


これって、社会に出たんだから政治・経済の本ぐらい読まないとね、と思って難しい書籍を買ってみたけど、内容がちんぷんかんぷんで挫折してしまうと言う事と同じです。

まずは自分の能力にあったやり方を身に付けるということが大事かと。


何れ紆余曲折して、プログラミングの世界でスタンダードなフレームワークやデザインパターンの世界にも足を踏み入れていく事になります。

正規表現の話も同じで、何れ正規表現という優れた方法があるんだというところに行き着いて、それを学ぶ事ができます。(または学ぶ羽目になります)

最初からその世界に飛び込むことも可能ですが、先ほど述べた例のように多くは難しすぎて挫折します。

何れたどり着くからといって一気に2段、3段飛ばしで階段を駆け上がるのはリスクもあるのでまずは一歩ずつ確実な経験を積んでいく事ではないかと思います。