スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

匂うコード

 デジタルデータであるソースコードが異臭を発するわけはないですが、
リファクタリングの「きっかけ」を匂いの比喩で表す言葉です。

リファクタリングとは
ソフトウェアの外部的振る舞いを保ったままで、内部の構造を改善していく作業

マーチン・ファウラー(児玉 公信)『リファクタリング プログラムの体質改善テクニック』ピアソン・エデュケーション、2000年

 上記の書籍では、この匂うコードの不吉な兆候について次のものだとしています。
・重複したコード
・長すぎるメソッド
・巨大なクラス
・多すぎる引数
・変更の発散
・変更の分散
・属性、操作の横恋慕
・データの群れ
・基本データ型への執着
・スイッチ文
・パラレル継承
・怠け者クラス
・疑わしき一般化
・一時的属性
・メッセージの連鎖
・仲介人
・不適切な関係
・クラスのインタフェース不一致
・未熟なクラスライブラリ
・データクラス
・相続拒否
・コメント

 既に存在する匂うコードをいつリファクタリングすればよいのでしょうか?
臭いものに蓋をする」という言葉もありますが、何の解決にもならず状況は悪化するでしょう。
割れ窓の原理」というのがあって、窓ガラスが1枚割れて放置していると、
どんどん割れていく現象を匂うコードを放置すると状況がさらに悪化することに例えています。

 私が愛用している言葉に「ボーイスカウト精神」というものがあります。
私はボーイスカウトではありませんが、ボーイスカウトはキャンプなどで行った先では、
元の状況より綺麗にしてその場を去る教えがあるそうです。
これにならって、コードを追加したのならば、一ヶ所でもいいからリファクタリングをしてコミットするようにしています。
これにより「割れ窓の原理」を防止しています。
スポンサーサイト

テーマ : プログラミング
ジャンル : コンピュータ

コメントの投稿

非公開コメント

プロフィール

夢追

Author:夢追
芸術プログラミングの世界へようこそ

検索フォーム
最新記事
最新コメント
最新トラックバック
月別アーカイブ
カテゴリ
フリースペース
RSSリンクの表示
ブロとも申請フォーム

この人とブロともになる

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。