
Swift 语言开发精讲
文章平均质量分 96
介绍 Swift 开发语言和苹果平台开发知识的专栏。内容详实、叙述生动。全面讲解 Swift 基础的同时紧随开发前沿,涵盖最新的 SwiftData、Swift 5.9 以及 Xcode 15.0 等众多新特性。
优惠券已抵扣
余额抵扣
还需支付
¥39.90
¥99.00
购买须知?
本专栏为图文内容,最终完结不会低于15篇文章。
订阅专栏,享有专栏所有文章阅读权限。
本专栏为虚拟商品,基于网络商品和虚拟商品的性质和特征,专栏一经购买无正当理由不予退款,不支持升级,敬请谅解。
大熊猫侯佩
一枚贪吃路痴还未秃码农。CSDN 博客专家,iOS 与 Swift 版块版主,热爱苹果开发。
人生看淡,不服就干!
展开
-
『第二章』这只燕子很特别:Swift 特性
在本篇博文中,我们从 Swift 前任 Objc 开始介绍,如数家珍的列出了 Swift 诸多特点和优势,最后我们用了一小段简洁的代码片段让小伙伴们初步领略到 Swift 之美。原创 2023-10-24 22:38:33 · 216 阅读 · 0 评论 -
『第一章』命运的齿轮开始转动:雨燕(Swift)诞生!
在本篇博文中,我们一起回顾了 Swift 语言从诞生、发展、壮大、到标准化的进程,并从目前承前启后 5.9 版本展望未来 6.0 版本的远景规划。原创 2023-10-24 21:50:39 · 207 阅读 · 0 评论 -
如何在 SwiftUI 视图中使用分页(Paging)机制显示 SwiftData 数据(三)
在本篇博文中,我们介绍了如何将查询视图和显示视图“双剑合璧”,一同完成SwiftUI 的分页显示功能,并在最后讨论了另一种不带 @Query 玩的分页思路。原创 2025-04-01 08:43:18 · 123 阅读 · 5 评论 -
如何在 SwiftUI 视图中使用分页(Paging)机制显示 SwiftData 数据(二)
在本篇博文中,我们讨论了如何将 SwiftUI 中 SwiftData 的分页逻辑划分到两个独立的视图中去,并用它们来分别完成数据查询和显示的功能。原创 2025-03-17 09:20:48 · 103 阅读 · 0 评论 -
如何在 SwiftUI 视图中使用分页(Paging)机制显示 SwiftData 数据(一)
在本篇博文中,我们讨论了在 SwiftUI 中如何查询 SwiftData 数据,并介绍了 SwiftData 分页机制的基本原理。原创 2025-03-11 14:59:22 · 202 阅读 · 1 评论 -
Swift 序列(Sequence)排序面面俱到 - 从过去到现在(三)
在本篇博文中,我们讨论了 iOS 15(macOS 12)中为排序新推出的 SortComparator 协议和 SortDescriptor 排序操作符;并在文章最后对 sort 和 sorted 排序方法执行的性能做了一番深入的分析。原创 2024-06-08 16:48:22 · 780 阅读 · 8 评论 -
Swift 序列(Sequence)排序面面俱到 - 从过去到现在(二)
在本篇博文中,我们介绍了 Swift 自定义类型中“多属性”排序的概念,并巧妙的从 Objective-C 语言中 NSSortDescriptor 类型获取灵感,用高级抽象让“多属性”排序的通用实现得偿所愿。原创 2024-06-08 14:31:48 · 435 阅读 · 9 评论 -
Swift 序列(Sequence)排序面面俱到 - 从过去到现在(一)
在本篇博文中,我们介绍了 Swift 语言中序列和集合元素排序的一些基本概念,我们随后还讨论了如何在自定义类型上实现任何实例属性上排序的“姿势”。原创 2024-06-08 12:57:10 · 324 阅读 · 10 评论 -
SwiftUI 动画入门之二:几何特效动画(GeometryEffect)
在本篇博文中,我们接着前篇博文进一步讨论了如何利用 SwiftUI 几何特效动画(GeometryEffect),在任意路径上加上任意样式如影随形、丝般顺滑的“小尾巴”,小伙伴们值得拥有哦!原创 2024-02-01 21:38:56 · 356 阅读 · 5 评论 -
SwiftUI 动画入门之一:路径动画(Path Animations)
在本篇博文中,我们讨论了 SwiftUI 中如何利用路径动画(Path Animations)让原本“刻板”的折线图灵动的跃然于屏幕之上。在下篇博文中,我们将接着介绍 SwiftUI 中另一种自定义动画机制 GeometryEffect 的实现,不见不散!原创 2024-02-01 18:32:36 · 376 阅读 · 6 评论 -
SwiftUI 为任意视图加上徽章(Badge)而想到的(下)
在本篇博文中,我们讨论了 SwiftUI 中另一种获取视图尺寸的便捷方法,并将它和 ZStack 融合在一起,共同打造了徽章的新实现!并且新的实现还经受住了从右至左语言排版和动态字体的“严峻”考验,棒棒哒!原创 2024-01-12 20:33:15 · 461 阅读 · 6 评论 -
SwiftUI 为任意视图加上徽章(Badge)而想到的(上)
在本篇博文中,我们讨论了使用动态获取和修改视图尺寸的技术为 SwiftUI 中任意视图打造“弹性”大小的徽章,这样不论徽章中的数字如何变化都可以万无一失,棒棒哒!原创 2024-01-12 18:13:27 · 331 阅读 · 11 评论 -
SwiftUI 打造一款收缩自如的 HStack(四):Layout 自定义布局
在本篇博文中,我们讨论了在 SwiftUI 中打造一款收缩自如“HStack”的最终实现。我们使用自定义 Layout 布局“恰如其分”的实现了 CollapsedLayout 布局容器从而圆满的完成了任务,棒棒哒!原创 2024-01-08 15:15:43 · 1241 阅读 · 0 评论 -
SwiftUI 打造一款收缩自如的 HStack(三):“魔镜魔镜,我爱你”
在本篇博文中,我们讨论了如何使用“魔镜”般的黑魔法神奇的摆脱可收缩“HStack“实现中多余的“赘肉”,最后我们不禁哼出“解放区的天是明朗的天,解放区的秃头码农好喜欢”的曲调,棒棒哒!原创 2024-01-05 13:14:11 · 1058 阅读 · 8 评论 -
SwiftUI 打造一款收缩自如的 HStack(二):对齐+ZStack
在本篇博文中,我们在 SwiftUI 中用对齐机制和 ZStack 共同打造了一款可收缩的“HStack”。不同于之前“纯” HStack 的实现,用对齐可以全面把控容器内子视图的偏移做到随心所欲,小伙伴们值得拥有!原创 2024-01-04 21:47:39 · 1448 阅读 · 3 评论 -
SwiftUI 打造一款收缩自如的 HStack(一):“原汤化原食”
在本篇博文中,我们讨论了如何用 HStack 自身来打造一款可收缩的“HStack”,虽然读起来像一段绕口令但所幸我们最后成功的得偿所愿了。相信看完本篇后小伙伴们都会受益匪浅。原创 2024-01-04 16:43:01 · 1121 阅读 · 7 评论 -
『番外篇十』SwiftUI 实战:打造一款“五脏俱全”的网络图片显示 App(下)
在本篇博文中,我们继续完善和消除了之前 PhotoGeter 应用的少许瑕疵。现在我们的 App 逻辑上更加简洁,对错误的处理也更加应对自如,完全做好了“荒野求生”的基本准备,棒棒哒!原创 2024-01-01 21:38:19 · 1100 阅读 · 3 评论 -
『番外篇九』SwiftUI 实战:打造一款“五脏俱全”的网络图片显示 App(上)
在本篇博文中,我们讨论了如何初步打造一款“五脏俱全”的网络图片显示 App。我们创建了数据模型,并将界面“化整为零”分割成各个独立的组件,最后我们将它们通通整合到一起:一款小巧的网络图片查看器就此应运而生啦。原创 2024-01-01 21:17:52 · 1089 阅读 · 0 评论 -
『番外篇八』SwiftUI 脑洞大开实现“另类”视图跟随方法
在本篇博文中,我们讨论了在 SwiftUI 中如何脑洞大开“另类”实现视图跟随的方法。相信看完本篇,大家会对 SwiftUI 视图的布局有着更深刻的领悟。原创 2023-12-31 12:00:19 · 1123 阅读 · 7 评论 -
『番外篇七』SwiftUI 获取视图全局位置在 NavigationStack 中失效的解决方法
在本篇博文中,我们讨论了在 SwiftUI 中为什么不能在 NavigationStack 中直接取得指定视图的全局位置信息,以及用哪些方法可以“优雅”的绕开这一问题从而得偿所愿。原创 2023-12-30 20:24:37 · 1292 阅读 · 6 评论 -
『番外篇六』SwiftUI 取得任意视图全局位置的三种方法
在本篇博文中,我们讨论了在 SwiftUI 中如何通过三种不同方法来获取任意视图的全局位置,任君选择。原创 2023-12-30 15:49:50 · 1335 阅读 · 7 评论 -
『番外篇五』SwiftUI 进阶之如何动态获取任意视图的 tag 和 id 值
在本篇博文中,我们讨论了在 SwiftUI 中如何动态探查指定视图属性的值(比如 tag 或 id),并且深入扩展讲解了各种“变数”。最后,我们用基于此项技术的实例结束了整篇文章,相信大家都会受益良多。原创 2023-12-22 19:53:39 · 1444 阅读 · 7 评论 -
『番外篇四』Swift “乱弹”之如何绕过新并发模型中“伪” mutable ‘inout‘ parameter ‘self‘ in concurrently-executing 问题
在本篇博文中,我们介绍了在 Swift 5.5 新并发模型撸码中遇到的 "mutable capture of 'inout' parameter 'self' is not allowed in concurrently-executing code" 错误,并讨论了在某些情况下如何绕过它所带来的限制。原创 2023-12-16 13:02:27 · 213 阅读 · 12 评论 -
『番外篇三』Swift “乱弹”之带索引遍历异步序列(AsyncSequence)
在本篇博文中,我们讨论了在 Swift 中究竟怎么为普通集合以及异步序列元素的遍历加上索引,相信看完本篇的小伙伴们都会受益匪浅。原创 2023-12-15 21:00:42 · 270 阅读 · 5 评论 -
『番外篇二』Swift “黑魔法”之动态获取类实例隐藏属性的值
在本篇博文中,我们讨论了如何使用 Swift “黑魔法”获取类实例隐藏属性的值,并通过 UserDefaults 和 Thread 两个实际的例子来演示“黑魔法”具体的施展诀窍。原创 2023-12-11 21:04:29 · 638 阅读 · 17 评论 -
『番外篇一』SwiftUI 中如何让用户恣意的拖动视图
在本篇博文中,我们实现了让用户在 SwiftUI 中恣意的拖动视图。我们学习了 GestureState 手势状态的使用,并利用 SwiftUI 辅助调试技术来更好的“暴露”界面运行上的问题。原创 2023-12-07 10:22:38 · 378 阅读 · 9 评论 -
『第十四章』雨燕的自我修养:Swift 调试技巧(下)
在本篇博文中,我们首先介绍了 Xcode 对 UI 调试的支持,接着讨论了 Instruments 工具和 Xcode 15 中新的结构化日志调试机制,最后我们总结了一些非常有用的调试小技巧。原创 2023-10-30 15:05:04 · 271 阅读 · 4 评论 -
『第十三章』雨燕的自我修养:Swift 调试技巧(上)
在本篇博文中,我们先是介绍了 Swift 调试的基础知识,随后讲解了 LLDB 以及它常用的一些调试命令,接着我们介绍了 Xcode 中断点的类型和管理,最后我们学习了 Swift 代码本身和日志对调试的支持。原创 2023-10-30 14:42:11 · 358 阅读 · 0 评论 -
『第十二章』数据持久化:SwiftData
在本篇博文中,我们介绍了全新的 SwiftData 数据库;我们讨论了它的组成要素、数据模型以及对应的 CRUD 操作;最后我们介绍了它是如何与 SwiftUI 组合而实现最大威力的。原创 2023-10-30 14:15:13 · 468 阅读 · 5 评论 -
『第十一章』数据持久化:CoreData 与 CloudKit
在本篇博文中,我们详细介绍了 CoreData 数据库模型;随后我们讨论了如何用 CouldKit 将本地数据同步到云存储上去;我们还介绍了 CoreData 是如何与 SwiftUI 搭档威力大增的。原创 2023-10-29 18:58:52 · 885 阅读 · 10 评论 -
『第十章』仪态万千的雨燕:UIKit 和 SwiftUI
在本篇博文中,我们先是简要介绍了 UIKit 框架,接着我们详细讨论了 SwiftUI 以及它的重要组件:原生视图、修改器、状态与“真相之源”、动画以及与 UIKit 互动等众多话题。原创 2023-10-28 19:10:13 · 471 阅读 · 0 评论 -
『第九章』雨燕新量子引擎:结构化并发
在本篇博文中,我们讨论了 Swift 中新结构化并发模型。我们依次介绍了 async/await 关键字、结构化与非结构化、异步序列以及 Actor;最后,我们连通了“旧”和“新”两个并行世界,让 Swift 的并发宇宙混为一体,融会贯通。原创 2023-10-28 16:56:23 · 192 阅读 · 0 评论 -
『第八章』进击的雨燕:Combine 框架
在本篇博文中,我们介绍了 Swift 的 Combine 框架,它是响应式编程(Reactive Programming)在 Swift 中的一个实现,我们随后讨论了它的重要组成部分,最后举了一些例子帮助大家加深理解。原创 2023-10-27 20:19:55 · 328 阅读 · 3 评论 -
『第七章』翩翩起舞的雨燕:顺序与并发执行
在本篇博文中,我们介绍了 Swift 代码顺序和并发两种不同执行方式;我们还深入探讨了并发中数据竞争、线程同步以及线程爆炸等问题,最后我们一起聊了聊 RunLoop 和定时器的知识。原创 2023-10-27 19:02:08 · 284 阅读 · 1 评论 -
『第六章』三见倾情:初识小雨燕(下)
在本篇博文中,我们介绍了 Swift 语言中控制流、ARC和引用循环以及错误处理这三个非常重要的话题。至此,我们完成了 Swift 语言基本知识的学习。原创 2023-10-27 10:21:48 · 165 阅读 · 0 评论 -
『第五章』二见痴心:初识小雨燕(中)
在本篇博文中,我们陆续介绍了 Swift 中值与引用类型、OOP和POP、协议与扩展以及泛型和宏的一些基本开发知识。原创 2023-10-25 16:34:52 · 650 阅读 · 5 评论 -
『第四章』一见倾心:初识小雨燕(上)
在本篇博文中,我们简单介绍了 Swift 语言中的基本类型、自定义类型(复合类型)、聚集以及运算符等内容。我们会在后续文章中更详细讨论它们的使用场景。原创 2023-10-25 15:24:16 · 367 阅读 · 0 评论 -
『第三章』雨燕栖息地:Swift 开发环境
在本篇博文中,我们介绍了 Mac 上的主力开发工具 Xcode,并讨论了学习 Swift 语言的几种方式和平台:Xcode iOS App 项目、Xcode Playground,iPad(Mac)Swift Playgrounds 以及 Swift REPL 交互环境。原创 2023-10-25 07:36:24 · 582 阅读 · 1 评论