(このページはまだ書きかけです。)
プログラミングを学ぶにあたっては、心構えが重要です。
きちんと心構えをして学ぶのと心構えをしないで学ぶのとでは、雲泥の差があり、上達の度合いに大きな差が出ます。
そこで、プログラミングを学ぶための心構えを示します。
(ここではC言語を対象にしていますが、他のプログラミング言語でもほぼ同じです。)
#contents
*Level 1: これからプログラミングを学び始めるなら [#wed3eabf]
**プログラミングは知識ではなくスキル [#iae8eab0]
デジタル大辞林によると、スキルとは、「手腕。技量。また、訓練によって得られる、特殊な技能や技術」です。
プログラミングを学ぶということは、プログラミング言語についての知識を学ぶだけでなく、プログラミングのスキルを獲得するということであり、そのためには訓練が必要です。
皆さんの身近なものに例えると、自転車、水泳、スノーボード、料理などによく似ています。
自転車に乗れるようになるためには、自転車そのものや自転車の乗り方についての知識がある程度は必要ですが、知識を得ただけで自転車に上手に乗ることはできません。
実際に自分でやってみて、何度も練習して、上手に乗れるようになります。
プログラミングも、プログラミング言語そのものの知識を学んだだけでは実際にプログラミングができるようにはなりません。
実際に自分でやってみて、何度も練習して、上手にプログラミングができるようになります。
**良い道具を使う [#ndafce00]
**プログラムを見ただけでわかったつもりにならない [#pe3dfe67]
**とにかくやってみる [#dd66d475]
スノーボードやスケートでは、失敗したら怪我をしたり、最悪の場合には死んでしまうかもしれません。
でも、最初のうちは、プログラミングで失敗しても何も失うものはありません。
とにかくやってみましょう。
**文字の違いに気をつける [#x23ff807]
プログラミング言語は文字の違いには厳しいです。
次のプログラムは正しいプログラムです。
#geshi(c){{
int main(void) {
}
}}
でも、次のプログラムは正しくありません。
#geshi(c){{
int main(void){
}
}}
上のプログラムと同じように見えますが、このプログラムは全角の英字で書かれています。
また、次のプログラムも正しくありません。
#geshi(c){{
Int Main(Void) {
}
}}
このプログラムは一部が大文字で書かれています。
人間はmainと書かれていてもMainと書かれていても同じように理解しますが、コンピューターは違うものだと理解します。
このように、プログラムを書くときは、文字の違いに気をつけましょう。
**上手なプログラムを真似る [#e751813a]
*Level 2: Hello Worldができたら [#m84057d0]
**プログラムを綺麗に書く [#hdecef90]
プログラムを綺麗に書かないと、プログラミングは上達しません。
たとえば、最初のサンプルとしてよく出てくるHello Worldプログラムは次のようなものです。
#geshi(c){{
#include <stdio.h>
int main(void) {
printf("Hello World!\n");
}
}}
たったこれだけのプログラムにも、以下のような工夫がされています。
-#includeで始まる行の次の行を空行にして見やすくしている
-{ の行が始まる位置とそれに対応する } が始まる位置を揃えて対応をわかりやすくしている
-printf命令を字下げ(インデント)して、{ } に囲まれている行をわかりやすくしている
次のプログラムは、C言語として間違ってはいませんが、とてもわかりにくいです。
#geshi(c){{
#include <stdio.h>
int
main
(
void
)
{
printf
(
"Hello World!\n"
)
;
}
}}
プログラムは綺麗に書きましょう。
**いつでも動かせるようにしながら少しずつ完成させていく [#b42f44e8]
プログラミングの勉強をしていくと、だんだんプログラムが長く、複雑になっていきます。
長く、複雑なプログラムを一気に書き上げてコンパイルすると、大量のコンパイルエラーになってしまうことがよくあります。
そこで、プログラムを書くときは、1行目から順番に書くのではなく、いつでもコンパイルして構文エラーをチェックできるようにしながら書きましょう。
たとえば、Hello Worldプログラムの場合、最初から書き始めて次のようなところで中断すると、コンパイルはできません。
#geshi(c){{
#include <stdio.h>
int main(void) {
p
}}
でも、次のようなところで中断した場合には、コンパイルができて、ここまでの部分に構文エラーがないことを確認できます。
#geshi(c){{
#include <stdio.h>
int main(void){
}
}}
**上手に書けるようになるまで同じプログラムを何度も作る [#u25c3020]
**コンパイルエラーは最初から一つずつ直す [#c9ae083c]
**コンパイルエラーにならないときはprintf命令でデバッグする [#ca9a2fa0]
*Level 3: ある程度プログラミングができるようになったら [#n28062b8]
**複数のプログラミング言語を学ぶ [#l78afa15]
**デバッガを使ってデバッグする [#h703b869]
**開発環境を使ってプログラムを作成する [#wee58a96]