【脱プログラム初心者に送る】要件(やりたいこ)をプログラムにするときのコツ(第1回)

プログラム脱初心者の方法Programing
Photo by Jesus Kiteque on Unsplash

脱プログラム初心者に送る、要件をプログラムにするときのコツを Sagasoon。

今回は、細かな技術をご紹介するわけではないです。
どちらかというと、「脱初心者な考え」といったらいいでしょうか。

脱初心者としてすべきこととして「要件の落とし方が読みやすいコードを書く」ということを、順を追って書いていきます。

全3回に分けて、具体的に書いていきますので、脱初心者を目指している方、是非読んでください。

【脱プログラム初心者に送る】要件(やりたいこ)をプログラムにするときのコツ(第2回)
プログラム初心者の方へ送る、脱初心者のためのお話をさせてください。全3回で、今回は2回目。前回の内容を、「図式化」してご覧にいただきます。図式化すると、色々なことが整理されてみえてきます。 この整理された内容を使ってプログラムを進めていけば、脱初心者間違いなしです。技術的な話題ではなく「考え方」が強いですが、お付き合いくださいませ!
【脱プログラム初心者に送る】要件(やりたいこ)をプログラムにするときのコツ(第3回)
プログラム初心者の方へ送る、脱初心者のためのお話をさせてください。全3回で、今回は最終話の三回目です。前回図式化した内容を、コーディングにうつします。コーディングにうつすといっても、1:1で簡単な話ですが。脱初心者間違いなしの話題になってます。技術的な話題ではなく「考え方」が強いですが、今回もお付き合いくださいませ!

前置き

お仕事などでプログラムを組む場合、「ご要望」(要件)というのが付きまといます。
たとえばですが、

配列の内容をソートして、上位10件だけ、そこに書いてある数式で集計しておいて

という依頼があるとしましょうか。
この依頼は、プログラムコード上での話をお願いしてますよね。
指示してくだすった方は、おそらくプログラムが分かっていて、全体構造も頭に入っている方なんでしょうね。

ただ、通常、そんな「要望」は来ないです。

売り上げ上位10人について、傾向分析した結果を出してくれ

みたいな、お話できます。

要望を持った人が「やりたいこと」というのは、「プログラムでこうつくってくれ」じゃないですからね。

そんな話をもとにして、プログラムをどう組めば幸せなのか、少し書いておきたいと思います。

お客様は外国人。我々はプログラムに翻訳をする技術者

こちらは「プログラム言語」を話す立場。
要件を言ってくるお客さんは、違う言語を話す外国人。

私は、そう思ってプログラムを組みます。
ですので、お客様が話す言葉を、我々は翻訳するってことです。

翻訳家として大事なこと

ある種、我々は技術者というか翻訳家なわけです。

翻訳家にとって大事なことはなんですかね?
例えば、大事なことを2つ挙げるとすると、こんなことでしょうか。

  • 正しく翻訳されてる
  • どの言葉(要件)が、どこのプログラムになってるか分かること

「正しく翻訳されている」というのは当たり前ですかね。違うことしてたら大変ですね。
2個目の話も、皆さん気を付けることが多いかもです。
「プログラムにコメントを入れる」という行為をするかと思います。
「この処理は、こうゆうことだからね」的なものから、「この要件について書いてるからね」というところもありますよね。
ですので、この2件はたいてい意識してプログラムしている(コーディングしている)と思います。

脱初心者として、もう一歩踏み込む

前項目で記載した2つのことにあわせて、もう1つ観点を入れると「脱初心者」になれます。
間違いないです。

何を何に翻訳しているか、分かるようにしておく

たとえば、

要望 を どんな要望にかみ砕いたか

とか

要望 を どんな実装にしたか

と言ったらいいでしょうか。

例えば、お客さんが何かを追加要望してくる時、プログラムのどの部分であるかなんて意識することはないです。
「要件」で伝えた内容に対して、言葉を追加してきますよね。
毎回その言葉を聞いて、どこに該当することだろうとやっていては、すごく疲れます。
だったら、最初から、

要望が実装に直結している書き方をしておく

のがいいです。

ご注意
念のために言っておきますが、汎用性のない、要望だけをプログラムしました的な作りをしてほしいと言ってるわけではないですからね。
あくまでも「入口」のお話です。

まとめ

第一回目、いかがだったでしょうか?
脱初心者のコーディング方法のコツを、私なりに考えることを1点とりあげて記載してみました。

さて、今後あと2本続きます。
第二回目は、もう少し具体的に図式化して内容をお伝えしていきます。
第三回目は、その内容を、コーディングにどう反映するかをお伝えするつもりです。

尚、こういったコーディングの方法が分かってくると、いわゆる設計レベルのことや、UMLなどのシステムの図式化などが、とても入りやすくなるかと思います。
是非、脱初心者を狙う方は、真似してみてくださいませ。

【脱プログラム初心者に送る】要件(やりたいこ)をプログラムにするときのコツ(第2回)
プログラム初心者の方へ送る、脱初心者のためのお話をさせてください。全3回で、今回は2回目。前回の内容を、「図式化」してご覧にいただきます。図式化すると、色々なことが整理されてみえてきます。 この整理された内容を使ってプログラムを進めていけば、脱初心者間違いなしです。技術的な話題ではなく「考え方」が強いですが、お付き合いくださいませ!
【脱プログラム初心者に送る】要件(やりたいこ)をプログラムにするときのコツ(第3回)
プログラム初心者の方へ送る、脱初心者のためのお話をさせてください。全3回で、今回は最終話の三回目です。前回図式化した内容を、コーディングにうつします。コーディングにうつすといっても、1:1で簡単な話ですが。脱初心者間違いなしの話題になってます。技術的な話題ではなく「考え方」が強いですが、今回もお付き合いくださいませ!
炭酸野郎

今日も何かを Sagasoonを運用してます。炭酸野郎です。
皆さんの「何か」が探せるべく、記事書いてます。
新卒で中堅SIerに就職→10年ちょいで退職→フリーランス→起業。副業としてのブログに目覚める(今ここ)。
時間作って、色々なことがやりたいお年頃です!

炭酸野郎をフォローする
Programing初心者IT
炭酸野郎をフォローする
SAGASOON

コメント

タイトルとURLをコピーしました