36
18

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

マルハラを防ぐために今日からできること

Last updated at Posted at 2024-02-04

どうも、最近HonoにJSDocを追加するPRがマージされてウキウキな人です。
この記事では、最近話題になっている「マルハラ」の解説・防ぎ方を紹介していきます。
職場の居心地の向上にもつながるかもしれません。

マルハラは身近なところで起きている

maruhara.ts
export function fizzBuzz(number: number) {
  let message: string;
  if (number % 15 === 0) {
    message = "FizzBuzz";
  } else if (number % 3 === 0) {
    message = "Fizz";
  } else if (number % 5 === 0) {
    message = "Buzz";
  } else {
    message = number.toString();
  }
  return message;
}

このコードの問題点は、行の最後に ;(句点) を使っていることです。
これにより、書いた人が怒っていると受け取られることがあります。
そのため、このコードを読む他の人にとって小さなストレスを生んだり、周りとの人間関係や職場の雰囲気が悪くなる原因になるかもしれません。
また、"(ダブルクォート) も堅苦しく思われることがあるので気をつけてください。

対策: フォーマッターを使う

フォーマッターを導入します。
今流行りのBiomeを使います。

pnpm add --save-dev --save-exact @biomejs/biome
pnpm dlx @biomejs/biome init

生成されたbiome.jsonに追記します。

biome.json
{
  //...
  "javascript": {
    "formatter": {
      //セミコロンをできる限り省く
      "semicolons": "asNeeded",
      //シングルクォートを使う
      "quoteStyle": "single",
      "jsxQuoteStyle": "single"
    }
  }
}

さっきのコードをフォーマットします。

biome format ./index.ts --write
index.ts
export function fizzBuzz(number: number) {
   let message: string
   if (number % 15 === 0) {
   	message = 'FizzBuzz'
   } else if (number % 3 === 0) {
   	message = 'Fizz'
   } else if (number % 5 === 0) {
   	message = 'Buzz'
   } else {
    message = number.toString();
   }
   return message
}

ストレスフリーなコードでマルハラを防ぐことができました🥳
これで、職場の雰囲気は明るくなり、周りとの人間関係もより良くなるはずです。

この記事はジョークです。
プロジェクトごとに合った方法を採用してください。

元ネタ

最後まで読んでいただきありがとうございました。

36
18
3

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
36
18

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?