早く作るより大切な事

Silicon Valley Super Ware

2020年6月24日


早く作るより大切な事

今週は「品質」の話をお届けしています。
仕事でWebサービスを作る場合「納期」はとても大事な物です。 しかし、何度もお伝えしている通り「品質」はそれよりも重要な物です。

納期に間に合っても、品質が悪ければそれを直す作業が必要になります。

結局、手直しが多いと、依頼された仕事を期限前に納入しても実際の運用は 後ろにずれこんでしまいます。依頼主にとってそれは、納期を守れなかったのと同じです。

品質を作る別の方法

前回は、「Typescript」を引き合いに出して、厳格に型をチェックできる仕様の プログラミング言語を使う事でコードの品質を上げる事ができる事を紹介しました。 手間はかかりますが、長い目で見れば検討する価値のある方向です。
前回の投稿で触れていますが、その本質は、Typescriptを使う事ではなく、 型に対する意識をきちんと持てばJavaScriptでも品質を上げて行く事は不可能ではありません。

一番大切なのは、品質の高いコードを書くという「意識」です。

今日の投稿は今すぐ始められる品質の高いコードを書く「秘訣」です
もちろん、その秘訣もいろいろありますが、今日紹介するのは

「ハードコーディング」を避けるという事です。

ハードコーディングというのはご存じですか? これは、コードの中に直接「値」を書くスタイルのコーディングです。 例えば、数値や文字列「"xxxxxx"」みたいな書き方です。

ハードコーディングはどうして「問題」か?

大きく2つの理由があります
  • コードが読みにくくなる
  • 修正が大変な場合が多くなる
これが、大きな理由です。 特に数字の場合は、プログラムを書いている場合は良いのですが、 作ってから少し時間が立ってからプログラムを修正したり、機能を追加するときに 「あれ!?」となる場合が多いからです。 例えば、「1」という数字を男性を意味するような目的で使って、 「2」を女性を意味するような使いかたで使う場合です。

数字を見ただけでは時間が立つと何のことだか分からなくなります!

これを、「const MALE = 1」「const FEMALE = 2」の様に書いておくと、 後で見ても分かり易くなります。
後は、ファイルなどを読み込む際に「キーワード」を探す場合があります。 例えば、「DATE:」で始まる行に対して何か処理を行う場合、 「if (line.indexOf("DATE:") === 0)」の様に各行が沢山ある場合などです。 プログラムを書いている時の手間は変わらないのですが、これを 「const DATE = "DATE:"」としておくと、後でファイルの形式が変更になって 「"Date:"」になった場合でも、変数にしておけば一か所直すだけで済みますが 直接「値」を書いていると、何か所も直さなければいけません。
プログラムは、修正したり機能を追加して「進化」していくものですし、 あなた以外の人(作った人でない人)が手を入れる事も良くあります。 そうした将来を見据えてコードを書いておくと、プログラムの保守性は 格段に良くなります。
プログラムにコメントを入れるのは、後からコードを読むときの助けになります。 しかし、コメント以外でもプログラムを管理しやすく出来る工夫はこのように いろいろあります。

チームの良い点は?

こうしたちょっとした意識や気遣いでコードの品質は格段に良くなるものです。 会社などでグループやチームで開発をする場合は、経験豊富な人の綺麗なコードに 触れる機会も多くなります。
そうした、質の良いコードに触れる事で、良い「スタイル」の書き方が分かってくるものです。

フリーランスの場合、そういう機会が少ないのは不利な点です!

チームでの開発は、いろいろ教われるということ以外にも、良いコード、悪いコードに 触れる機会が多くある事は大きなアドバンテージになります。
では、フリーランスがだめかというと、そう悲観的になる必要もありません。 現在はインターネットのおかげで、良いコードに触れる機会も増えてきています。 GitHubなどで公開されているコードに触れる事で、チームで得られるような機会を 見つける事も可能になっています。

もう一つの方法は?

インターネットで沢山のコードが公開されているのは事実ですが、 最近の問題は、余りに沢山のコードがあって何を見てよいのかわかならいという問題もあります。 特に勉強を始めたばかりの場合、どれから見て何を真似したらよいのかもなかなかわからないものです。
そうした場合は、「経験者に聞く」という方法は良い方法の一つです。
自分でいろいろなコードを見て見つけるよりは、短期間で良いコードを書くコツを 掴むことができるというのは最大の魅力です。
シリコンバレースーパーウエアでは、Webサービスの作り方だけではなく、 質のよいコードの書き方も指導しています。 Webサービスを作るだけではなく、どのように品質を確保するかをシリコンバレー仕込みの 考え方で実践する方法を受講生の方にお伝えしています。

興味のある方は今すぐお問合せください!



またよろしければ、ニュースレターの登録をお願いします!大体週一回お届けしています。ブログよりは一歩踏み込んだもっと濃い内容を発信しています。


Copyright(c) 2020 by Silicon Valley Super Ware, all rights reserved.

コメント

このブログの人気の投稿

ユーザーインターフェースの設計

足し算以外もできるようにする

改良版足し算プログラム