日経BP社 ブックス&テキスト Online

「マイクロソフト関連書」「Autodesk公式トレーニングガイド」「MOS攻略問題集」「セミナーテキスト」「スクール標準教科書」などの各シリーズ、各種IT関連書籍をご案内するサイトです。

書籍訂正情報

『.NETのクラスライブラリ設計 ―― 開発チーム直伝の設計原則、コーディング標準、パターン』
をお使いの方へ (2010年1月22日更新)

本書の内容について誤りがございました。次のとおり訂正してお使いください。
お手元の書籍の刷数は、奥付でご確認ください。

●p.14 上から12〜13行目
(誤)…ファイルを開き、ファイルからテ本書の付録は、日経BPソフトプレスのサイトから
ダウンロードできます。詳細については本書の「はじめに」の「日本語版に関する補足」
を参照してください。
キストの
       ↓
(正)…ファイルを開き、ファイルからテキストの

◎該当する版:初版1刷
●p.21 コードの2行目
(誤)…orders.Queue.Send(order); // 既定の優先度、暗号化などを使用する
       ↓
(正)…ordersQueue.Send(order); // 既定の優先度、暗号化などを使用する

◎該当する版:初版1刷
●p.61 上から6行目
(誤)…public static BigInteger Devide
       ↓
(正)…public static BigInterger operator /


◎該当する版:初版1刷
●p.71 上から6行目
(誤)…代わりに、これらのオブジェクトを値型の配列(オブジェクトごとに0バイトのオーバーヘッド)にこれらのオブジェクトを配置することによってこれを避けることが可能です。
       ↓
(正)…代わりに、これらのオブジェクトを値型の配列(オブジェクトごとに0バイトのオーバーヘッド)に配置することによってこれを避けることが可能です。

◎該当する版:初版1刷
●p.72 上から4行目
(誤)…ベンチマーク
       ↓
(正)…ベンチマーク

◎該当する版:初版1刷
●p.80 2番目のコード
(誤)…public class File abstract sealed {
     ...
}

       ↓
(正)…public ref class File abstract sealed {
     ...
};


◎該当する版:初版1刷
●p.82 2番目のコードの2行目
(誤)…if( !key.GetType().IsDefined(typeof(IImmutableAttribute), false)) {
       ↓
(正)…if( !key.GetType().IsDefined(typeof(ImmutableAttribute), false)) {

◎該当する版:初版1刷
●p.87 下から8行目
(誤)…追加可能します。
       ↓
(正)…追加可能す。

◎該当する版:初版1刷
●p.89 2番目のコードの2行目
(誤)…if (desk > DeskType.Rectanguler || desk < DeskType.Curcular) {
       ↓
(正)…if (desk > DeskType.Rectanguler || desk < DeskType.Circular) {

◎該当する版:初版1刷

●p.101 コード
(誤)…public static class Console {
       public void WriteLine();
       public void WriteLine(string value);
       public void WriteLine(bool value);
       ...
     }

       ↓
(正)…public static class Console {
       public static void WriteLine();
       public static void WriteLine(string value);
       public static void WriteLine(bool value);
       ... 
     }


◎該当する版:初版1刷

●p.122 コードの4行目
(誤)…applicationLog.Log ~= "Application";
       ↓
(正)…applicationLog.Log = "Application";

◎該当する版:初版1刷
●p.125 脚注の2行目
(誤)…暗黙的なコンストラクタは空(何もしない)ため。
       ↓
(正)…暗黙的なコンストラクタは空である(何もしない)ため

◎該当する版:初版1刷
●p.136 一番下のガイドライン
(誤)…DO
       ↓
(正)…DO-NOT

◎該当する版:初版1刷
●p.137 下から3行目
(誤)…if ("hello workd".IsPalindrome()) {
       ↓
(正)…if ("hello world".IsPalindrome()) {


◎該当する版:初版1刷
●p.139 下から6行目
(誤)…o.SomeMethod();
       ↓
(正)…o.SomeMethod()

◎該当する版:初版1刷
●p.142 1行目
(誤)…var attrs = source.GetCustomAttributes(typeof(ContentPRopertyAttribute), true);
       ↓
(正)…var attrs = source.GetCustomAttributes(typeof(ContentPropertyAttribute), true);

◎該当する版:初版1刷
●p.155 2番目のコードの2行目
(誤)…public bool TryParse(string uriString, out Uri uri) {
       ↓
(正)…public static bool TryParse(string uriString, out Uri uri) {

◎該当する版:初版1刷
●p.157 最初の注釈の1行目
(誤)…一時オブジェクト配列を作成ることは、
       ↓
(正)…一時オブジェクト配列を作成ることは、

◎該当する版:初版1刷
●p.164 注釈の3行目
(誤)…思いました
       ↓
(正)…思っています

◎該当する版:初版1刷
●p.166 注釈の3行目
(誤)…cityNames.RemoveAll(delegate(string name)) {
       ↓
(正)…cityNames.RemoveAll(delegate(string name) {

◎該当する版:初版1刷
●p.166 2番目のコードの最終行
(誤)…timerStart();
       ↓
(正)…timer.Start();

◎該当する版:初版1刷
●p.172 本文の下から4行目
(誤)…制御の
       ↓
(正)…制御の

◎該当する版:初版1刷
●p.183 2番目の注釈の3行目
(誤)…コーの退屈さ
       ↓
(正)…コーディングの退屈さ

◎該当する版:初版1刷
●p.186 2番目の注釈
(誤)…成功で完了するか、またはそうではないかのどちらかであるメソッドのケースは、例外をスローするべきです。決断しないことのエラーは、通知された決断を行ったAPIの実装詳細についての十分な文脈を持ち合わせていないであろうAPIの呼び出し元に決断を強制します。
       ↓
(正)…メソッドは成功するか失敗するかのどちらかであり、失敗した場合は例外をスローすべきです。決断しないことはAPIの呼び出し元に判断を強制することであり、しかも呼び出し元はAPIの実装詳細を判断するには不十分な情報しか持っていないことが多いのです。

◎該当する版:初版1刷
●p.197 注釈の2行目
(誤)…意味があるようになるようにします。
       ↓
(正)…意味があるようにします。

◎該当する版:初版1刷
●p.202 2番目の注釈の1〜2行目
(誤)…OutOfMemoryExceptionの原因の一つには、OutOfMemoryExceptionは暗黙的な自動ボックス化用の12バイトの取得に失敗した
       ↓
(正)…OutOfMemoryExceptionの原因の一つには、暗黙的な自動ボックス化用の12バイトの取得に失敗した

◎該当する版:初版1刷
●p.215 注釈の1行目
(誤)…このガイドラインは、
       ↓
(正)…以降のガイドラインは

◎該当する版:初版1刷
●p.220 8.3.3項の2行目
(誤)…使用
       ↓
(正)…使用

◎該当する版:初版1刷
●p.222 2番目のガイドライン
(誤)…AVOID
       ↓
(正)…DO-NOT

◎該当する版:初版1刷
●p.224 コードの下から3行目
(誤)…public long UtcTickes { get; }
       ↓
(正)…public long UtcTicks { get; }

◎該当する版:初版1刷
●p.238 2番目のコードの1行目
(誤)…[KnwonType(typeof(USAddress))]
       ↓
(正)…[KnownType(typeof(USAddress))]

◎該当する版:初版1刷
●p.242 上から2行目
(誤)…info.AddValue("name", fullName");
       ↓
(正)…info.AddValue("name", fullName);

◎該当する版:初版1刷
●p.253 上から8行目
(誤)…すべての集約コンポーネントに対して、既定または非常に単純なコンストラクタを提供します。
       ↓
(正)…すべての集約コンポーネントに対して、既定、または非常に単純なコンストラクタを提供します。

◎該当する版:初版1刷
●p.258 箇条書きの2行目
(誤)…IAsyncResult.AsyncResultAsyncWaitHandle
       ↓
(正)…IAsyncResult.AsyncWaitHandle

◎該当する版:初版1刷
●p.260 コードの10行目
(誤)…decimal d ~ GetFiboCore(i);
       ↓
(正)…decimal d = GetFiboCore(i);

◎該当する版:初版1刷
●p.262 最初のガイドラインの2行目
(誤)…イベントベースの非同期パターンの使用を使用することによる主要な利点です。
       ↓
(正)…イベントベースの非同期パターンを使用することによる主要な利点です。

◎該当する版:初版1刷
●p.272 2番目のコードサンプル
       272

◎該当する版:初版1刷
●p.278 上から7行目と下から6行目
(誤)…Dipose()
       ↓
(正)…Dispose()

◎該当する版:初版1刷
●p.278 上から13〜14行目
(誤)…メソッドの一つです。
       ↓
(正)…メソッドです。

◎該当する版:初版1刷
●p.293 3番目のガイドラインの4行目
(誤)…Whereメソッドの戻り値の型はIEnumerable<T>です
       ↓
(正)…Whereメソッドは定義されません。

◎該当する版:初版1刷
●p.304 コードの3行目以降
(誤)…SetBounds(...);
      }
(正)…SetBoundsCore(...);
      }
     protected virtual void SetBoundsCore(...){ ... }

◎該当する版:初版1刷

以上、お詫びして訂正いたします。


訂正INDEXページへ戻る>>