想考 WCF? 先看看這篇吧。

簡介 Exam 70-503: TS: Microsoft .NET Framework 3.5, Windows Communication Foundation

如果有考過 MCPD: Enterprise Application Developer 或是 MCTS: .NET 2.0 Distributed Application 的話,相信一定會對 70-529 (TS: .NET Framework 2.0 Distributed Application Development) 印象深刻,因為該考試可說是 .NET 系列認證考試中最難的一科,除了每個題目的程式碼量相當多外,該科一次就包含了 Web Service,.NET Remoting,WSE 3.0,SOAP,非同步技術,Serviced Component (COM+) 和 MSMQ,對於考生來說準備的壓力相當大。

到了 .NET Framework 3.5 的 WCF,情況就會好一點了嗎?那可不,雖然考生只要面對一個技術 (Windows Communication Foundation),但是它卻是由之前的許多技術融合進化而來的,其難度不亞於 Exam 70-529,不過好處是,焦點比較集中,不像 70-529 般分散,而且官方文件中的 WCF Programmer's Guide 就足以準備 WCF 的考試了,但問題又來了,WCF 並不好學,就像網路的應用程式一樣,不容易理解也不好寫。而Exam 70-503 這科考試,將會完全貫穿 WCF 每個需要學習與應用的地方,從資料定義到部署維護,都是考試的範圍。

那麼,我們就來看看哪些東西要準備吧:

1. Creating Services (19%)

  • 了解什麼叫合約 (Contract)。
  • 定義服務-服務合約 (Service Contract)。
  • 定義雙方共同可接受的資料格式-資料合約 (Data Contract)。
  • 定義雙方共同可接受的流程-方法合約 (Operational Contract)。
  • 定義雙方在交換資料時共同可接受的訊息方式-訊息合約 (Message Contract)。
  • 處理泛型化 (generic) 訊息。

2. Exposing and Deploying Services (23%)

  • 使用組態檔或是程式化的方式設定服務的終端點 (end point),組態內容包含物件型別,URL,協定等。
  • 在生命週期,工作階段,並行與繫結間管理一致性。
  • 將服務置於 Managed Application 中。
  • 將服務置於 Web Server 中。
  • 建立自訂行為。

3. Instrumenting and Administering Services (11%)

  • 實作終端對終端的服務追蹤。
  • 監控服務健康。
  • 記錄訊息。
  • 使用服務模型來動態組態服務。
  • 實作偵測器 (Inspector)。

4. Consuming Services (16%)

  • 在用戶端建立 Service 代理程式 (例如:加入服務參考)。
  • 組態用戶端終端點,使用組態檔或程式化方法。
  • 使用 Service 代理程式呼叫服務。
  • 在用戶端處理例外。
  • 消費非 WCF 服務 (例如:ASMX Web Service)。

5. Securing Services (16%)

  • 實作傳輸層次安全性 (使用 SSL, VPN, IPSec 等)。
  • 實作訊息層次安全性 (使用對稱或非對稱式演算法,以及 WS-Security 協定等)。
  • 驗證用戶端 (帳戶密碼,憑證法等)。
  • 授權用戶端。
  • 模擬用戶端。

6. Managing the Service Life Cycle (15%)

  • 管理服務實體 (PerSession, PerCall or Single)。
  • 管理工作階段。
  • 管理交易 (伺服器與用戶端交易)。
  • 管理並行處理。
  • 在執行個體,工作階段,交易與並行處理間管理一致性。

WCF 目前官方有出兩本書,可用來準備:

  • Windows Communication Foundation, Step by Step (有中文書)。
  • Inside Windows Communcation Foundation

我自己在考時也考了二次 (Beta 考試沒有過 ),第一次考試時考了六百多分,第二次考試時得到 887 分。