全部実際にあったことです #大手の子会社 #ベンチャー
変数を持ち替えすぎている
例:
var w = window, var d = document
とするパターン。
- 変数を検索しずらい。
- 別の人が「wってなに?dって??」となる。
単体テストできない関数...
function getAttributeWithPrefix(elem, symbol, defaultValue) {
return elem && elem.getAttribute(prefix + symbol) || defaultValue;
}
prefix変数の定義がどこかにコードに埋もれていたなら、もうテストしんどいぞ。。
外から変数持ってくるのやめなさい。
関数がファット
難読玄人「わかってはいるけど、負債の積み重ねでどうしても、、。」
try catch文の多用
なぜ多用するのか未だに理解不能、、。
なぜかオブジェクト指向で書いていない
書くとすっきりするコードに限って書いていない、、。
意外と密結合
- 特にクラス内のメソッド同士。
- いやふつうの関数同士でもやべぇやつがいる...
キャメルケースとスネークが入り乱れる
- 意外とやりやがる難読玄人が多い...
- 属性から値を貰おうがテンプレートエンジンの変数だろうが、いかなる理由でも統一すべき。。
やばい命名。
- メソッド名、関数名 が 名詞、過去形。。
- 過去形にした理由はコールバック用だと思うが、ナンセンス過ぎるだろ。。 そもそも汎用性もない。
そのくせいちゃもんが多い
- 難読玄人「メモリの消費に関して徹底的にこだわりたいのだ、、!」
- 難読玄人「ファイルの末行は改行を!」
- 難読玄人「
{の前には半角スペースを!」
前に進まぬ、、!