老司机 iOS 周报 #315 | 2024-12-09
你也可以为这个项目出一份力,如果发现有价值的信息、文章、工具等可以到 Issues 里提给我们,我们会尽快处理。记得写上推荐的理由哦。有建议和意见也欢迎到 Issues 提出。
新闻
CocoaPods Trunk Read-only Plan
Cocoapods 为将 Specs 仓库转为只读状态制定了时间表,预计在 2026 年 12 月 2 日正式不再接受新的提交。
文章
🐕 有意为之还是技术缺陷?SwiftUI 多层导航中的 onChange 异常 | 肘子的 Swift 记事本
@Barney:本文探讨了 SwiftUI 中 onChange
的异常行为,特别是在多层导航的情况下。文章分析了在使用 NavigationView
和 NavigationLink
时,onChange
修饰符可能会出现的问题,尤其是当视图层级嵌套较多时。作者提供了几个实际示例,演示如何管理状态变化和确保 onChange
正常响应。同时,提供了一些最佳实践,以帮助开发者避免常见陷阱并提升应用性能和用户体验。
🐕 Improving the approachability of data-race safety
@Smallfly:这篇文章提出了 Swift 并发特性面临的易用性挑战,包括过多的显式注释、数据竞争误报和异步代码编写困难。文中提出了解决方案包括减少并发注释、调整异步函数语义以减少误报、提供同步和异步代码之间的桥接工具,以及自动迁移代码等。目的是为了让 Swift 并发更易学易用,同时保持高性能。推荐给对 Swift 并发特性演进感兴趣的同学阅读。
🐎 深入探讨 C++ 多线程性能优化
@老驴:这篇来自腾讯技术工程的文章从实际案例出发,深入探讨了 C++ 多线程编程中的性能优化问题,包括锁竞争、缓存一致性等难点,并通过详细的 benchmark 数据对比锁与原子操作的性能差异。此外,文章还介绍了如 Epoch Based Reclamation 等高级优化方法。无论是提升性能还是理解底层机制,这篇文章都值得一读。
工具
Xcode + ChatGPT: Official Support is Available Now
@EyreFree:这篇文章介绍了 OpenAI 最新宣布的 ChatGPT for macOS 可以直接与 Xcode 集成的功能,除了 Xcode,该功能还支持 VS Code、TextEdit 和 Terminal 等开发工具。使用该功能需要按以下步骤:
- 目前该功能仅向 ChatGPT Plus 和 Team 用户开放请先确保条件符合,Enterprise 和 Edu 用户将在近期获得访问权限
- 确保 ChatGPT for macOS 应用已更新到最新版本
- 在 ChatGPT 设置中启用
Enable Work with Apps
选项以获取辅助功能权限 - 使用快捷键 Option + Space 打开 ChatGPT 聊天栏
- 点击
Work With Apps
按钮并选择 Xcode
通过这种集成,ChatGPT 可以直接查看和理解开发者的代码库(Codebase),从而提供更准确的回答和建议。作者以开发 SwiftUI 动画的卡片翻转游戏为例,展示了这个新功能的应用。AI 辅助编程近来发展迅速,这次与 Xcode 的原生集成让开发体验更加流畅,标志着 AI 编程助手进入新阶段。
Easydict: 一个简洁优雅的词典翻译 macOS App
@Cooper Chen:Easydict 是一个开源的词典翻译 macOS App,能够轻松优雅地查找单词或翻译文本。Easydict 开箱即用,能自动识别输入文本语言,支持输入翻译,划词翻译和 OCR 截图翻译,可同时查询多个翻译服务结果,目前支持市面上绝多数主流的翻译 App,使用者可以通过 Homrebrew 快速安装使用,Easydict 支持鼠标滑词、OCR 识别等功能,是 Mac 平台上非常高效的翻译软件,值得推荐。
代码
swift-sharing
@bq:如其名,sharing,你能想到的状态共享,跨模块间的状态共享、持久化、观察监听,它都做了,无论是实现业务逻辑、Combine、SwiftUI、UIKit 都能无痛接入。关键人家实现还非常优雅,宏、属性包装器、清晰的职责实现,都是很优秀的实践,单单接入就能让你的代码耳目一新了。还是那句话,Point-Free 出品,必属精品。
内推
重新开始更新「iOS 靠谱内推专题」,整理了最近明确在招人的岗位,供大家参考
[北京] 比图科技 - 高级 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)