LoginSignup
12
7

More than 5 years have passed since last update.

チーム開発のアンチパターン 〜いかにしてプロジェクトを破壊するか〜

Posted at

アンチパターン

どうすればチーム開発を停滞させることができるか?
そのためのtipsを紹介したいと思います。

1.大量のコードを書こう

とにかく無駄のある大量のコードを書きましょう。
大量のコードを書く最も簡単な方法は、コピペです。すでに書いた処理をコピペして使用しましょう。重複した処理や関数をたくさん作りましょう。
簡単な処理に数十行、数百行のコードを書くことで、他の人はあなたのコードを読むことを諦めます。
結果、あなたの書いたコードは誰にも読まれず、誰にも修正されず、そのままそこに鎮座して、のちに問題を引き起こすことになるでしょう。

2.一行に全部の処理を書こう

今度は逆に、複雑な処理や条件を一行で書きましょう。
複雑な処理を一行で書けた時、あなたはとても気持ちが良くなります。
しかし、他の人は理解できません。仕様の変更で処理を変えなければいけなくなった時、誰も(もしくはあなたすらも)元のコードの意味がわからず、変更ができなくなります。
条件式にはand, or, notをたくさん使うことで、複雑な条件を一行で収めることができます。notにnotを重ねて複雑にしましょう。

3.再帰処理を書こう

再帰処理もクールな実装の一つです。複雑な処理を簡潔に書けるからです。
あなたのコードを読む同僚は頭がこんがらがります。同時に、あなたに対して尊敬の念を抱くでしょう。なんて難しくてかっこいいコードを書くのだろう、ってね。そしてあなたのコードには誰も手を触れなくなります

4. 1つのファイルや1つの関数に多くを詰め込もう

意味単位、責務単位でファイルや関数を分けることをすると、あなたのコードは読みやすくなってしまいプロジェクトを破壊できません。
「このファイルに全部の処理が書いてあるから必要なメソッド探してね」
「このメソッド内で全部の処理をやってるよ」
全てが1箇所にまとまっているとわかりやすいよね、みたいに笑顔で言いましょう。
これは単体テストをできなくさせるためにも必要です。

5.今は必要ないコードや引数を書きましょう

今は使わないけど将来使いそう、と思ったらすぐにそのメソッドを作ったり引数を用意しておきましょう。
きっといつか使うだろうと思いますが、多分使うことはありません
同僚は不必要な引数を理解することに多くの時間を使うことになるでしょうが、それはこちらの思う壺なのです。

6.スコープの広い変数をたくさん使おう

グローバル変数やプロパティは存分に宣言し、使っていきましょう。
どこでその値が変更されるのかさっぱりわからないようにしましょう。
同僚はあなたのコードを読んでも、どの変数にどんな値が今入っているのか全く理解できず、コードを読むことを諦めてくれるでしょう。

7. リファクタしない

無駄が多く、責務もはっきりせず、分かりにくくて編集したくないようなコードをせっかく書いたのだからリファクタはしないようにしましょう。
リファクタなんかする暇があったら、どんどんと無駄で読めないコードを量産して、レガシーコードを生産していきましょう!!

12
7
0

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
12
7