書籍をつつく5-インサイドWindows Communication Foundation。これは買いでしょう。
インサイドWindows Communication Foundation [マイクロソフト公式解説書]
WCFはハッキリいってボクも分からない。皆もそうだと思う。だからこそ公式解説書で学ぶ必要があると思うんだ。しかもこの技術「新通信技術」だから、従来のネットワークプログラミングが根底から覆される可能性があるから絶対に学ぶべきだと思うよ。ということで目次は次の通り。
謝辞 はじめに 第1部 WCFの概要 ------------------------------------------------- 第1章 月は青い 1.1 普遍的要件 1.2 普遍的概念 1.3 ビジネスの例 1.4 WCFの概要 1.4.1 異色のAPI 1.4.2 WCFの概観 1.4.3 WCFの機能 1.5 まとめ 第2章 サービス指向 2.1 サービス指向の暫定的な定義 2.2 メッセージの取得 2.3 メッセージングパーティシパント 2.3.1 最初の送信者 2.3.2 中継者 2.3.3 最終的な受信者 2.4 メッセージの構造 2.4.1 エンベロープ 2.4.2 ヘッダー 2.4.3 ボディ 2.5 メッセージトランスポート 2.6 メッセージのエンコーディング 2.6.1 XML Infoset 2.6.2 SOAPとXML Infoset 2.6.3 テキストエンコーダ 2.6.4 バイナリエンコーダ 2.6.5 MTOMエンコーダ 2.6.6 正しいエンコーディングの選択 2.7 メッセージのアドレス指定 2.7.1 トランスポートでのアドレス指定とメッセージでのアドレス指定 2.7.2 最終的な受信者の指定 2.7.3 最初の送信者の指定 2.7.4 エラーの送信先の指定 2.7.5 メッセージの識別 2.7.6 メッセージの関連付け 2.7.7 応答の送信先 2.7.8 オペレーションの指定 2.7.9 標準ヘッダーブロックの必要性 2.8 WS-Addressing 2.8.1 エンドポイント参照 2.8.2 メッセージ情報ヘッダー 2.8.3 メッセージ情報ヘッダーブロックの依存関係 2.9 サービス指向の4つの原理 2.9.1 明示的な境界 2.9.2 サービスの自律性 2.9.3 コントラクトの共有 2.9.4 ポリシーに基づく互換性 2.10 アプリケーションの構築 2.10.1 コントラクト 2.11 なぜSOが必要なのか 2.11.1 バージョン管理 2.11.2 負荷分散 2.11.3 プラットフォームの変化 2.11.4 コンテンツベースのルーティング 2.11.5 エンドツーエンドのセキュリティ 2.11.6 相互運用 2.12 まとめ 第3章 メッセージ交換パターン、メッセージトポロジ、メッセージコレオグラフィ 3.1 メッセージ交換パターン 3.1.1 データグラム 3.1.2 リクエスト/リプライ 3.1.3 デュプレックス 3.2 メッセージトポロジ 3.2.1 ポイントツーポイント 3.2.2 前方のみのポイントツーポイント 3.2.3 ブローカー 3.2.4 ピアツーピア 3.3 メッセージコレオグラフィ 3.4 まとめ 第4章 WCF 101 4.1 WCFの概要 4.1.1 サービスコントラクトの定義 4.1.2 アドレスとバインディングの定義 4.1.3 エンドポイントの作成と待ち受けの開始 4.1.4 受信メッセージのHelloWCFメンバへのマッピング 4.1.5 受信者のコンパイル、実行、検証 4.1.6 受信者へのメッセージの送信 4.1.7 送信者のコンパイル、実行、検証 4.1.8 メッセージの確認 4.1.9 小さな変更による大きな影響 4.1.10 メタデータの提供 4.1.11 メタデータの使用 4.2 外から見たWCFの全体的な構造 4.2.1 アドレス 4.2.2 バインディング 4.2.3 コントラクト 4.3 中から見たWCFの全体的な構造 4.4 まとめ 第2部 チャネル層のWCF ------------------------------------------------- 第5章 メッセージ 5.1 Message型の概要 5.2 WCF XMLスタック 5.2.1 XmlDictionary型 5.2.2 XmlDictionaryWriter型 5.2.3 XmlDictionaryReader型 5.3 Messageの再考 5.4 Messageの作成 5.4.1 Messageのシリアライズとデシリアライズ 5.4.2 Messageのバージョン 5.4.3 オブジェクトグラフのシリアライズ 5.4.4 リーダーからのデータの取得 5.4.5 BodyWriterによるMessageへのデータの挿入 5.4.6 メッセージとSOAPフォルト 5.5 バッファリングメッセージとストリーミングメッセージ 5.6 Messageのシリアライズ 6.7 Messageのデシリアライズ 6.7.1 MessageがSOAPフォルトかどうかの確認 5.8 Messageの状態 5.9 ヘッダーの操作 5.9.1 MessageHeader型 5.9.2 MessageHeaders型 5.9.3 EndpointAddress型 5.10 メッセージのコピー 5.11 Messageのクリーンアップ 5.12 まとめ 第6章 チャネル 6.1 チャネルの概要 6.1.1 チャネルのインスタンス化 6.2 チャネルステートマシン 6.2.1 ICommunicationObjectインターフェイス 6.2.2 CommunicationObject型 6.2.3 CommunicationObjectの派生型 6.2.4 OpenメソッドとBeginOpenメソッド 6.2.5 CloseメソッドとAbortメソッド 6.2.6 Faultメソッド 6.2.7 CommunicationObjectのスタックについて 6.3 チャネルの形状 6.4 チャネルインターフェイスと基本型 6.4.1 IChannelインターフェイス 6.4.2 データグラムチャネル:IInputChannelとIOutputChannel 6.4.3 リクエスト/リプライチャネル:IRequestChannelとIReplyChannel 6.4.4 デュプレックスチャネル:IDuplexChannel 6.4.5 IDefaultCommunicationTimeoutsインターフェイス 6.4.6 ChannelBase型 6.5 チャネルの種類 6.5.1 トランスポートチャネル 6.5.2 プロトコルチャネル 6.5.3 形状チャネル 6.6 カスタムチャネルの作成 6.6.1 基本型の作成 6.6.2 データグラムチャネルの作成 6.6.3 データグラム受信チャネル 6.6.4 データグラム送信チャネル 6.6.5 デュプレックスチャネル 6.6.6 デュプレックスセッションチャネル 6.7 まとめ 第7章 チャネルマネージャ 7.1 チャネルマネージャの概念 7.2 受信者:チャネルリスナー 7.2.1 IChannelListenerインターフェイス 7.2.2 IChannelListenerインターフェイス 7.2.3 ChannelListenerBase型 7.2.4 ChannelListenerBase型 7.2.5 カスタムチャネルリスナーの構築 7.3 送信者:チャネルファクトリ 7.3.1 IChannelFactoryインターフェイス 7.3.2 IChannelFactoryインターフェイス 7.3.3 ChannelFactoryBase型 7.3.4 ChannelFactoryBase型 7.3.5 カスタムチャネルファクトリの構築 7.4 まとめ 第3部 サービスモデル層のWCF ------------------------------------------------- 第8章 バインディング 8.1 バインディングオブジェクトモデル 8.1.1 Bindingのコンストラクタ 8.1.2 Bindingのテストメソッド 8.1.3 Bindingのファクトリメソッド 8.1.4 GetPropertyメソッド 8.1.5 MessageVersionプロパティ 8.1.6 スキームプロパティ 8.1.7 CreateBindingElementsメソッド 8.2 BindingElement型 8.2.1 BindingElementのコンストラクタとCloneメソッド 8.2.2 BindingElementのテストメソッド 8.2.3 BindingElementのクエリメカニズム 8.2.4 BindingElementのファクトリメソッド 8.3 TransportBindingElement型 8.4 BindingContext型 8.4.1 BindingContextのファクトリメソッド 8.5 Bindingの使用 8.6 カスタムバインディングの作成 8.7 まとめ 第9章 コントラクト 9.1 定義済みのコントラクト 9.2 WCFコントラクト全体の構造 9.2.1 サービスコントラクト 9.2.2 サービスコントラクトのオペレーション 9.2.3 オペレーションメソッドの引数 9.2.4 サービスコントラクトからサービスオブジェクトへのマッピング 9.2.5 データコントラクト 9.2.6 メッセージコントラクト 9.2.7 オペレーションの互換性 9.2.8 コントラクトに関する持論 9.3 コントラクト定義からコントラクトオブジェクトへ 9.4 まとめ 第10章 ディスパッチャとクライアント 10.1 自らへの質問 10.2 ディスパッチャ 10.2.1 ChannelDispatcherの構造 10.2.2 EndpointDispatcherの構造 10.2.3 DispatchRuntime型 10.2.4 DispatchOperation型 10.2.5 ServiceHost型 10.3 クライアント 10.4 まとめ 索引
これからの時代はネットワークプログラミングが出来ないとまずいと思う。だからボクは絶対買うよ。インサイドシリーズは良書が多いからね。それに、COM本みたいに廃刊になってからじゃあ遅いしね。ああ、何であの時InsideCOMか買わなかったのかなぁ。そうした後悔が無いために買っておいたほうがいいと思うよ。