金字塔原理在Github PR中的运用

前言

以上传组件在Github上一个PR为例,演示描述如何从通过金字塔原理,由初始的版本演化成结构分明、逻辑清晰的最终版本。

目的

本次PR的新增的是拖拽上传图片功能,需要在描述中说明清楚以下相关信息:

  • 拖拽上传功能
  • 不影响之前已有的粘贴上传功能
  • 说明兼容性

版本1

image.png

亮点:

  • 说明一下粘贴及拖拽操作的表现,这样用户使用时能提前了解,知道组件能力的边界,而不会认为是“怪异”行为

不足:

  • 红框内部应该是兼容性说明,而不是Fixes的内容。也即,标题与内容不符。

版本2

image.png
亮点:

  • 兼容性说明独立放到 compatibility,标题与内容相符了

不足:

  • draggable 与 android select or take photos 是两件事,不应该放一起, 后者应该是另一个pr的内容
  • 同时兼容性说明不够清晰完整,没有覆盖全部情况

版本3

image.png

亮点:上面考虑到了以下情况

  • 粘贴/拖拽
  • 单张模式/多张模式
  • Windows系统/Mac系统

但依然存在不足:

  • 不知道“依然存在无法粘贴的问题 v1.20”,是指什么,要点击才能知道,期望用户可以直观地看出来
  • 其实 粘贴 跟 多张模式 无关,因为 Mac系统下 copy 多张,实际只能 paste 上传一张

版本4

image.png

思路:

  • 把 粘贴 与 拖拽 放到外层,单张模式/多张模式 放在内层
  • 详细描述 粘贴 在 Windows 系统下的兼容情况

还是存在不足:

  • 拖拽与粘贴文字出现的顺序,Mac系统/Windows系统不一致
  • Mac下的粘贴说明有点费解,期望一个例子

版本5

image.png

跟版本1比起来,是不是清晰明了很多!

这就是金字塔原理的魔力。