在Mac和iPhone上建立TCP連接或發送UDP數據報的最有效方式(也就是努力與可讀性和可維護性的最佳比率)是什麼?我對經典的BSD套接字非常熟悉,但我現在不打算輕鬆移植;我只是想盡快完成一個小項目。在Mac/iPhone上進行聯網的最有效方法是?
我很想擁有一個Apple提供的Objective-C包裝器,但我想聽聽關於人們常用的東西的一些想法。如果你認爲BSD套接字是要走的路,那麼也可以隨意挑選一些想法:我真的只是想找到「正確的方式」來做到這一點。
讓我們假定該協議是一個自定義的,所以我們的需求無法通過基於Cocoa的HTTP客戶端類:)
我現在的目標是流設備狀態(如加速計)在提供服務通過UDP的網絡,同時還通過TCP保持信令和傳送保證事件(例如,按鈕按下)連接。桌面應用程序會顯示此狀態。
但是,我目前的應用程序正是讓我問這個問題的原因;我想知道人們通常會做什麼。當我上一次在7-8年前認真使用VB6時,WinSock ActiveX控件做了與BSD套接字完全不同的事情,不管它在底層做了什麼。
雖然我仍然不認爲我目前的應用程序對我的問題非常重要,但我已經用更多信息更新了它。我知道CFSockets,我知道如何處理BSD套接字,但我想知道在Apple平臺上建立連接/數據報流的最佳和最簡單的方法。更多的是「最佳實踐」問題而不是「如何做到這一點」的問題。 – 2010-11-24 18:36:20
我明白。我已經更新了我的答案,以包含對UDP包裝類的引用。 – 2010-11-24 18:47:38