写点什么

跨境支付平台 XTransfer 的低代码实践:如何与其他中台融合是核心

  • 2022-07-04
  • 本文字数:4338 字

    阅读完需:约 14 分钟

跨境支付平台 XTransfer 的低代码实践:如何与其他中台融合是核心

采访嘉宾 | XTransfer 高级技术总监田天、技术专家皇志豪

编辑 | 闫园园

 

据中商情报网 2022 年中国跨境支付市场规模及投融资情况预测分析,近期国内支持政策接连出台,促使跨境电商发展迅速。在此背景下,跨境支付市场也迎来爆发,具体数据显示,预计 2022 年中国第三方跨境支付市场规模将达 12953.42 亿元。

 

跨境电商的快速发展使得跨境支付平台赛道备受关注。一般来说,跨境电商在交易模式上分为 B2B 和 B2C 。其中,相较于 B2C,B2B 模式交易流程更复杂,这对 B2B 跨境支付的产品体验提出了更高的要求,因此,对于 B2B 跨境支付平台来说,前端的打造显得尤为重要。

 

近期,InfoQ 采访了 XTransfer(上海夺畅网络技术有限公司),XTransfer 通过分享前端方向的演进过程,带来了其设计驱动开发(Design Driven Development)的概念及相关实践经验。

 

XTransfer 创立于 2017 年 7 月,聚焦于 B2B 跨境支付,为从事 B2B 跨境电商出口的中小微企业提供提供跨境支付及风控服务。

XTransfer 前端发展的两个阶段

 

早期,XTransfer 整体技术发展经历了从 0 到 1 的过程。随着业务的拓展和产品的升级,前端方向的演进也经历了两个阶段:

 

  • 第一阶段:XTransfer 聚焦于 to B 业务,相继推出了 PC 端和 APP 端产品。这时,前端方向更多专注于核心功能的实现,包括收款、转账、提现、换汇等;

  • 第二阶段:随着业务的拓展,更多产品推出,形成满足企业用户需求的产品体系。在支持原有产品功能的基础上,前端方向开始更加注重提升整个产品体系的用户体验。

 

在这两个阶段中,为了满足具体要求,前端的技术架构也随之发生了变化:

 

在 XTransfer 产品网站推出第一版时,React 的一个 SPA 应用,就能够支撑起平台的业务需求。随着业务线的不断拓展,单页应用无法承载越来越庞大的业务,“当时整个前端打包最慢的时候,大概要一个小时。”田天回忆道。在这种情况下,XTransfer 团队开始着手对前端整体架构进行优化,“我们应用了微前端架构,拆分成多个应用,再加上一系列打包优化,目前打包速度已经控制在 10 分钟以内”。

 

然而,虽然前端团队已经在技术架构上做出了改变来应对需求的变化,但前文提到 B2B 模式本身交易流程非常复杂,使得前端架构的构建过程中依然会面临诸多挑战,这些挑战大多来自以下两个方面:

 

  • 业务侧。第一,多产品化。虽然 XTransfer 平台专注做 to B 业务,但随着本身产品越来越丰富,同样会面临着 与 to C 业务一样的多产品化问题。第二,需求复杂化。随着企业用户的增多,用户的不同习惯和需求对原本积累的开发模式造成了很大的冲击。

 

  • 技术侧。随着产品的快速增加,原有的开发模式遇到了困难。原本小而精的团队可以不断打磨用户体验,但随着产品的不断发展,如何在保证质量的基础上快速开发,是团队的重要课题。与 to C 业务不同的是,to B 业务并不能依靠简单的堆代码、堆人、堆团队的方式去解决这个问题。原因在于 to B 业务面对的用户是同一类型的用户,不同产品要保证类似的功能复杂度,否则用户会明显感受到质量下降,从而带来比较差的用户体验。所以,在原来产品的技术沉淀难以在新产品上快速复制的情况下,对于团队的整体交付能力也提出了大的挑战。

设计驱动开发(Design Driven Development)介绍

 

为了解决上述问题, XTransfer 提出了设计驱动开发(Design Driven Development,本文中简称 DDD)的概念。

 

什么是 DDD ?DDD 是 XTransfer 以前端页面功能设计为核心,自研的一套以低代码的方式生成功能页面的前端页面开发框架。其核心能力是通过自定义字段生成表单和页面,UI 设计师和运营人员可以通过拖拽的方式定制需要的页面模版,快速生成功能页面。

 

“我们 to B 业务的产品,整个开发质量是稳定的,对业务也会有一定的沉淀。从中,其实能够提炼出一些标准的开发流程、开发模板和交互设计。”在谈及提出 DDD 概念的初衷时,田天表示。

 

同时,田天介绍,在设计其他金融或数字化产品时,一些场景例如风控校验、营销内容等也是必要开发的,且开发流程也类似。所以,从这些场景中抽象出来开发流程,其实可以沉淀成低代码的基础设施,包括做一些可替换的组件。“在这些抽象之上,我们甚至可以提炼出整个业务的标准前端模式,让前端模式具象化,且能够落地,这也就是 DDD 实践的一些案例。”

设计思路

 

在设计 DDD 时,首先 XTransfer 前端团队已明确的是,无法做一个在所有场景都通用的低代码平台。“低代码本身是为了降本增效,如果追求所有场景适用,反而会增加更多复杂流程。”皇志豪谈到。

 

从底层实现来说,前端页面是由结构、表现、行为构成,其中,结构和表现可以利用 UI 组件予以抽象,但行为的抽象却是困难的,尤其是在复杂的业务场景中抽象。因此,从软件开发的角度来看,为了平衡复杂度和效率,低代码是在特定场景内的模型抽象。



“我们逐渐把某些场景内的模型抽象出来”,操作人员不需要了解开发知识,简单拖拉拽自定义 UI 组件的方式构建出描述页面排版、内容、样式、属性的 JSON Schema,持久化保存在服务端,当对应页面需要展示时,直接获取持久化存储的 Schema 数据并通过渲染器渲染到页面。

实践之路

 

首先,在 DDD 技术选型中,XTransfer 前端团队采用了 Formily + Craft.js,Formily 是阿里开源的统一表单解决方案,Craft.js 是一款拖拽式的 JS 框架。

 

为什么会选择这两个方案?皇志豪表示,在早期的开发过程中,团队遇到了一个特定场景,即用户在 XTransfer 的安信成 CRM 系统中录入客户信息。系统本身提供了一系列的常用字段供用户使用,但依然存在部分 CRM 用户有更多的特定信息需要录入,且不同行业客户的需求点各有不同,而这就需要团队提供动态的字段以及动态表单的抽象模型。因此,在业务场景的驱动下,前端团队开始着手调研多种方案去解决这个问题,包括现有开源方案以及自建等。

 

“经历一系列方案筛选之后,我们觉得 Formily+ Craft.js 就是理想型的表单解决方案。”皇志豪介绍道。他表示 Formily 能够提供抽象 Form 表单的能力,而 Craft.js 的页面画布与拖拽组件结合的能力,也是团队在完成 DDD 构想必不可少的构件。对于 Craft.js,目前在国内应用的还比较少,“但不妨碍它作为一个很好的构建低代码平台的工具”,皇志豪表示。

 

总的来说,Formily + Craft.js 可以提供给用户一个拖拽式生成表单的体验,因此也成为 XTransfer 平台自定义表单的技术选型。同时,围绕 DDD 核心逻辑,XTransfer 还有更多前端应用场景可以被适配,在做好组件的抽取与粘合、控制复杂度与灵活性、提供安全隔离的基础上,DDD 将在更多方向上有拓展与演化的空间,例如,在跨境领域,涉及国际化多语言、多客户端的场景开发,可有效提升研发效率,降低开发成本。

 

当然,在选型过程中,早期 XTransfer 前端团队也考虑到了自建方案,并曾自研了一套自定义表单,但进行调研时,团队经过对比最终选择了已经相对较为成熟的 Formily 。田天对此表示,前端这个领域,需要结合众家之长,形成自己一套独特的开发思路、方法和框架。

应用现状

 

目前,DDD 的应用场景主要分为三方面,分别为对用户、对运营者以及对开发者:

 

  • 用户方向。即上文提到的用户在 XTransfer 的安信成 CRM 系统中录入客户信息,用户可以在 CRM 系统中自己操作生成页面,选择使用哪些 label 和表单。

  • 运营方向。在内部运营平台上,运营者可以通过拖、拉、拽等方式生成营销模板,营销模板里可以配置不同的营销活动。

  • 开发者方向。除了上述应用场景之外,开发者方面可以预先定义好相关组件,通过拖拉拽的方式,快速去生成页面的整体框架,再做细节的微调。

 

“在功能的支持上,对用户来说,不会给他们提供太强的灵活度,相对来说比较标准化,但是对于内部开发者和运营人员来说,功能就相对比较复杂了。”田天补充道。

 

可以看到,现阶段 DDD 已经成为构建 XTransfer 平台的重要工具。但众所周知,低代码平台更多的还是前端生成页面的能力,因此,在应用过程中会有后端权限管理、数据安全、风控等功能点嵌入到其中。而如何将 DDD 与其他中台能力结合起来,成为团队面临的一个重要技术挑战。

 

对此,田天坦言,现阶段这部分也在逐步完善中,“第一阶段前端生成页面,同时我们也在考虑,哪些服务能力可以同时嵌进去,比如其他中台服务承载的权限管控等如何与 DDD 结合,也是团队目前正在重点关注的。”

未来规划

 

谈及未来,除了要不断完善 DDD 与其他中台的整合能力,前端团队对于 DDD 也有着更多期望,这里两位嘉宾也与大家分享了 DDD 中长期规划:

 

首先,扩大应用场景,例如可以将其应用在页面表单的拖拉拽预生成与搭建、营销活动的配置化生成平台、智能建站等多个场景中。

 

其次,降低复杂度,使用流程标准化。对于非开发人员来说,用起来会更加简单、方便。

 

“长期来看,我们想把它做成一个纯粹的平台,真正覆盖更多的场景。”田天表示,目前搭建好 DDD 只是 XTransfer 团队的第一步,真正想让其达到标准化还有很长的路要走,需要不断提高其一系列周边能力,比如监控能力、性能问题定位能力等。“只有解决这些问题,DDD 平台才能更稳健,用起来会更方便,也能够帮助 XTransfer 持续提升用户体验。”

 

除此之外,在采访中,两位嘉宾也与我们交流了 XTransfer 平台整个大前端领域未来的规划:

 

第一,产品层面。将平台沉淀的经验推广到更多端,包括 H5、APP、小程序,以及目前相对投入占比较少的桌面端。

 

第二,战略层面。为了满足海外业务拓展的需求,实现用同一套流程、组件库和开发模式去适应不同国家用户习惯和产品方案。

 

第三,开发者层面。持续优化开发体验,包括多端复用、升级新工具、技术栈,不断丰富前端基建等,以便给开发人员更好的体验。

写在最后

 

当下,数字化转型浪潮来袭,产品需求不断增加。如果所有产品都要从头开发,极大的工作量也会成为开发者们的重要挑战,因此也产生了降低开发门槛、简化开发流程的诉求。DDD 作为 XTransfer 团队自研框架,目前已帮助其在保障用户体验的前提下,整体提升了前端研发的开发效率、体验,对于跨境支付行业来说,也是一次重要的尝试和突破。

 

当然,也正如两位嘉宾在采访中谈到,现阶段的 DDD 也只是开始,真正想达到标准化,还有很长的路要走,仍需要持续不断地解决很多周边问题,包括如何嵌入后端权限管理、数据安全、风控等功能点等。不过在此过程中,团队积累的经验或许能够给更多支付及金融行业产品的构建带来启示,未来,InfoQ 也将持续关注。

嘉宾介绍:

 

田天

现担任 XTransfer 高级技术总监,主要负责 XTransfer 智能金融研发部管理工作,致力于打造智能化的中小微外贸企业跨境金融服务平台。在 IT、金融和互联网领域有近 20 年的从业经验。

 

皇志豪

现担任 XTransfer 技术专家,主要负责 XTransfer 前端研发工作,经历 XTransfer 前端体系从零到一的搭建,领导了多项核心技术在 XTransfer 前端的落地。

2022-07-04 17:325290

评论 9 条评论

发布
用户头像
简洁高效,值得学习
2022-07-08 13:11
回复
用户头像
很好的技术驱动业务的体现,给用户提供了更多操作的可能性,同时,也避免过多冗余代码的开发,还能给开发者更多往创造性方向探索的空间。给大佬递茶。
2022-07-08 12:57
回复
用户头像
看到DDD,还以为Domin Driven Development,不过设计驱动设计理念还是不错的,收藏起来~
2022-07-08 12:54
回复
用户头像
路过,学习一下贵公司的成熟方案。。。
2022-07-08 12:49
回复
用户头像
企业级低代码服务编排库 Commander
https://xie.infoq.cn/article/1adf7327403affd58aadb67a4
2022-07-06 18:08
回复
用户头像
失误了,这么长早知不看了
2022-07-06 10:59
回复
好内容,多点耐心
2022-07-15 11:27
回复
用户头像
.NET是不是早就实现了低代码平台?
2022-07-05 10:39
回复
用户头像
太强大了,满满的干货,点赞!!!
2022-07-04 18:40
回复
没有更多了
发现更多内容

编写代码检查规则的神器,解读CodeNavi语法结构

华为云开发者联盟

软件开发 华为云 华为云开发者联盟 代码检查 企业号2024年7月PK榜

京东工业平台商品详情数据接口(vipmro.item_get)丨京东工业平台数据API

tbapi

京东工业平台数据采集 京东工业平台 京东工业平台API接口

lazada商品详情数据接口(lazada.item_get)丨lazada平台API接口指南

tbapi

lazada商品详情数据接口 lazada API lazada商品数据采集

百度网盘上线Apple Vision Pro 国行版迎来首个AI云存储类产品!

IT新闻资讯

OpenCV(C++)创建图片绘制图形(矩形、圆、文字、线段等等)

DS小龙哥

7月月更

AI Agent技术的最新进展与改变世界的典型项目巡礼

汀丶人工智能

人工智能 大模型 Agent智能体

聊聊 Go 中的单例模式

左诗右码

Go

证券行业怎么定义,需要采购堡垒机吗?

行云管家

网络安全 金融 证券 数据安全 堡垒机

目前张家界正规等保测评机构有几家?在哪里?

行云管家

等保 等级保护 湖南 张家界

闲鱼商品详情数据接口(Goodfish.item_get)丨闲鱼平台实时数据接口指南

tbapi

闲鱼 闲鱼API 闲鱼商品详情接口 闲鱼商品详情数据采集

教你写一个电商商品排行榜功能

EquatorCoco

排行榜 电子商务

小米集团信息技术部|面向多业务的研发效能体系建设与实践

ToB行业头条

纺织业智能化与数字化转型:构建全流程智能物流与质量追溯体系

天津汇柏科技有限公司

数字化转型 纺织企业

快手商品详情数据接口(KS.item_get)丨快手API接口指南

tbapi

快手 快手商品详情数据接口 快手API接口

拼多多商品详情数据接口(Pdd.item_get)丨拼多多API数据接口教程

tbapi

拼多多 拼多多商品详情数据接口 拼多多API

速卖通商品详情数据接口(aliexpress.item_get)丨速卖通平台API接口指南

tbapi

速卖通商品详情数据接口 速卖通API接口 速卖通 速卖通商品数据采集

软件测试学习笔记丨JUnit5动态测试的参数化

测试人

软件测试

分享:基于小程序容器技术的微前端架构~

Geek_2305a8

阿里巴巴商品详情数据接口(alibaba.item_get)丨阿里巴巴API实时数据接口指南

tbapi

阿里巴巴 阿里巴巴商品详情数据接口 阿里巴巴API

Go 项目自动重载解决方案 —— Air 使用入门

左诗右码

Go

“小浣熊家族AI办公助手”产品体验 — “人人都是数据分析师”

Sunny_媛

#人工智能 AI Agent 小浣熊家族 小浣熊 AI办公助手

万界星空科技新材料MES系统解决方案

万界星空科技

mes 新材料 万界星空科技 新材料mes

集业界领袖,话数据库未来,华为云数据库斯享会深圳站成功举办

Geek_2d6073

AI 应用实战营 - 作业 三- MidJourney参数测试

德拉古蒂洛维奇

macbook触控栏养宠物:Touchbar pet for Mac 免费下载

你的猪会飞吗

Mac软件下载站

天猫商品详情数据接口(tmall.item_get)丨天猫平台API数据接口

tbapi

天猫商品详情接口 天猫API 天猫商品数据采集 天猫商品详情数据采集

PostgreSQL 如何有效地处理数据的加密和解密

伤感汤姆布利柏

基于小浣熊办公场景的「大数据集分析」

悟空聊架构

AI 数据分析 悟空聊架构 商汤科技 小浣熊

苏宁商品详情数据接口(suning.item_get)丨苏宁平台API接口教程

tbapi

苏宁 苏宁商品详情数据接口 苏宁API

跨境支付平台 XTransfer 的低代码实践:如何与其他中台融合是核心_大前端_闫园园_InfoQ精选文章