代码地图
背景
代码地图
- 写代码就像在构建一张地图,通过一个方法入口,就可以很清晰地知道接下去逻辑;
代码地图实例
一、划区块
- 我们的项目就像是一张地图,地图分为无数的小地图,而『输入数量控制器』就是其中的一张小地图。
- 小地图又分为若干区块,如果有必要这些区块还可以有自己的子区块; 小地图常常会是一个控制器类,而区块往往是一个方法
以『输入数量控制器』为例的代码地图
1.『初始化配置』
2.『初始化子视图』
- 2.1.『初始化导航视图』
- 2.2.『初始化滚动视图』
- 2.3.『初始化SKU视图』
- 2.3.1.『初始化多规格视图』
- 2.3.2.『初始化单规格视图』
- 2.3.3.『初始化无规格视图』
- 2.3.4.『初始化无规格有包装视图』
- 2.4.『初始化SKU提示视图』
- 2.5.『初始化折扣视图』
- 2.6.『初始化备注视图』
3.『设置子视图的布局』
5.『更新视图/设置数据到视图』
4. 『委托』
6.『事件监听』
7.『获取数据』
8. 『逻辑处理』
- 8.1.『处理被改变的包装单价』
- 8.2.『处理被改变的价格』
- 8.3.『处理改变的折扣』
- 8.4.『处理购物模型发生改变』
- 如上所述,控制器的代码可以划分为『初始化配置』、『初始化子视图』、『布局子视图』、『委托』、『更新视图』、『事件监听』、『获取数据』、『逻辑处理』8个大区块;
-
- 每个区块又可以划分为若干个子区块例如『初始化SKU视图』又可以分出4个小区块,如果有必要还可以再细分出更小的区块;
- 这样子,单从入口的区块就可以很明确地知道这个类的处理逻辑,也可以非常快速地定位到某个区块的实现;
二. 路线
- 事务的实现过程,通常由若干个区块相连接。
三. 距离
- 通常以经过区块作为距离的基本单位。
额外资料
『一个遥控器,只提供了开机键以及换台按钮』
封装遥控器的目的其实是为了简化用户的操作以及保护其中的电子原件。
1. 可见性和保护性:其实遥控器内部有电源、电路板,但是开放出来的接口就只有开机键以及换台按钮,而且电路板的接口也不会被直接访问,起到保护作用。
2. 单一性:遥控器的每个按钮都有单一的职责。
- java中的封装关键字
以Java为例, Java对属性/方法的可见性分为:
Public(公开) 对所有类可见
Protected(保护) 对包内以及子类可见
Default(默认) 对子类可见
Private(私有) 只对自身可见