|
29 | 29 |
|
30 | 30 | ## 文章 |
31 | 31 |
|
32 | | -> 写的不错的技术博客,包含但不局限于 iOS、多端统一、设计、产品等 |
33 | | -
|
34 | 32 | ### 🐕 [Why Ollie is moving away from SwiftUI to UIKit](https://medium.com/goodones/why-ollie-is-moving-away-from-swiftui-to-uikit-cfdefe918d1c) |
35 | 33 |
|
36 | 34 | [@JonyFang](https://github.com/JonyFang): 本文描述了该团队在 SwiftUI 应用过程中经历了一系列关于 SwiftUI 和 Swift 并发的问题,最终决定从 SwiftUI 迁移到 UIKit。他们指出 SwiftUI 的抽象和不确定性给开发带来了更多的开发成本,在处理复杂的业务逻辑和多线程时问题更为明显。SwiftUI 的"魔法"和 AttributeGraph 的不确定表现让 debug 变得困难。开发过程中 Swift 并发的死锁问题也让开发者头疼,而其异步执行的顺序问题使得调试变得复杂。 |
|
48 | 46 | 注意某些协议也可能携带 `@MainActor` 约束以及我们可以在测试代码中使用 `MainActor.assertIsolated(_:)` 来进行运行时的 `@MainActor` 隔离检查。 |
49 | 47 |
|
50 | 48 |
|
51 | | -### [C++常见避坑指南](https://mp.weixin.qq.com/s/ivmOl-qGALnHEVbwKANiug) |
| 49 | +### [C++ 常见避坑指南](https://mp.weixin.qq.com/s/ivmOl-qGALnHEVbwKANiug) |
52 | 50 |
|
53 | 51 | [@莲叔](https://github.com/aaaron7):腾讯是大厂中 C++ 使用度最高的公司,很长一段时间几乎所有的后端服务都是用 C++ 开发完成的。本篇文章介绍与总结了 C++ 在大规模工程开发中最常见的问题,非常有价值。新手使用 C++ 往往很容易被淹没在无数的语言细节里,同样的逻辑也会有多种写法,这个时候如果有一个身经百战的前辈出来给你划重点,那练级效率必然会事半功倍。这篇文章就给我这样的感觉,推荐给需要在工作中使用 C++ 的技术同学阅读。 |
54 | 52 |
|
55 | 53 |
|
56 | 54 | ### 🐎 [Everything you need to know about Swift 5.10](https://www.donnywals.com/everything-you-need-to-know-about-swift-5-10/) |
57 | 55 |
|
58 | | -[@含笑饮砒霜](https://weibo.com/chinafishnews/):伴随着 iOS 17.4 和 iPadOS 17.4 的发布,Apple 推出了Swift 5.10,这一版本在并发性方面取得了显著的进步。Swift 5.10 主要针对 Swift Concurrency 的数据安全功能进行了改进,特别是在严格并发检查方面。通过增强并发检查,Swift 5.10 现在能够更准确地识别并标记出不安全的代码,从而帮助开发者在编写并发代码时避免数据竞争和其他线程安全问题。Swift 5.10 还引入了 SE-0412 提案,该提案限制了全局变量的并发访问,进一步提高了 Swift 在编译时防范数据争用的能力。这意味着开发者在编写涉及共享状态的代码时,需要更加明确地考虑其并发安全性。 |
| 56 | +[@含笑饮砒霜](https://weibo.com/chinafishnews/):伴随着 iOS 17.4 和 iPadOS 17.4 的发布,Apple 推出了 Swift 5.10,这一版本在并发性方面取得了显著的进步。Swift 5.10 主要针对 Swift Concurrency 的数据安全功能进行了改进,特别是在严格并发检查方面。通过增强并发检查,Swift 5.10 现在能够更准确地识别并标记出不安全的代码,从而帮助开发者在编写并发代码时避免数据竞争和其他线程安全问题。Swift 5.10 还引入了 SE-0412 提案,该提案限制了全局变量的并发访问,进一步提高了 Swift 在编译时防范数据争用的能力。这意味着开发者在编写涉及共享状态的代码时,需要更加明确地考虑其并发安全性。 |
59 | 57 |
|
60 | 58 |
|
61 | 59 | ### 🐢 [The power of self-sufficient features](https://www.swiftindepth.com/articles/self-sufficient-features/) |
|
67 | 65 |
|
68 | 66 | ### 🐕 [How to use VariadicView, SwiftUI's Private View API ](https://www.emergetools.com/blog/posts/how-to-use-variadic-view) |
69 | 67 |
|
70 | | -[@Cooper Chen](https://github.com/cjlcooper):本文介绍了 SwiftUI 中私有视图 API 称为 VariadicView,,通过枚举 _VariadicView 是这个类的入口,它包括其他类型,例如_VariadicView_MultiViewRoot和_VariadicView. tree 等等,文章介绍了如何使用 VariadicView 以及其安全性,对于 SwiftUI 相关开发有不错的实用性。 |
71 | | - |
72 | | -### 🐕 [Debug for visionOS using Xcode simulator visualizations](https://www.createwithswift.com/debug-visionos-using-xcode-simulator-visualizations/) |
73 | | - |
74 | | -[@Barney](https://github.com/BarneyZhaoooo):这篇文章讲解了如何通过使用 Xcode 的 visionOS 模拟器中的六种主要调试模式(锚定、轴向、边界、碰撞形状、遮挡网格和表面模式)进行应用开发。这些模式有助于完成空间定位、理解定向、增强空间认知、事件检测、实现虚实交互以及精确实体定位。文章还指出了额外资源,以便于更好地运行和交互应用。掌握这些调试模式对于开发出富有交互性的空间计算应用并充分利用诸如 Apple Vision Pro 等设备至关重要。 |
| 68 | +[@Cooper Chen](https://github.com/cjlcooper):本文介绍了 SwiftUI 中私有视图 API 称为 VariadicView,,通过枚举 _VariadicView 是这个类的入口,它包括其他类型,例如_VariadicView_MultiViewRoot 和_VariadicView. tree 等等,文章介绍了如何使用 VariadicView 以及其安全性,对于 SwiftUI 相关开发有不错的实用性。 |
75 | 69 |
|
76 | 70 | ### 🐕 [High Performance Swift Apps](https://jacobbartlett.substack.com/p/high-performance-swift-apps) |
77 | 71 |
|
78 | 72 | [@DylanYang](https://github.com/Dylan19Yang):本文作者从自己的 App 入手,详细讲述了如何着手优化 App 的性能,其中包含了问题分析、Instruments 的简单使用说明以及最终的代码实践,非常适合新人入门。其中作者的一个观点也是非常令人赞同:应该先找到问题,聚焦在真正的瓶颈上,避免在琐碎的点上投入太多精力。 |
79 | 73 |
|
80 | | -### 🐢 [ConcurrencyRecipes](https://github.com/mattmassicotte/ConcurrencyRecipes) |
81 | | - |
82 | | -[@AidenRao](https://weibo.com/AidenRao):作者表示 Swift Concurrency 很难用,所以整理和记录了一些使用 Swift Concurrency 遇到的问题和解决方案,并欢迎大家一起共建。 |
83 | | - |
84 | | -### 🐕 [Swift Predicate: 用法、构成及注意事项](https://fatbobman.com/zh/posts/swift-predicate-usage-composition-and-considerations/) |
85 | | - |
86 | | -[@JonyFang](https://github.com/JonyFang): 文章详细介绍了如何有效利用 Swift Predicate,包括谓词的构建技巧、全局函数和实例方法的限制、支持创建多种泛型参数的谓词、线程安全和序列化等。通过具体代码示例,展示了 Swift Predicate 在不同场景下的应用,如如何处理可选值、实现线程安全的数据处理等,同时对比了 NSPredicate 与 Swift Predicate 的不同之处,强调了 Swift Predicate 在 Swift 开发中的好处和优势。 |
87 | | - |
88 | | -### 🐎 [Third-party libraries acknowledgments using a Settings bundle](https://www.avanderlee.com/workflow/third-party-libraries-acknowledgments-swift-packages/) |
89 | | - |
90 | | -[@Damien](https://github.com/ZengyiMa): 三方库可以帮助开发者更快地构建应用,但通常会包含开源协议 License,如 MIT License 等,本篇文章介绍了如何在你的应用中添加三方库致谢和开源协议的展示信息,而不需要花费太多的工作,作者介绍了一个开源项目:swift-package-list,并且提供了一键集成脚本,推荐各位 iOS 开发者也集成致谢模块,这将会让您的 App 更加合规。 |
91 | | - |
92 | | -## 工具 |
93 | | - |
94 | | -> 开发过程中常用的工具,及一些新工具的介绍 |
95 | | -
|
96 | 74 | ## 代码 |
97 | 75 |
|
98 | | -> 库,代码段,开源app |
99 | | -
|
100 | | -## 书 |
101 | | - |
102 | | -> 比较不错的书的推荐和书评 |
| 76 | +### 🐢 [ConcurrencyRecipes](https://github.com/mattmassicotte/ConcurrencyRecipes) |
103 | 77 |
|
104 | | -## 音视频 |
| 78 | +[@AidenRao](https://weibo.com/AidenRao):作者表示 Swift Concurrency 很难用,所以整理和记录了一些使用 Swift Concurrency 遇到的问题和解决方案,并欢迎大家一起共建。 |
105 | 79 |
|
106 | | -> 比较不错的书的推荐和书评 |
107 | 80 |
|
108 | 81 | ## 内推 |
109 | 82 |
|
|
0 commit comments