老司機 iOS 週報,只為你呈現有價值的資訊。
你也可以為這個專案出一份力,如果發現有價值的資訊、文章、工具等可以到 Issues 裡提給我們,我們會盡快處理。記得寫上推薦的理由哦。有建議和意見也歡迎到 Issues 提出。
專欄
? ? 普通本科如何畢業入職一線網際網路公司
我們老司機 iOS 專欄內最新出爐的一篇文章。作者畢業於一所普通的三本院校,從面試五分鐘就被請出去,到現在就職於一線網際網路公司,這期間有太多的思考、討論、覆盤和抉擇。一些經驗,希望給後來的同學帶來一些幫助。
? CocoaPods 進階之利用 Subspec 實現程式碼“模組化”
老司機小專欄的文章,主要講如何利用 Subspec 對 framework 內部程式碼進行模組化,讓呼叫者做到「按需引入」。
文章
? ? 分散式系統的全面介紹
最近幾個月看過最好的文章。在有限的篇幅裡真正全面的介紹了分散式系統。作為客戶端研發,對分散式系統其實一直都有很多疑問,平行計算是分散式,mysql 主從也是分散式,他們之間是什麼關係?去中心化和分散式是一樣的嗎?後端研發的週報裡整天提的 kafka 是些什麼玩意兒, 它和 hadoop 有什麼關係?分散式能同時保證 availability 和 consistency嗎?這類問題我能提一天。
文章首先丟擲一個核心觀點,分散式的設計都是圍繞 consistency 和 availability 來做 trade-off,然後從資料庫、訊息派發、應用程式、計算、檔案系統等不同應用場景的分散式應用進行了科普和討論,解答了基本我所有的疑問,並且還將一些我連怎麼問都不知道的疑惑都解釋得很清楚,文章的最後一章分散式賬本,還帶我第 N 次的入門了比特幣和區塊鏈(希望是最後一次) (:зゝ∠)。總之,這是一篇值得花時間仔細閱讀的文章。
? 如何自動化測試 React Native 專案
系列文章共兩篇,上篇從自動化測試的核心思想入手,介紹了 E2E 測試與單元測試。E2E - 通過 UI 來從頭到尾(End-To-End)的測試,這種測試其實就是我們常說的 UITest。針對 RN 專案下的 UITest 文章推薦了 Detox 這款框架,而這款框架的底層用的是 google 的 Earl Grey。
下篇從單元測試入手介紹了基於 React 的各種可用測試工具,包括純 JS 邏輯的單元測試/元件渲染 Dom Diff 測試/元件通訊互動測試/Reducer/Action handler/Selector/Utils 測試等等。並且把多種測試模式合併起來,形成整合測試。
? iOS 業務元件化框架 Axe 詳解
業務元件化是近幾年非常火的 APP 架構思路, 究其原因,隨著業務發展,APP 的規模也逐漸膨脹,程式碼管理與協作開發變得困難,編譯耗時也屢創新高,應用功能的拆分與研發團隊的拆分也不可避免。
本文使用元件化框架 Axe 闡述瞭如何解決程式碼隔離,單獨編譯,元件互動三個問題。值得對元件化有興趣的小夥伴們學習。
? Using Dedicated Objects as Delegates & Datasources
使用專門的物件去作為 tableView 的 delegates 和 datasources,即可減少 viewController 的程式碼,又能使這些程式碼被多個 viewController 複用,需要的話,還能方便的進行資料展示形式的切換。也可以為多個 tableview 寫一個 datasources 展示不同的 cell 樣式,做到資料展示形式的複用。
? Network Extension Intro
如果你還沒用過 Network Extension,你也許會對它的強大感到驚訝,它提供了其它框架不具備的系統底層介面,讓你能夠自定義系統的核心網路功能。
這篇文章的作者將帶你瞭解 Network Extension 的功能和用途,這只是這個系列的第一篇,簡單概括了 Network Extension 的功能,下篇將會詳細講解 NEPacketTunnelProvider
並且帶你深入蘋果的示例專案 SimpleTunnel,對於 NE 感興趣的同學可以關注一下。
NSAttributedString in Swift using SwiftRichString 2
SwiftRichString 開源庫的使用教程,是一個很不錯的富文字樣式語法糖,對於經常要處理富文字的應用可以嘗試一下。
? Build Incrementation Techniques for iOS Release Train
本文首先介紹了蘋果官方對 version 和 build 號的一些規範,然後介紹了幾種可持續整合中自動增加管理 build 號的方式,個人比較喜歡 fastlane 這種。
書
Introducing ARKit by Tutorials
Ray Wenderlich 的新書《ARKit by Tutorials》,在這本書裡會教你如何構建漂亮的擴增實境 app,包括沉浸式的科幻傳送門、撲克牌篩子和麵部追蹤 app 等等。在學習的過程中,你會接觸到往場景中新增物件、管理 session、建立真實的遊戲物理效果以及其他方面的內容。目前正在首發限時特價銷售中。
音視訊
? UIKonf 2018 視訊資源
UIKonf 是柏林的一個獨立開發者會議,會議剛於 5.13-5.16 結束,現在他們將視訊 po 到 Youtube 上。主題非常豐富,包含技術、設計等內容。
關注我們
我們開通了公眾號,每期釋出時公眾號會推送訊息,歡迎關注。
同時也支援了 RSS 訂閱:github.com/SwiftOldDri… 。
本期編輯
@沒故事的卓同學,@四娘,@mmoaay,@享耳先森,@Damonwong,@折騰範兒_味精,@張嘉夫,@AidenRao,@Parsifal,@aaaron7,@方秋枋
說明
? 表示需翻牆,? 表示編輯推薦
預計閱讀時間:? 很快就能讀完(1 - 10 mins);? 中等 (10 - 20 mins);? 慢(20+ mins)