アンチパターン

コメントが要らないプログラムの書き方

はてなブックマークで「コメントの要らないプログラムの書き方」が話題みたいです。 個人的には以下はまぁOKかなぁと思ってます。 自分の確認のために書いてある書くコメント(ギリギリ) 業務仕様を記述したコメント どうしてそうしているのかを書いている…

C#の三項演算子をリファクタリングする

C#で三項演算子って使ってますか? タイトルの件ですが、条件判定で、三項演算子を使った以下のようなコート見たことありませんか? public void SelectString(string text) { // text の中身が "animal" だったら0を返す。そうでい場合1を返す int index = …

内部でStaticな変数に依存しない

アンチパターンのひとつで、オブジェクトの処理内にStaticメンバーへ依存してはいけないというものがあります。 大したことはないのですが。例えば以下のようなある種のグローバル変数があって public class GlobalValiables { public static bool InternalS…

コードのコメントはシンタックスじゃなくセマンティクスを書こう

コードの構造とか文法を一生懸命説明するシンタックスコメント職人が世の中に結構いるみたいです。例えばこんなの // ログを出力する Log.WriteLine("ERROR", "Failed to hogehoge function."); Log.WriteLine("ERROR", ex.ToString()); コード見ればわかる…

例外を握りつぶして bool で返すという闇のテクニック

最近のプロジェクトで本当によくこんなコードを見かけるんだけど public bool Foo(...) { try { // hogehoe } catch(Exception ex) { return false; } } こんなことして、.net のライブラリの応答方法とギャップがあるの気にならないのかな? 業務的な例外と…

仕様書が無い!!!

ぎゃふん!本当に思い知らされました。仕様書の大切さ…。 何が起きたか? ある程度の大きさのシステム(100M超)で使われているコンポーネントを他のシステムでも使いまわす事が出来るか(もし無理なら[仕様|設計|概念])が転用できないか調査する業務をし…

ファンクション製造駆動開発(FMDD)のススメ

ソフトウェア業界で最も古くからあり、最もプロジェクトに採用実績のある素晴らしいソフトウェア開発プロセスのファンクション製造駆動開発をご紹介します。この項目は、独自研究を元に書かれています。 ファンクション製造駆動開発(FMDD)とは何か? ファ…