logo サブスレッド

はじめに

今日はエイプリルフールですが 本日、サブスレッドに入社した新入社員の清水です。 どうぞよろしくお願いします。

入社して初日、初めての仕事です。

本社は大阪にあるのですが、私は愛知県在住ですので、リモートワークという形で 自宅からの作業をしております。

自宅勤務ですので、集中できないとかひとりぼっちで寂しいとか想像されると思いますが 弊社では大阪、広島、名古屋の3拠点を常にビデオ会議のサービスで繋いでいる状態になっていますので、そのあたりは大丈夫です。

技術ブログということで、何か技術のネタを書こうという事なんですけれども ひとまずはコーディングの時に気をつけている事を書こうと思います。

コーディングで気をつけていること

僕がコーディングの際、気をつけている事はおおまかに以下の内容になります。

  1. 作法
  2. 命名
  3. ネスト
  4. 行間
  5. 見た目
  6. コメント

作法

これを一番重視しています。 言語だったりプラットフォームだったりで、コードを書く時の作法が存在することが多いので 迷った時は都度それを調べて、特有の作法が存在する場合はそれを適応します。

例えばAndroid Javaであれば、privateのフィールド(メンバ変数)のSuffixは「m」を付けたりとか iOSであれば「_」を付けたりとか。

最低限、以下は確認するようにしています。

  • ファイル名の命名規則
  • クラス名の命名規則
  • メソッド名の命名規則
  • 通常の変数の命名規則
  • フィールドの命名規則
  • インデントの数
  • インデントはタブなのかスペースなのか

命名

こんなことに気をつけています。 ただし、これに反していた場合でも言語やプラットフォームでの作法を優先にします。

  • 「tmp」「work」などの用途がわかりにくい命名。
  • 「get○○」「set○○」というメソッド。
  • 「count」「size」などの命名。

「tmp」「work」などの予測できない名前は避ける

用途がわかりにくいので、避けるようにしています。 ただし変数の寿命が数行と短い場合は、用途がすぐ分かるのでこの限りではありません。

「get○○」「set○○」というメソッド

このようなメソッドや関数は、一般的にはすぐ戻る事を期待しているため 処理がかかる場合は別の命名を検討します。

「count」「size」などの命名

何のカウント?何のサイズ?となってしまう可能性があるので 別の命名を検討します。

例えばダウンロードの数を保持したい場合は「downloadCount」としたり リトライの数を保持したい場合は「retryCount」としたり・・・

ネスト

よく言われるのは、できれば深くて3階層ということです。 引数のnullチェックや有効性のチェックを行う程度であれば チェック後、問題があれば return でメソッドを抜けてしまえば良いです。

行間

空行にも気を使います。 僕が気を使っているのは、処理のかたまりが終わった時点で1つの空行を入れ メソッド間では2つの空行を入れます。

ただし、Javaのインナークラス内のメソッド間で2行空けるのは 少し見栄えが悪い気がするので、この場合は1行にしています。

コメント

コメントは最低限

  • 処理の単位ごと
  • メソッド(関数)コメント

を書くようにしています。 メソッドのコメントは各言語で書き方があると思うのでそれに従います。 (JavaであればJavaDoc形式)

メソッドにコメントを入れることで、メソッド間の区切りがわかりやすくなり 見通しが良くなる効果が期待できます。

見た目

先の行間やコメントの話にも関連しますが 行間やコメントを入れる理由としては見た目の問題が大きいです。 行間やコメントが無いコードはパッと見たとき、読みたくないコードに感じられると思います。

一般的にコードを書くよりコードを読む時間の方が長いため、読んでもらうコードを書いたほうがみんな幸せになれるでしょう。

終わりに

技術ブログ最初の投稿ということでプレッシャーもかけられておりましたが ひとまずは無事書き終えてホッとしています。 もっと有益な情報を書くべく、日々アンテナを張りネタを見つけて行きたいと思います。

最後に僕の仕事場の写真を紹介して終わりたいと思います。

現在の位置:サブスレッド ホーム > 技術ブログ > はじめに