Subscribed unsubscribe Subscribe Subscribe

ふり返る暇なんて無いね

日々のメモ書きをつらつらと

とあるプロジェクトのコードのあんちぱたーん

コンテキスト依存、歴史的経緯があるので、一概には言えないのですが、こんなプロジェクトは良くないですね。
あとで、細かく書くかも。書かないかも。

  • 不明なセットアップ手順
  • DBスキーマ定義ファイルが本番と違う
  • ドキュメントが間違ってる/更新されてない
  • テストがだいぶまえからこけている
  • テストを回すとなぜか共用DBのデータが書き換わる
  • クラスビルダー(Moose/Mouse)を無駄に利用
  • 状態を持たないクラスの無駄なインスタンス
  • 同じ目的のモジュールを複数使用(ORMを複数使用等)
  • 同じ目的の処理をプロジェクト内で複数実装
  • 使われてないコードが消されずに残ってる
  • 理由が不明なコメントアウトされたコード
  • 過度なプラグイン使用
  • 多重継承
  • 継承が無駄に深い
  • 継承するだけで、何も上書きしないモジュール
  • CPANモジュールに独自パッチ
  • CPANに上がってない独自モジュール
  • CPANモジュールと独自モジュールの名前衝突
  • useするだけで本処理が走るモジュール

念のため、フィクションです。