老司機 iOS 週報 #203 | 2022-05-23
theme: github highlight: solarized-light
老司機 iOS 週報,只為你呈現有價值的資訊。
你也可以為這個專案出一份力,如果發現有價值的資訊、文章、工具等可以到 Issues 裡提給我們,我們會盡快處理。記得寫上推薦的理由哦。有建議和意見也歡迎到 Issues 提出。
新聞
《WWDC22 內參》作者招募 &《WWDC21 內參》免費領取
《WWDC22 內參》作者招募工作正式開始,請感興趣的朋友點選上方連結參與報名,報名截止時間為 5 月 30 號。
去年我們第一次公開招募了一些新的同學參與進來,同時也引入了稽核機制,最終交付了一份還算滿意的答卷。103 篇文章、2810 份訂閱、幾十萬的閱讀量,這些資料都要比往年要好,非常感謝大家對老司機技術的支援和信任。《WWDC21 內參》也已經可以免費領取,在老司機技術週報公眾號中回覆「2022」即可獲取連結。
Developer - 設計開發加速器
設計高效的 UI 測試
2022 年 5 月 31 日(報名截止 5 月 16 日)
瞭解如何設計測試,來幫助你發現和診斷最棘手的漏洞。我們將解釋如何使用 XCTest 改進您的自動化測試,以找到程式碼中的隱憂,以及如何準備測試以應對失敗。從而更輕鬆地對問題進行分類,以便您可以快速解決問題,並修復錯誤。理解中斷,學習如何預測 App 的潛在中斷、建立智慧測試以識別它們。通過使用 UI 中斷處理,構建更好的測試,管理預期的警報。
文章
Dutter | 釘釘 Flutter 跨四端方案設計與技術實踐
@老峰:Dutter 即 DingTalk Flutter,是釘釘內基於 Flutter 構建的跨四端研發框架,本文主要包含以下內容: - 整體架構: Dutter Runtime、Dutter Dev Kit、Dutter OPS Kit; - 資料通訊包括:Channel、Dutter FFI; - 訊息匯流排; - 模組化; - 容器化; - 元件庫:dingui_flutter 、dingtalk_uikit; - 最佳實踐以及部分 FlutterEngine 層面的問題定位等。
🐕 Scripting in Swift: Git Hooks
@享耳先森:Swift 除了用於 App 還可以幹什麼?本文作者使用 Git Hooks 結合 Swift Command Line Tool
解決真實工作場景中遇到的問題,如果你也有類似需求又不熟悉其他指令碼語言,Swift 是很好的解決方案。
🐕 京東 App MCube 動態化實踐
xuyafei:在京東 App 業務高速發展的過程中,為了使更快的需求響應速度與研發人力和穩定性需求之間達到平衡,京東自研了一套原生的“動態化+跨端”框架 MCube。本文對其方案進行了簡單介紹,其通過三方庫 Yoga 作為其佈局引擎;通過 XML 作為 DSL 描述原生控制元件;通過協議層對接各個可插拔元件。另外還有其容器分層架構的設計、配套管理平臺和開發套件等介紹,感興趣的同學可以閱讀原文了解。
程式碼
Euclid: a Swift library for creating and manipulating 3D geometry
@蓮叔:這是一個能讓你非常方便建立和操作各種基礎3D模型的程式碼庫,並且可以非常方便的和 SceneKit 相關的場景進行整合。傳統的方法中,要建立三維模型然後新增貼圖,往往都需要編寫上百行 OpenGLES 的程式碼才能實現,而通過 Euclid,建立模型就如同建立一個普通的 View 那樣簡單,感興趣的朋友可以看一下作者開發的一個 macOS App:ShapeScript, 可以通過文字描述的方法建立三維模型,可以說這個開源的元件就是這個 App 的SDK版。應該有非常多有趣的功能可以實現。
Runestone
Runestone 是一個高效易用的程式碼編輯器庫,最大的亮點是:
- 使用原生技術實現,不需要依賴於 WebView
- 使用 TreeSitter 作為 Parser 後端,可以高效地進行增量解析,相容大部分主流程式語言
- 借鑑了 AvalonEdit 的 Line Management
摸魚週報
@摸魚週報 #53:第 53 期摸魚週報來了,一起來看下本期概要:
- 話題:遠端工作正在成為趨勢
- 面試模組:CRC 實踐應用:理論推導
- 優秀部落格:App Extension
- 學習資料:一個大學生的學習計劃
- 開發工具:適用於
macOS
的現代媒體播放器,IINA
由開源媒體播放器mpv
提供支援,幾乎可以播放您擁有的所有媒體檔案。
內推
老司機週報團隊聯合知識小集和 SwiftGG 翻譯組收錄了一份靠譜的內推職位。
如果你想找工作,點這裡:http://www.yuque.com/iosalliance/article/bhutav
如果你想招人,點這裡:http://www.yuque.com/iosalliance/article/ycyhf3
當然,也歡迎你關注我們每一期的週報,我們會在每期週報底部及時更新編輯內推崗位。
關注我們
我們是「老司機技術週報」,一個持續追求精品 iOS 內容的技術公眾號,歡迎關注。
關注有禮,關注【老司機技術週報】,回覆「2021」,領取 2017/2018/2019/2020 內參
同時也支援了 RSS 訂閱:http://github.com/SwiftOldDriver/iOS-Weekly/releases.atom 。
說明
🚧 表示需某工具,🌟 表示編輯推薦
預計閱讀時間:🐎 很快就能讀完(1 - 10 mins);🐕 中等 (10 - 20 mins);🐢 慢(20+ mins)
- 老司機 iOS 週報 #206 | 2022-06-27
- 老司機 iOS 週報 #205 | 2022-06-20
- 【老司機精選】基於蘋果晶片的影象處理
- 【老司機精選】一文看完「WWDC22」174 個 Session
- 【老司機精選】SwiftUI 技術內幕
- 【老司機精選】相機拍攝新變化
- 老司機 iOS 週報 #204 | 2022-05-30
- 【老司機精選】探索 WKWebView 新增功能
- 老司機 iOS 週報 #203 | 2022-05-23
- 【老司機精選】APP 效能優化終極求生指南
- 老司機 iOS 週報 #202 | 2022-05-16
- 【老司機精選】理解和消除 App 中的卡死
- 【老司機精選】初見 TextKit 2
- 老司機 iOS 週報 #201 | 2021-05.09
- 【老司機精選】Swift 中的 ARC 機制: 從基礎到進階
- 【老司機精選】為你的 App 減少網路延遲
- 【老司機精選】使用 Clang 靜態分析器儘早發現 Bug
- 【老司機精選】通過斷點技巧讓除錯更高效
- 【老司機精選】App Clip 新特性
- 【老司機精選】認識 Swift 中的非同步與併發