"纵向切片"是什么意思
一个纵向切片是功能里一道薄薄的、贯穿你整个应用的片段——一点 UI、一点逻辑、一点数据——而不是一次只构建一整层。
诱人却错误的做法(横向):
- 先把整个数据库 schema 建好。
- 然后把所有后端逻辑写完。
- 然后把整个 UI 做完。
三者全部做完之前,你什么都跑不起来,所以没法及早抓住问题。
更好的做法(纵向):
- 第 1 步:一个按钮,用假数据做出这件事最简单的可能版本。
- 第 2 步:让它用上真实数据。
- 第 3 步:处理边界情况。
每个切片都可运行。这正是让应用始终保持可运行的关键。
一个判断好切片的实用测试:你能演示它吗? 如果你能指着屏幕说"看这个",那它就是一个真正的纵向切片。如果唯一诚实的演示是"嗯,schema 现在搭好了",那你构建的是一个横向层,而它对不对,你要到很久以后——通常是在最糟的时刻——才会知道。