共 8 篇文章,按时间倒序展示。
内存管理是所有应用程序的基石,而在 Swift 中,理解 ARC(自动引用计数)不仅仅是为了通过面试,更是为了防止 App 在用户不知情的情况下“吃掉”所有内存并最终崩溃。 …
在 Swift 的演进历程中,我们经历了从 Objective-C 时代的 NSError ** 指针噩梦,到 Swift 2.0 引入 throws,再到 Swift 5 引入 Result 类型,以及现在 Swift 6 的 Typed Throws。
…
在 Swift 的世界里,创建一个对象不像在某些动态语言里那样随意。Swift 是一种强安全语言,它要求一个实例在被使用之前,其所有的属性都必须被正确地“填满”。这种执着,催生了一套看似复杂、实则严密的初始化规则。 …
在我们的 Swift 开发之旅中,“属性”(Property)是我们打交道的第一个“老朋友”。它们构成了 Struct 和 Class 的“状态”。最开始,我以为属性就是用来“存东西”的。但很快我发现,它们有的能“算东西”(计算属性),有的“很懒”(延迟属性),有的甚至还带着“观察哨”(willSet/didSet)。
…
在 Swift 的世界里,函数和闭包是一等公民。我们可以像传递一个 Int 或 String 一样,把它们作为参数传递,或者作为返回值返回。
这种灵活性是 Swift 表现力的核心。但它也引入了三个非常重要、且经常被混淆的概念:@escaping (逃逸)、[weak self] (捕获列表) 和 @autoclosure (自动闭包)。
…
如果说 Swift 语言有什么特性是“爱恨交织”的,那一定是可选值 (Optional)。对于刚接触 Swift 的开发者来说,满屏的 ? 和 ! 可能会让人困惑,甚至觉得它“很麻烦”。但随着我写了更多 Swift 代码,我逐渐意识到,可选值是 Swift 语言的精华所在,是它安全性的基石。
…
大家好,在刚开始学习 Swift 时,我像很多开发者一样,知道一个“简单”的区别:Struct 是值类型(Value Type),Class 是引用类型(Reference Type)。而 Enum 也是值类型。 …
协调器模式可以控制我们 APP 的流程,避免直接将页面导航跳转逻辑放入控制器中。它还可以帮我将视图控制器隔离,这在我们项目分层设计中非常有用。 …