プログラムの考え方

 

これもよく聞く話だけど、”プログラマやシステムエンジニアは、理系の方がいいの?”

といわれていますが、私は、関係ないと思っています。

文系・理系と分けるのがナンセンスだって話は置いておくとして、何かアプリケーションを作るという段階においては、専門性が重要視されるだけで、それが文系だろうが理系だろうが関係ない事です。

専門性は、八百屋でもいいし、アプリケーションを必要だから作っていくが取っ掛かりとしては、一番わかり易いのです。八百屋さんでも、帳簿を付けます。それは帳簿のソフトがあると思います。でも、八百屋特有の仕入れや管理には適していないかもしれない。その時に、今ある物で我慢するか、手書きに戻るかではなく、手書きでやる事をアプリケーションにしてみるという考えが、プログラムの最初なのです。全体は無理かもしれない。それなら、一部だけでもいい。そうして、作ってみれば他にはない専門的な物が出来上がってきます。

簡単に言っていますが、そのアプリケーションが難しいといわれるのかもしれないが、それは当然です。
それを生業としている人が居るのですから・・・。そう言ってしまえば話は終わってしまいますが、その生業としている人と同じ事ができると考えるのではなく、自分が必要としている物だけを作る事に集中すればそれほど難しくないでしょう。

プログラムを大きく考えれば、運動会の順番もプログラムという。あれと同じで、まずは自分がやりたい事の手順を紙に書き出す所から始めればいい。
書き出せれば、プログラムの前段は終わった様な物だ。
そこから、今度は、その一つのてzyんをまた細かくしていけばいい。その時に、出てくるのが、
”判断”と”繰り返し”だ。八百屋なら、みかんの在庫が10個を下回ったら仕入れるとかなると思う。これが判断になる。
店頭に、3個ずつにした玉ねぎを台の上に並べる場合は、何回並べるのか解らないがこれが、繰り返しになる。

こうして、業務を細かく細かくしていけば、次に実際に人間がやる事と、アプリケーションにやらせる事を区別する。
人間がやる事は、人間がやればいい。アプリケーションにやらせる部分は、ここまでできていれば、実際に言語を使って記述するわけだが、ここからは言語の世界の話しになってくる。

でも、プログラムはできるようになっているのは間違いない。言語知識が足りないだけという事になる。
ここまで来てやっと言語の選択になるというわけです。