我做过一段时间中后台页面搭建工具的设计,具体来说就是通过拖拽模块快速生成可用页面,生成对象包括桌面端和移动端。当时需要帮助公司的大量中后台产品在桌面端和 App 端快速上线,因为中后台界面比较相似,对设计和前端来说都有重复的工作量,大家自然而然会想到搭建。
我们和前端团队合作,先从移动端入手,后来又扩展到桌面端,两端的技术方案有所不同,但确保生成物是可用的代码包。解决这些问题也涉及到工具本身交互方式、操作路径和界面呈现的设计探索。再后来,因为组织架构调整,项目就不了了之了。不能说是业务变化导致项目黄了,其实在实践中我们就隐约感觉到前路漫漫,似乎掉进了一个无底洞。以当下的技术和环境,我们能够实现的和期待的效果还有相当一段距离。
搭建不是个新鲜事物,简单静态页面搭建容易处理,像 MAKA ,DataV 甚至 墨刀(这种不那么基础的设计工具)都可以看做页面搭建,本质上是在作图。后台页面搭建有一些探索者,比如 宜搭、飞冰, 各家的实现和侧重都有不同,这一块偏技术,我无法深入探讨。只是在做过后台类的可视化搭建的项目后,我觉得搭建不是一个单纯的技术问题,更像是一个工作流或者分工协同的问题。
在一个瀑布流的工作流中,如果以前端开发为分界点:在前端开发之前,从产品文档到低保真再到高保真设计稿,总体来说是在做一件事情——尽可能全面地描述需求;而从前端开发往后,到测试上线,总体来说是在做另一件事情——尽可能完整地实施需求。在最宏伟的设想下,可视化搭建可以省略掉设计师和前端开发者的工作,需求方自己用搭建工具生产出所需的页面:所见即所得,描述即实施。
设计师或前端工程师当然会很开心,但是需求方呢?如果不是在做个人网站或者内网页面,而是在做一个对设计和性能都有要求的商业产品,可视化搭建把相当一部分设计和前端的工作量转移到了需求方身上。以前只需要写文档、画线框,现在要做真实页面,要考虑对齐间距页面美丑,搭完页面说不定还要被设计评审一下,这个工具没带来什么显着的好处,反而把自身的工作时间被拉长了一倍,需求方愿意用吗?
退一步讲,假设需求方非常 nice,由于提需求要等漫长的排期,他愿意自己动手快速上线。那么就来到下一个阶段:如何搭建界面。
理想做法是设计师沉淀组件及模板库,需求方可视化地拖拽拼装。不过设计师可以回想一下,后台需求真的简单重复到可以无脑套用吗?如果是的话,可以说后台的需求也算不上负担,费这么大力气做个工具来解决这个问题的意义就小了。大多数情况是,业务的需求像是一种长尾需求,看起来相似的 Table 却各自包含了筛选、搜索、新增、上传下载的操作,导致页面的布局、后续操作流程都多多少少需要设计介入。
那假如规范足够细腻完整呢?如果组件和规范覆盖了所有场景,可以想象这套库相当繁杂,可操作性极低(回想去熟悉了解一套新规范的情景);其次是本质上来说,这就意味着设计师已经把所有页面都设计过一遍了(当然不可能)。
一句话来概括的话:简单需求可搭建但意义小,需求稍变化就难落地。
再退一步讲,假设这个需求方有一定的设计能力,能够解决这些界面设计问题。那么就来到下一个阶段:如何确保代码可用。
我们的目标是让搭建产物前端可用——否则就只是做了一个设计工具,那 Sketch + Symbol 完全可以达成同样的效果。其中一个比较明显的问题是页面布局,前端写页面是使用相对定位的,用这种布局方式来搭建页面相当不符合我们的认知,而且很难操控(可以在 WebFlow 体验一下);但是如果用绝对定位搭建,页面代码就较难做到可读可维护。此外,我们在设计时做的多态处理、极值考虑等,在搭建工具中可能需要通过数据绑定、子组件嵌套等方式实现,这对于不懂技术的用户来说又是全新的概念。所以技术层面又遇到了类似的问题:基础、通用的场景,似乎不必通过做一个搭建工具来解决;复杂场景的话,还是写代码最便捷。
以上讨论的前提是需求方是目标用户。如果让设计师搭建呢?如果让前端工程师搭建呢?如果这个工具只满足 80% 的需求呢?...推演之后你会发现问题大都类似。我们对搭建的美好期冀来自于它压缩流程,但是如果有某个角色的工作被省略,就一定会有某种方式弥补回来。流程提效要需要通过工作方式的转变,难以通过一个工具或产品单方面完成。
比起压缩流程,我更看好优化流程,比如 Ant Design Pro 、Kitchen 甚至更好用的设计工具和编译器。我们当时做搭建时,反复讨论后最后目标用户圈定为开发者(主要是后端工程师和外包前端工程师)。其中有一些人力和技术原因,比如非专业的前端开发者的代码水平可能不够可靠,移动端使用的前端技术方案比起传统 H5 有一定写法差异,调试开发较麻烦等等,所以工具也运转了相当一段时间。可正如上文分析,投入产出比并不高,且受限制较大。
很多愿景乍一听很美好、很有道理,可一旦细想并考虑落地,就会意识到矛盾。并不是说这些口号都不现实,其实我们对未来的期许和批判都是基于现在的,没有人知道真的是海市蜃楼,还是沙漠绿洲,所以才值得探索。业务调整后之后,也有别的团队设计师来向我了解项目的情况,其中有一位说他们还在继续把搭建这条路走下去。我也希望他们做成,说不定那就是「解放」全世界中后台设计师的时候了吧。