摸鱼精选第 28 期
1. 云音乐 Swift 混编 Module 化实践
Objective-C 组件库 Module 化是支持 Swift 混编的基础,Module 化的核心是提供 modulemap 文件,要生成 modulemap,组件需打开 Module 编译,这个过程中可能会遇到各种未知问题。 云音乐在治理过程中遇到的问题相对比较收敛,主要集中在 Module 编译方式的变化,导致一些上下文信息丢失,一部分问题能够通过自动化的方案解决,而有些问题仍然需要进行人工验证。
2. Debouncing with Swift concurrency
使用纯 Swift 来实现一个 Debounce
功能,主要用到 NSRecursiveLock
和 Task
。
作者还实现了类似功能的 Throtter
功能,支持 SwiftUI 的 Button
。
Github 地址: https://github.com/sideeffect-io/Regulate
3. Unreal Engine C++ Complete Guide
用虚幻引擎的 C++接口开发的最佳实践。