開発で気をつけてること

2024/05/23に公開

全般

変数は省略しないこと

例えば、

isAd

などの意味の分からない変数は使わないようにする。
上記のadは、advertisementのadであった。

固定値はUnion型にする

"illust"

を使いたい場合は、

type Xxx = "illust" | "xxx"

とする。

Emptyを表現する際には空文字を使わずNULLにする

const [albumId, setAlbumId] = useState("")

ではなく

const [albumId, setAlbumId] = useState<null | string>(null)

とする。

マジックナンバーを使用する際には意味を定義しておく

使用しているサービスのID

const [usedServiceId, setUsedServiceId] = useState("1")

の際に、"1"がなにか不明なので下記のようにEnumとマジックナンバーの変換を持ったオブジェクトを定義する。

const Aaa = "1" as const
const Bbb = "1" as const
type Xxx = Ass | Bbb

GraphQLの方ではマジックナンバーを受け取らないようにEnumにする。

コメント

Docコメントの書き方

type Props<T extends BaseModel> = {
  /**
   * Firestoreのコレクションパス
   */
  path: FirestoreCollectionPath
}

コードの右にコメントを書かない

const model = xxx // ここにはコメント書かない

※ 随時更新

Aipictors

Discussion