老司機 iOS 週報,只為你呈現有價值的資訊。
你也可以為這個專案出一份力,如果發現有價值的資訊、文章、工具等可以到 Issues 裡提給我們,我們會盡快處理。記得寫上推薦的理由哦。有建議和意見也歡迎到 Issues 提出。
新聞
New LSP language service supporting Swift and C-family languages for any editor and platform
這應該是過去一週 Swift 社群最大的新聞,Apple 將主導一個新的開源專案,來為其在 Xcode 生態中的 Swift 和 C family 的語言新增 LSP 的支援,這意味著之後在 VS Code 上寫 Swift 也能享受自動完成,定義跳轉等功能。目前來看,Swift 已經成為全域通用型程式設計語言,但目前對於非 Apple 生態下的 Swift 開發的工具體驗並不友好,Apple 此舉無疑對於 Swift 社群是重大福音。
Photoshop for iPad hands-on: an exclusive look
Adobe 在近期的 Max 大會上釋出了 Photoshop iPad 版本的預覽版,正式版將在 2019 年釋出。The verge 進行了評測,結合月底蘋果的釋出會,隨著全面屏 iPad Pro 的更新,可能會有一系列生產力 app 隨之釋出。
文章
? SwiftOldDriver 精選: Diff 演算法在 iOS 中的應用(一)
文章來自 SwiftOldDriver 精選,將是一個系列,本文是開篇:講 Diff 演算法的一些基本概念。
在計算機領域中,Diff 是一個很重要的概念,被廣泛的運用於各式各樣的場景。比如說,React 利用 Diff 優化 Dom 重新整理導致的效能問題;Git 藉助 Diff 演算法實現了版本之間的差異化對比;騰訊 Tinker 熱修復藉助 Diff 演算法生成 patch 包等。
? Xcode 10 Library Tips
相信不少人已經更新到了 Xcode 10。Xcode 10 的 UI 控制元件視窗從右下角挪到了右上角。預設的使用邏輯是點開後,拖拽一個控制元件到介面上控制元件視窗會自動消失。如果一個頁面需要連續拖幾個控制元件就會很痛苦。所以分享一個重要的 tip:按住 option 建點選彈出控制元件視窗的按鈕,視窗就會常駐。
? 拍照聚焦和曝光,AVFoundation 簡明教程
這是利用 AVFoundation
實現拍照、聚焦和曝光等功能後的一篇總結文章,包含程式碼和示例,對有這方面應用需求的朋友可以花點時間看看。
? Unleashing the power of asset catalogs and bundles on iOS
對於 iOS 開發者來說,Bundles
和 Asset catalogs
應該是再熟悉不過了。文章介紹了一些高階用法,特別是利用 Asset Catalogs 儲存一些配置檔案,可以給不同的裝置配置不同的值,開啟了另一個世界。文末還結合 Bundles
和 Asset catalogs
介紹了一個實際 App 中的使用場景。
? Tricky UIViewController transition animations
目前有很多為初學者準備的簡單過渡動畫教程,但鮮有為高階開發者準備的。在這篇文章裡,作者圖文並茂地分享了他最近實現的幾個複雜過渡動畫,以及幾個他在實現過渡動畫時的小技巧。
? 揭祕Flutter Hot Reload(原理篇)
本文介紹了 Flutter 的熱過載(HotReload)
的實現原理,如果有興趣自行實現熱過載(HotReload)
特性的同學可以關注一下。
- Flutter 熱過載的關鍵程式碼位於
/flutter/packages/flutter_tools/lib/src/run_hot.dart
- 在需要重新載入時,掃描有修改的檔案,通知 UI 執行緒重繪 View 樹
- 在 Flutter 中,因為 Dart 程式碼是工作在自己的 VM 下,所以 UI 層的 reload 是通過服務註冊的方式來跟外界進行打交道的
? TimeInterval, Date, and DateInterval
作者講述了 TimeInterval、 Date、 DateInterval 的歷史由來。使用這些 API 的同時瞭解這些有趣的歷史,不失為一個愉快的過程。
程式碼
Panda - 基於 Swift 的 Autolayout 實現
使用 Swift 重新實現 Cassowary 演算法、不依賴 UIView 的 Autolayout 機制,使得 Layout 和渲染都可以在後臺進行。拋去多執行緒的影響,演算法本身的效率也是略高於 Apple 的實現,即使不用的話,也可以通過原始碼瞭解 Autolayout 內部的運作原理。
內推
-
北京-百度網盤 持續招 iOS 開發:社招、應屆、實習均可。專案在技術上很有挑戰性,團隊技術氛圍極好。誠心希望各路大神前來切磋,也歡迎計算機基礎好的小白來共同學習。簡歷發郵箱 xuyafei01@baidu.com,暫不考慮的也歡迎微博私信 @小非86 聊聊~
-
北京-螞蟻金服 招iOS/安卓/前端開發:負責支付寶會員及帳號業務線,地點北京國貿,金臺夕照地鐵站出口 100 米。有興趣的同學歡迎將簡歷傳送到:weijing.wdf@alibaba-inc.com / weijing.wdf@antfin.com (同一個郵箱)或者微博私信 @折騰範兒_味精 瞭解情況。
-
上海即刻:如果你認識聰明勤奮、膽大心細、有追求的工程師,那就來加入我們吧!任何推薦或簡歷可直接發給 Jason(即刻 iOS leader): jasy@okjike.com,或微博 @JasonYuh。
-
杭州奇志科技招聘 iOS、前端:奇志科技自 2016 年起通過行業無人機協同工作流 Mesh 進入物聯網與人工智慧領域, 併成功為房地產、建築、測繪、電力巡檢等行業提供無人機解決方案。感興趣可以微博上私信 @沒故事的卓同學 瞭解。
-
深圳頭條研發中心誠招各路 iOS 好手一起做取悅自己的專案:如想了解更多深圳頭條的資訊,可以加小T微信:tomtan,切磋技術和聊情懷都可以喔~~~~
-
北京位元組跳動 iOS 團隊持續招人中:簡歷可以傳送到郵箱 raozhizhen@gmail.com,或者新增我(@AidenRao)的微信 jingmu1994 瞭解更多公司及崗位資訊。
-
北京百度教育事業部招 iOS 開發:百度教育事業部,地點:北京西二旗。部門下面有百度閱讀,百度文庫,百度愛聽等 App 產品。團隊技術氛圍濃厚,有興趣的同學歡迎將簡歷傳送到我的郵箱:lizelei@baidu.com。
關注我們
我們開通了公眾號,每期釋出時公眾號會推送訊息,歡迎關注。
同時也支援了 RSS 訂閱:github.com/SwiftOldDri… 。
本期編輯
@沒故事的卓同學,@四娘,@享耳先森,@Damonwong,@折騰範兒_味精,@張嘉夫,@AidenRao,@Parsifal,@aaaron7,@方秋枋,kyo,tom510230,anotheren,水水,looping,@JasonYuh,@老老老老老老老驢,@小非86
說明
? 表示需翻牆,? 表示編輯推薦
預計閱讀時間:? 很快就能讀完(1 - 10 mins);? 中等 (10 - 20 mins);? 慢(20+ mins)