只需10步,教你實(shí)現(xiàn)iOS網(wǎng)絡(luò)效力
大多數(shù)iOS應(yīng)用程序至少需要某種網(wǎng)絡(luò)連接才能進(jìn)行數(shù)據(jù)傳輸,這意味著網(wǎng)絡(luò)編程是作為一個iOS開發(fā)者需要掌握的一個重要領(lǐng)域。
那么如何才能一步步做到掌握呢?
我發(fā)現(xiàn)去iOS學(xué)習(xí)專題或一般編程的最好的方法是從幾個不同的角度看問題。
所以要有從一個廣闊的視角看事物的精神(而不是僅僅尋找“最佳實(shí)踐”),我現(xiàn)在給你10個步驟,可以幫助你輕松拿下iOS網(wǎng)絡(luò)編程:
第1步
看WWDC視頻Network Apps for iPhone OS Part 1和Part 2,Quinn “The Eskimo”論述了構(gòu)建iOS網(wǎng)絡(luò)應(yīng)用程序的最佳實(shí)踐。即使這次談話是來自2010,它仍然是非常相關(guān)的。特別是關(guān)于如何正確設(shè)計你的用戶界面的部分,用于處理網(wǎng)絡(luò)故障,使用異步網(wǎng)絡(luò)請求和運(yùn)行循環(huán)。(注:因為某些原因,蘋果的流媒體版本不工作,所以你可能必須點(diǎn)擊“Resources”,然后下載視頻。這也是值得的?。?/p>
第2步
閱讀Designing for Real World Networks,以了解網(wǎng)絡(luò)是如何不可預(yù)測的,以及蘋果是如何建議你為此做準(zhǔn)備。最重要的是,讓網(wǎng)絡(luò)連接調(diào)節(jié)工具成為你的朋友。
第3步
閱讀Christina Moulton的Adding an API-Backed UIPageViewController in Swift,學(xué)習(xí)一個完整的工作界面代碼如何與后端API交互。
第4步
下載并學(xué)習(xí)如何使用Charles Proxy或另一個代理軟件,以便你可以調(diào)試網(wǎng)絡(luò)應(yīng)用程序。這些代理工具允許你在你的應(yīng)用程序運(yùn)行時任何給定的時間看到它的網(wǎng)絡(luò)請求。
第5步
閱讀NSURLSession : Getting Started,學(xué)習(xí)使用蘋果的官方網(wǎng)絡(luò)API的教程。
第6步
閱讀Ash Furrow的MVVM in Swift,學(xué)習(xí)從傳統(tǒng)的MVC構(gòu)建你的應(yīng)用程序的另一種方式,以及如何調(diào)用符合這個結(jié)構(gòu)的網(wǎng)絡(luò)。
第7步
看Chris Eidhof在Tiny networking in Swift的討論,看你怎么可以利用Swift的特性在iOS建立更簡單也更強(qiáng)大的網(wǎng)絡(luò),而不依賴于一個重量級的網(wǎng)絡(luò)庫。
第8步
閱讀Mike Ash的Introduction to the Sockets API,對在iOS的套接字有一個更深入的理解,以及引擎蓋下低級的套接字API是如何工作的。
第9步
看看我自己的對如何快速獲得一個Python后端API并將它與你的Swift代碼連接的文章——The Backwards Backend Technique(后端技術(shù))。
第10步
熟練掌握一種工具,你可以用來測試網(wǎng)絡(luò)的API,如cURL、httpie或Postman。
本文翻譯自:How to Achieve iOS Networking Proficiency in 10 Steps