Swift 声明式程序设计
- 原文作者:Benjamin Encz
- 译文出自:掘金翻译计划
- 译者:Zheaoli
- 校对者:luoyaqifei, Edison-Hsu
在我第一份 iOS 开发工程师的工作中,我编写了一个 XML 解析器和一个简单的布局工具,两个东西都是基于声明式接口。XML 解析器是基于 .plist
文件来实现 Objective-C 类关系映射。而布局工具则允许你利用类似 HTML 一样标签化的语法来实现界面布局(不过这个工具使用的前提是已经正确使用 AutoLayout
& CollectionViews
)。
尽管这两个库都不完美,它们还是展现了声明式代码的四大优点:
- 关注点分离: 我们在使用声明式风格编写的代码时声明了意图,从而无需关注具体的底层实现,可以说这样的分离是自然发生的。
- 减少重复的代码: 所有声明式代码都共用一套样式实现,这里面很多属于配置文件,这样可以减少重复代码所带来的风险。
- 优秀的 API 设计: 声明式 API 可以让用户自行定制已有实现,而不是将已有实现做一种固定的存在看待。这样可以保证修改程度降至最小。
- 良好的可读性: 讲真,按照声明式 API 所写出来的代码简直优美无比。