Skip to content

Commit 7c746e8

Browse files
committed
fix #4443
1 parent 6d8bc60 commit 7c746e8

File tree

1 file changed

+4
-0
lines changed

1 file changed

+4
-0
lines changed

Reports/2025/#321-2025.01.20.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,10 @@
6363

6464
文章遇到的情况在许多大型项目跑在低端设备上都会经常出现,了解虚拟内存对调试开发都很有帮助。
6565

66+
### 🐢 [Type-Driven Design with Swift](https://swiftology.io/collections/type-driven-design/)
67+
68+
[@DylanYang](https://github.com/Dylan19Yang):作者通过一系列文章向我们介绍了类型驱动设计的概念。类型驱动设计的核心是通过类型自身来传递更多信息,一个非空类型比一个 Optional 类型包含了更多信息(非空),一个自定义的 Email 类型可以比单纯的 String 包含更多信息,例如在一个 Email 结构的初始化中校验 String 的格式是否正确,通过传递 Email 类型而不是 String 来保留这份格式校验的信息。以此类推,把更多的逻辑通过自定义类型封装起来,通过巧妙的设计类型来抹除原本可能出现的错误状态,然后在类型和类型之间通过领域化来划分、拆解,使得整个设计思路更清晰。本系列通过丰富的 demo 对类型驱动设计这一概念有较深入的阐释,感兴趣的读者可以花时间阅读下这个系列。
69+
6670
## 工具
6771

6872
> 开发过程中常用的工具,及一些新工具的介绍

0 commit comments

Comments
 (0)