# 老司机 iOS 周报 #365 | 2026-03-02

![ios-weekly](https://github.com/SwiftOldDriver/iOS-Weekly/blob/master/assets/weekly-header/365.png?raw=true)
老司机 iOS 周报，只为你呈现有价值的信息。

你也可以为这个项目出一份力，如果发现有价值的信息、文章、工具等可以到 [Issues](https://github.com/SwiftOldDriver/iOS-Weekly/issues) 里提给我们，我们会尽快处理。记得写上推荐的理由哦。有建议和意见也欢迎到 [Issues](https://github.com/SwiftOldDriver/iOS-Weekly/issues) 提出。

## 新手推荐

### 🐎 [Swift Package Manager Mirrors for Local Development](https://kunat.dev/notes/spm-package-mirroring/)

[@BluesJiang](https://github.com/BluesJiang): 文章介绍了 Swift Pacakge Manager 的 Mirrors 的用法。当在开发时，可以在使用命令行，临时将 Package.swift 中声明的依赖从分发地址映射到本地仓库或者其他地址。不再需要手动的修改链接地址，并且还要在提交时刻意改回来或者不提交改动。是一个很好用的功能。

## 文章

### 🌟 🐕 [Ioser 铭（iOS 开发 2015-2025）](https://mp.weixin.qq.com/s/Us7oExIJ7LgJTmJfUpcm7w)

[@邦 Ben](https://weibo.com/linwenbang)：看着 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](https://bryce.co/swizzle-everything/)

[@Kyle-Ye](https://github.com/Kyle-Ye): 文章深入分析了 Apple 如何通过 Method Swizzling 实现对整个框架的 hook，以 Main Thread Checker 为例，展示了其如何大规模替换数万个方法。作者介绍了基于 trampoline 的实现方案——为每个被 hook 的方法生成唯一的跳板函数，通过共享的汇编处理程序保存和恢复寄存器状态，再调用统一的回调。文章还探讨了如何通过运行时内存映射动态创建 trampoline 以突破数量限制，以及使用私有 API `class_replaceMethodsBulk` 批量替换方法以减少锁竞争从而提升性能。对于对 Objective-C Runtime 底层机制和性能优化感兴趣的开发者值得一读。

### 🐕 [Should You Use All These Dependencies?](https://fractal-dev.com/blog/should-you-use-all-these-dependencies?lang=en)

[@Barney](https://github.com/BarneyZhaoooo)：从 iOS 项目依赖选择角度出发，作者以项目中仅用到 3 处 RxSwift 却引入 3MB 体积与编译成本为例，讨论“能不用库就不用”的默认立场。核心内容包括：

- **决策标准**：评估收益、迁移成本、团队熟悉度与长期维护负担，避免因熟悉而引入不必要抽象
- **案例对比**：以 Alamofire vs URLSession 说明第三方并非总是更省时，功能范围与实际需求应匹配
- **风险控制**：建议使用 Wrapper/Facade、版本锁定与定期依赖审计（工具 + 清单）降低锁定与弃坑风险

最后强调每个依赖都是“当下效率”与“未来债务”的权衡，适合建立团队的依赖准入与清理流程。

### 🐕 [CKSyncEngine questions and answers](https://christianselig.com/2026/01/cksyncengine/)
[@AidenRao](https://weibo.com/AidenRao)：苹果在 WWDC23 带来的 CKSyncEngine 毫无疑问是近年来最优秀的 API 之一，它将复杂的云同步逻辑大幅简化。但官方文档之外，仍有大量实践细节亟待探索。知名应用 Apollo 和 Pixel Pals 的作者 Christian Selig 近期分享了他在集成 CKSyncEngine 过程中的一系列实战问答。本文并非入门教程，而是围绕冲突解决、数据模型兼容、状态管理、错误处理等开发者必然会遇到的具体问题，提供了清晰的解决方案和代码示例。如果你正考虑为你的应用添加健壮的 CloudKit 同步能力，这份来自一线开发者的经验总结将极具价值。

## 工具

### [Happy：为 Codex/Claude Code 提供无缝的移动端交互](https://github.com/slopus/happy)

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 及往年内参**

![](https://github.com/SwiftOldDriver/iOS-Weekly/blob/master/assets/qrcode_for_wechat.jpg?raw=true)

同时也支持了 RSS 订阅：https://github.com/SwiftOldDriver/iOS-Weekly/releases.atom 。

## 说明

🚧 表示需某工具，🌟 表示编辑推荐

预计阅读时间：🐎 很快就能读完（1 - 10 mins）；🐕 中等 （10 - 20 mins）；🐢 慢（20+ mins）
