【エンジニアになりたい人向け】独学でプログラミングの基礎を効率よく学習する方法
IT業界でエンジニアとした働く場合、システムエンジニアやプログラマーといった形で働くのが、一番オーソドックスな働き方だろう。ところが、プログラミングのメンターとの相性の悪さから、全然スキルが上達しなかったり、無駄な費用ばかり掛かってしまうこともある。
今回は、プログラミングを知らない人が、どうすれば効率よく独学でプログラミングの基礎を学習できるのか?について解説する。
プログラムは言語と同じ。言語には骨格がある。
プログラムは、プログラミング言語といわれるいくつかの言語がある。例えば、
- Java
- PHP
- Ruby
- C# / VB.NET
- Python
- Go
- Swift
- Javascript / jQuery / node.js
といった言語がある。
一般的に、我々が会話や筆記で身に着ける言語の場合は、主語・述語・動詞、つまり、SVCやSVOといった言語の骨格を必ず学ぶのだが、なぜかプログラミングを学習したり教えたりするときは、その骨格を忘れてしまっていることが多い。
実は、その骨格が一番重要で、独学であれ講座で学ぶ場合であれ、プログラム言語の骨格さえ抑えておけば、どのような言語も簡単に習得することができる。
では、その骨格とは何なのか?
プログラムの骨格、それは制御構文だ
プログラム言語の骨格にあたるのは、制御構文といわれているものだ。
制御構文には、大きく2つの要素が存在する。
条件分岐
制御構文の1つに条件分岐がある。条件分岐とは、
といった形で、Aという条件のときBの処理を行うように指令を書いたものだ。
一般的なプログラミングで使われる条件分岐としては、
- if文
- switch文
の2種類がある。
if文は最もよく使う条件分岐の制御構文だ。一方switch文は、かなり多くの条件判定(if … elseif … elseif … end if)を伴う場合に用いるケースが多い。
最近では、三項演算子と呼ばれる書き方をサポートする言語も出てきたが、ここでは割愛する。
繰り返し
次に、制御構文として重要なのが繰り返し処理だ。
繰り返し処理は、
- for文
- while文
- do … loop文
といった書き方が主流だ。
決まった回数だけ繰り返したり、配列の中身をすべて繰り返したりする場合(foreach …)は、for文を用いる。
一方、特定の条件で繰り返しを抜けたり、特定の条件を見たいしている場合のみ繰り返しを行うときは、while文やdo … loop文を用いる。whileやdo … loop文は、場合によっては無限ループが発生してしまうので、書き方には注意が必要だ。
制御構文を理解するためにも、サンプルコードをプログラミングする
制御構文の概念を習得したら、後はひたすら手を動かして、習得したいプログラミング言語の制御構文を把握し、体で理解する。
最初に手を動かすべきタスクは、サンプルコードをプログラミングすることだ。
大抵の言語は、チュートリアルやサンプルコードが少なからずネット上に公開されている。
そのサンプルコードを実際にプログラミングして、手に覚えさせていく。
制御構文を意識して、簡単なロジックをプログラミングする
制御構文について理解出来たら、次はロジック(処理の流れ)をプログラミングしていく。
最初の段階では、難しいロジックを組み立てるのは至難の業なので、簡単なロジックをプログラミングする習慣を身に着けるとよいだろう。
例えば、
- 消費税計算
- 送料計算
- 労働時間計算
といった、簡単な計算ロジックを実装していく。
それに慣れてきたら、
- 電卓
- カレンダー
といった難しいロジックを伴う処理を実装していくとよいだろう。
最後に
ここまで、プログラミングを効率よく学習する方法についてお伝えした。
但し、WebサービスやWebアプリケーションを構築するとなると、この学習だけでは不十分だ。
次回以降は、WebサービスやWebアプリケーションを開発するためのプログラミングの学習方法について解説する。