とあるシステムで

自分とは違う人が書いたシステムのソースを保守しないといけなくなったわけですが,やばい.これはやばい.

  • まず当然のようにフレームワークは使っていない.
  • そして憎むべきregister_globalsがonの状態じゃないと動かない….
  • ORマッパーなんて夢のまた夢で,mysql_query連発.
  • SQL生成はregister_globalsで展開されたグローバル変数を直入れ.
  • 処理の分岐はif文で処理.しかもそのキーは日本語.
  • データベースの文字コードがばらばら.EUCだったり,SJISだったり,UTF-8だったり.
    • どうやって対応するかというと都度mbstring_convert_encoding.
  • 当然表示周りの文字コードもばらばら.
  • 処理は当然グローバル領域にてベタ書き.
  • データベース接続パラメータ(ユーザ名とかパスワード)もベタ.
  • ソース類は全てhtdocs以下.
  • ファイル名はローマ字.(検索画面がkenskau.phpになってたり)
  • インデントがばらばらで括弧の対応が分からない.
  • クエリの結果がなぜかカラム毎の配列.(普通は行毎な気がするけど)

そして久しぶりに自分が約3年前に書いたソースを見る.

クラスは切ってあっても一つのメソッドに処理べた書きorz.処理の分岐はswitchでorz.global宣言があったorz.
そしてなぜか

$this -> hoge = 'hoge';

な感じですき間がorz(なぜすき間があるかは謎.なんか特別視してたのか?俺)

どっこいどっこいのいい勝負してるなぁ…そして,上のソースは去年書かれたもの…

動いてるならいいじゃないと言われそうなもんだけど,よく分からん動き連発.まぁそりゃそうだよな….このphpフレームワークが雨後のタケノコのごとく出てる現状でこんなソースを書けるのはある意味すごい.ひょっとしてそういう状態だからこそフレームワークは使わずに作るんだろうか.フレームワークを使わないことの利点もあるんだろうけど,これはいくらなんでもちょっとと思った.