開発部だより 第406回
プログラム開発者は、ソースはちょっとの時間を見れば、自分で書いたものか他の人か書いたものか、たいていすぐに判ると思います。これは同じことを実行させるプログラムでも、人間ごと書き方に好みやクセがあるという事です。
ただ、JavaScriptと言えどもある程度の大きさのプログラムになればチームで開発をおこなうので、各々が自分の好きなように書いていては混乱の元です。そこで書き方を統一するコーディングガイドを用意するのですが、全員が納得するルールを決めるのはなかなか難しいです。
インデントはTabかスペースか、スペースなら2,4,8個のどれにするか。どれにしても完成機能に変化はないのですが、これらが違うと目に見える印象が大きく変わってしまいます。慣れないルールでは違和感しかなくて、開発効率は下がってしまうでしょう。
そこで、出来るだけ多くのプログラマーが違和感を持たないように、また複数の選択肢があってもルールの決定に明確な理由を示すことができるように考えて、結果 SATT smart 教材作成ツールの開発ではインデントをスペース2個、クォーテーションをシングルで統一することにしました。
◆JavaScript Standard Styleを基本にした
JavaScript Standard StyleはGitHubやnpmで使用されているコーディングルールです。
どちらも頻繁に見るサイトなのでこのスタイルには見慣れた人が多いと思います。
これの標準がインデントはスペース2個、クォーテーションはシングルです。
これらのサイトからサンプルをコピって試すことがよくありますが、ルールがあっていればコーダーに張り付けた瞬間Lintエラー地獄が始まることもありません。とても助かります。多分これだけでもこのルールを採用する理由としては十分強いと思います。
私自身それまでTabとダブルクォート派で、はじめはかなり違和感がありましたが2日程度ですっかり慣れました。
なおCSSではstylelint-config-standardを基本にしました。JavaScript Standard Styleにデフォルトで近いので良好です。
◆それでも、慣れ親しんだインデントとクォートじゃなきゃイヤと言う場合
まあ仕方ありませんね。開発中は自由な設定にしてても良いので、commitする前にはオートフォーマットや全置換でルールに合った形に変換してもらいます。
プログラムは人間が作るものなので、できるだけ人間がストレスを感じないようにしたいですね。それが最終的には良い製品につながると信じて今日も開発を進めています。