设计、研发协作组件流程

287 阅读3分钟

推荐阅读:组件化思维—— 适应并推动业务及产品变革的设计案例

为什么要做组件化

  • 重复开发 同样的 UI 结构,在不同场景重新编写
  • 协作混乱 设计稿设计元素过多,设计花费很大精力,同时研发在繁杂的设计中很难找到关键点
  • 质量不可控 设计还原度只能人眼审核,没有保障
  • 管理难 产品扩展性差,业务开发交互需求样式、交互影响难以评估,功能之间缺乏关联性

组件化的目的:

  • 可复用 复用组件、复用样式
  • 规范化设计语言 设计稿可以通过设计元素拼凑出来
  • 组件测试覆盖 单元测试、有针对性做兼容测试
  • 积累设计资产 色板、排版、设计稿组件化

现在有什么问题

  • 需求开发的时候伴随着大量样式 bug(甚至超过 50%,还原设计稿就像是做找不同游戏 😓)
  • 研发使用不清晰(这个组件可以用,但是交互不太对?部分样式还需要调细节?)

愿景:

尽量避免设计、研发花费大量时间调试设计细节(bug 高发区),组件化快速产出设计稿。研发协助设计完善设计语言,逐步积累设计资产,提升设计价值,形成自己的设计、研发组件库,设计元素培养用户习惯,形成设计影响力。

概念

Style Guide (规范样式)/ Design Token

间距(spacing)、字体(font)、圆角(border-raduis)、阴影(shadow)、描边(border)、颜色(colors)、动画(animation)、图标(icons)

设计原子组件

文章 atomicdesign.bradfrost.com/chapter-2/

摘文: Atomic design is not a linear process, but rather a mental model to help us think of our user interfaces as both a cohesive whole and a collection of parts at the same time .

完整阅读 atomicdesign.bradfrost.com

原子 => 分子 => 有机体 => 模板 => 页面

化学元素 => 无机物 => 有机物 => 人 => 具体特征:

  • 原子:基本构成:输入框(Input)、下拉选择(Select)、按钮(Button)、标题(H1)等
  • 分子:单一功能组件:弹出框(Modal)、按钮组(ButtonGroup)等
  • 有机体:多功能组件:工具栏(Toolbar)、日期选择器(DatePicker)、图表(Charts)
  • 模板:页面模板(设计底层结构),类似产品原型,在此基础上考虑动态特性(数量、首次引导交互、权限控制),弹性设计(resilient design)
  • 页面:实践测试

优点

  • 从抽象到具体,从具体审视抽象
  • 每个阶段可以独立运作,穿插进行
  • 最后两个阶段监督我们重新审计抽象设计模式和接口

研发、设计要求

  • 设计需要拓展性思维,尽可能提出新的设计思想,研发作为协作者参与,有义务帮助设计整理设计资产、调研第三方组件库、确定设计是否符合 w3 规范(可访问的富 Internet 应用程序的指南)
  • 实际操作是有很多坑的,例如如何从 Style Guide 中选择合适样式、如果 Style Guide 中的样式不能满足设计需求怎么办

Antd 组件库 Figma 截图

Ant Design Open Source

组件属性一目了然

颜色直接从现有的设计系统中选择,不用手动调试

高级玩家

落地

  • 设计交互 Figma 组件库 Design Guide
  • 设计、研发参与指导
  • 研发交付开源组件库
    • 组件样式统一:统一使用入口
    • 小改动:尽量使用原有组件库、antd、antd-mobile 等迁移组件库中
    • 迭代视觉测试

推荐