Daily Archives: 2012年4月2日

C#で開発を行う際に守るべき18のルール

2012年4月2日 (カテゴリ: C#:)

StackOverFlowで紹介されていたC#で開発を行う際に守るべき18のルールが紹介されていました。 内容が興味深かったので紹介します。 元ネタは、http://stackoverflow.com/questions/2787035/coding-guidelines-best-practicesです。 日本語に訳していますが、意味いまいちな場合は原文を当たった方が分かりやすいかも… 1.FxCopを使用して、ソースの静的チェックを行う FxCopとは、Framework Copの略で(Cop=警察です)、Microsoftから提供されているツールです。 コンパイル後のバイナリ…


続きを読む

[C#]演算子オーバーロードを使用して、オブジェクトの条件分岐をシンプルに記述する

2012年4月2日 (カテゴリ: C#:)

あるクラスのオブジェクトの状態をチェックしたい場合、比較式をクラスのメソッドとして実装して確認する事が有ります。 class Score { public int value; public Score( int i ) { value = i; }   public bool isValid() { // 値が0~100のときのみ有効とみなす if ( value >= 0 && value <= 100 ) { return true; } fa…


続きを読む

Amazonマーケットプレースで、保留中商品への発送依頼が来た時の返答方法

2012年4月2日 (カテゴリ: 未分類:)

Amazonマーケットプレースで商品を販売している場合、購入者側で決済が完了していないと”保留中”のステータスになります。 決済が完了すれば発送可能になるのですが、保留中の注文は送付先住所が出品者側では分からないため、発送したくても発送する事ができません。 また、Amazonの規約上も保留中の商品を出荷することは出来ません。 保留中の注文とはなんですか?   保留中の注文には、購入者の支払い方法の承認が完了していない注文や、コンビニ決済で支払いが 完了していない注文が含まれます。保留中の注文を出荷することはできません。   購入者から直接連絡があった…


続きを読む

[C#]Stringとstringの違いは?

2012年4月2日 (カテゴリ: C#:)

C#で文字列を格納する変数を定義する場合、Stringとstringの2つが有ります。(先頭が大文字か小文字かが違っています) 以下の例では、どちらもエラーなくコンパイル&実行可能ですがこの2つは何が違っているのでしょうか? String var1; string var2;String var1; string var2; C#の言語仕様上、stringはSystem.Stringのエイリアス(別名)という位置づけなので、仕様的には両者は全く同じです。 ですので、どっちを使っても問題無く動作するのですが、一般的には以下のガイドラインに沿ってコーディング規約が作られる事が多いです。 1.文字列…


続きを読む

[C#]誕生日より年齢を求める最も簡単な方法

2012年4月2日 (カテゴリ: C#:)

C#で誕生日から年齢を求めるシンプルな方法です。 日付計算はDateTimeクラスに任せるのが一番簡単です。 DateTimeだと、うるう年周りの処理もやってくれるので安心です。 また、誕生日を過ぎているかどうかで1歳変わるので、その分の判定を最後の行で行っています。 int age; // 年齢   DateTime birthDay = …; // 誕生日を取得 DateTime today = DateTime.Today;   age = today.Year – birthDay.Year; age -= birthDay > today.AddYear…


続きを読む

[C#]enumが持つ全ての値をforeachで取得する

2012年4月2日 (カテゴリ: C#:)

以下のコードで、enumの列挙が持つ全ての選択肢をループで取得する事が可能です。 public enum ErrLevel { Debug, Info, Warnig, Error, }   foreach ( ErrLevel level in Enum.GetValues( typeof(ErrLevel) ) ) { …; }public enum ErrLevel { Debug, Info, Warnig, Error, } foreach ( ErrLevel level in E…


続きを読む