SwiftUI 避免硬编码如何效减少别人的代码量

避免硬编码

本文解决的问题

  • 介绍了SwiftUI的第一性原理,让您明白SwiftUI的底层逻辑
  • 提出了struct通用类型的解决方案,避免硬编

学习本文二个种方式

  • 初级
    直接看实现部分,把项目代码先跑起来
  • 中级
    思考一下本文为何要创建一个通用类型AnyShape

项目效果

Jietu20200220-092801@2x.jpg
Jietu20200220-093019.gif

SwiftUI编码的第一性原理是什么?SwiftUI核心就是让编写界面变得简洁优雅,让一切都显得如此优雅自然,让函数调用显得不再那么刻意。

但要做到上面的境界,我们可能要为此付出更多汗水。文章标题提到了要有效减少别人的代码量。这个“别人”其实还包括未来的我们,相信我三个月之后你肯定成为代码的陌生人。

所以为人为己我们都要做好程序代码注释与设计工作。让我们的参数初始化变的顺理成章,让我们函数调用简单易于理解。为了帮助我们更好的编写人类友好的代码,SwiftUI给我们带领一系列的语法糖。

本文就让我们体验一下如何管理代码,如何设计调用。

代码设计思路

手机的成功主要是消灭了鼠标和手写笔,乔帮主说上帝赐予我们十个手指,我们为什么还有去发明手写笔。代码设计也是遵循这个原理,一切从人类的习惯出发,让最原始的操作来解决更多现实问题。
例如,人类比较喜欢的点操作(a.background(Color.white))和数据组的下标(a[100])。因此我们就多用点操作,多用数组下标。

任务介绍

我们前面的章节中已经体验内置形状、自定义复杂形状的方法:

上面文章介绍了SwiftUI常用图形的使用方法和个性化定制。本文的任务将自定义形状的封装成一个enum,实现点式调用。

代码实现

  1. 我们先定义一个shape的通用类型
还有 46% 的精彩内容