我想在iOS中實現一個使用SOAP和XML請求/響應的web服務客戶端。 我的觀點開始初始businnes邏輯(用戶按下按鈕或某事並啓動一些businnes方法稱爲method_A)。我需要幫助iOS設計模式的web服務客戶端
所以我有一個類method_A和這個方法檢查用戶是否登錄等,然後通過SOAPConnector類異步啓動請求。所以UI不會被阻塞(異步)。 SOAPConnector類採用XML並處理請求。因此我使用NSURLRequest和帶有sendSynchronousRequest的NSURLConnection。
該響應被髮送回響應類的響應。這個類然後想要解析響應XML。因此我使用一個名爲XMLManager的額外類,它使用NSXMLParser來解析xml。但是在這裏我們需要一個獲得解析XML的委託。再次解析後,我必須實現一個額外的方法來將解析後的XML返回給發起請求的第一個類。
我真的想知道這是否正確。第一個問題是異步請求不阻止UI(第一個回調)。第二個問題是我不得不使用代理的解析(第二個回調)。這導致了很多類和方法,我懷疑這是正確的方法。這些課程的唯一目的是管理委託和異步問題。所以我要求任何建議,並幫助如何解決這個問題。你知道一些好的設計模式來解決這個問題嗎?
的方式與你的描述,你所選擇的設計模式,一些不一致的地方
帶method_A的第一個類以異步方式啓動請求,不阻止UI。所以在這一點上有兩個線程。用戶界面和其餘的請求。稍後,當它進入類SOAPConnector時,它將同步發送請求,但它仍在另一個線程中(而不是阻塞UI)。 – tester