老司机 iOS 周报 #365 | 2026-03-02
你也可以为这个项目出一份力,如果发现有价值的信息、文章、工具等可以到 Issues 里提给我们,我们会尽快处理。记得写上推荐的理由哦。有建议和意见也欢迎到 Issues 提出。
新手推荐
🐎 Swift Package Manager Mirrors for Local Development
@BluesJiang: 文章介绍了 Swift Pacakge Manager 的 Mirrors 的用法。当在开发时,可以在使用命令行,临时将 Package.swift 中声明的依赖从分发地址映射到本地仓库或者其他地址。不再需要手动的修改链接地址,并且还要在提交时刻意改回来或者不提交改动。是一个很好用的功能。
文章
🌟 🐕 Ioser 铭(iOS 开发 2015-2025)
@邦 Ben:看着 Ioser 著名 iOS 梗,以及「孙源(sunnyxx)」,「郭耀源(ibireme)」的「YYKit」,「唐巧」的《iOS 开发进阶》成为必读书目,「喵神王巍(onevcat)」的 OneV's Den,「Casa Taloyum(casatwy)」的组件化架构方案「Bang」的 JSPatch,「雷纯锋」分享的 MVVM 和 RAC 实践,「limboy」的技术思考,小虾等前辈在技术会议上分享等等,熟悉感拉满的名字,都看恍惚了。这十年里苹果生态的变化也大得很,从啃 UIKit、写 OC,到 Swift 慢慢成熟、SwiftUI 推出,再到空间计算一步步落地,新技术新框架换了一波又一波。但越干越明白,底层原理、扎实的工程能力从来没过时,不管技术怎么变,把问题拆透、把性能做优、把工程搭稳的核心思路一直没变。如今迈入 AI 时代,端侧智能、AI Agent 成为新方向,AI 也成了开发的好帮手,虽赛道不断拓展、工具持续升级,但本质的事情还是得持续迎向新事物学习,朋友们,一起加油,AI 时代有更好的机会。
🐕 How Apple Hooks Entire Frameworks
@Kyle-Ye: 文章深入分析了 Apple 如何通过 Method Swizzling 实现对整个框架的 hook,以 Main Thread Checker 为例,展示了其如何大规模替换数万个方法。作者介绍了基于 trampoline 的实现方案——为每个被 hook 的方法生成唯一的跳板函数,通过共享的汇编处理程序保存和恢复寄存器状态,再调用统一的回调。文章还探讨了如何通过运行时内存映射动态创建 trampoline 以突破数量限制,以及使用私有 API class_replaceMethodsBulk 批量替换方法以减少锁竞争从而提升性能。对于对 Objective-C Runtime 底层机制和性能优化感兴趣的开发者值得一读。
🐕 Should You Use All These Dependencies?
@Barney:从 iOS 项目依赖选择角度出发,作者以项目中仅用到 3 处 RxSwift 却引入 3MB 体积与编译成本为例,讨论“能不用库就不用”的默认立场。核心内容包括:
- 决策标准:评估收益、迁移成本、团队熟悉度与长期维护负担,避免因熟悉而引入不必要抽象
- 案例对比:以 Alamofire vs URLSession 说明第三方并非总是更省时,功能范围与实际需求应匹配
- 风险控制:建议使用 Wrapper/Facade、版本锁定与定期依赖审计(工具 + 清单)降低锁定与弃坑风险
最后强调每个依赖都是“当下效率”与“未来债务”的权衡,适合建立团队的依赖准入与清理流程。
🐕 CKSyncEngine questions and answers
@AidenRao:苹果在 WWDC23 带来的 CKSyncEngine 毫无疑问是近年来最优秀的 API 之一,它将复杂的云同步逻辑大幅简化。但官方文档之外,仍有大量实践细节亟待探索。知名应用 Apollo 和 Pixel Pals 的作者 Christian Selig 近期分享了他在集成 CKSyncEngine 过程中的一系列实战问答。本文并非入门教程,而是围绕冲突解决、数据模型兼容、状态管理、错误处理等开发者必然会遇到的具体问题,提供了清晰的解决方案和代码示例。如果你正考虑为你的应用添加健壮的 CloudKit 同步能力,这份来自一线开发者的经验总结将极具价值。
工具
Happy:为 Codex/Claude Code 提供无缝的移动端交互
Happy (Happy Coder) 是一款开源的第三方配套应用,旨在为 Claude Code (以及 OpenAI Codex) 提供无缝的移动端交互体验。它并不是要取代你的桌面环境,而是通过“远程中继”方案,让你在离开工位时也能通过手机完全掌控 AI 的编程进度:
- 无感切换 (Seamless Handoff):在电脑终端运行 happy 启动 Claude。当你合上电脑出门时,打开手机 App 即可实时接管刚才的对话和代码上下文,状态完全同步。
- 权限即时推送:Claude Code 在执行高风险操作(如删除文件、运行复杂脚本)时需要授权。有了 Happy,你的手机会收到推送通知,点击即可远程“允许”或“拒绝”,无需死守在屏幕前。
- 实时语音协作:集成了语音交互功能。你可以像跟真人交互一样直接发语音,在走路或通勤时向 Claude 描述需求,看着它在远程电脑上自动写代码。
- 端到端加密 (E2E):安全性是其核心。它采用类似 Signal 的加密协议,代码和对话在传输前即在本地加密,开发者服务器无法读取你的任何代码内容。
内推
重新开始更新「iOS 靠谱内推专题」,整理了最近明确在招人的岗位,供大家参考
具体信息请移步:https://www.yuque.com/iosalliance/article/bhutav 进行查看(如有招聘需求请联系 iTDriverr)
关注我们
我们是「老司机技术周报」,一个持续追求精品 iOS 内容的技术公众号,欢迎关注。
关注有礼,关注【老司机技术周报】,回复「2024」,领取 2024 及往年内参
同时也支持了 RSS 订阅:https://github.com/SwiftOldDriver/iOS-Weekly/releases.atom 。
说明
🚧 表示需某工具,🌟 表示编辑推荐
预计阅读时间:🐎 很快就能读完(1 - 10 mins);🐕 中等 (10 - 20 mins);🐢 慢(20+ mins)