どうすればプログラムが作れるようになるの?
- C言語を知ってる?
- C#言語で作ろう!
プログラミング言語をマスターすれば、あたかもプログラムが作れるような風潮があります。
当然、プログラムを作るためには、プログラミング言語をマスターする必要があります。プログラミングにとって、言語はとても重要な位置づけです。が、思考はさらに需要です。
言語学習からスタートする「落とし穴」
コンピュータの思考を理解しないまま言語仕様(文法)を学ぶと、どうしても言語の書き方が中心になってしまいます。さらに、言語固有の仕様まで学習するため基本があやふやになってしまうことです。
自然と、プログラムを言語仕様で考える「思考」を身に付けてしまうのです。
「人が与えた2つの数値を掛け算して、その結果を画面に表示しなさい」
この問題は単純なので、頭で理解して直ぐにプログラムを記述できます。
ところが、もっと複雑な問題の場合はどうでしょう。
問題を流し読みして、プログラムコードで考え、それを繰り返してプログラムを作り上げ、
こんなことになってしまいます。
- 時間がかかります
- 手順が最後になってしまいます
- プログラム全体の流れが曖昧になります
- 完成しません・・・プログラムが思いつかない、エラーになる、動かない
問題を理解し、手順を考えてから、プログラムを考える
プログラムを考えて、手順に間違いがあれば、手順を見直す
一見簡単そうに思えますが、言語学習を始めると忘れてしまい「プログラムコードで考えてしまいがち」という罠にはまってしまいます。その理由は三つの要因がが原因です。
- 一つは、言語仕様特有の機能です。知らないコードの記述方法やこんな時どう記述すればいいのという状況にはまってしまうケース。
- 一つは、ライブラリです。どんな機能があり、どう書けばいいのかを試しながら繰り返しコードを書くケース。
- 一つは、一般書籍やWebサイトなどの言語入門では「手順」のことについて多く語っていないケース。コード中心の解説の場合、手順=思考がおざなりになってしまいます。
人がどう言うおうと、信念をもって
「手順(=思考)中心で考え、プログラムコードに展開する」
これを実践することが大事です。
そのためには、
- コンピュータの思考と言語基礎を先に学習する
- プログラミング言語仕様(文法)学習へ進む
- 客観的に考える癖を身に付ける・・・はまったら、いったんコードを書くのはやめて冷静に考えること
気をつけなければ、誰しもはまってしまう落とし穴なので注意しましょう。いつまでも、抜け出せないままのプログラマーは実在します。