[关闭]
@gyyin 2020-11-07T10:31:31.000000Z 字数 729 阅读 367

技术和方案,不能拆开看

未分类


前言

对于很多前端工程师来说,前端技术变化日新月异,很多人热衷于研究新技术。常常出现为了用上新技术,将其用在不适合的场景,导致事倍功半。
比如我们要做个管理系统,你偏要上服务端渲染,我们要做个 h5 项目,你偏要搞微前端,这就属于牛头不对马嘴。
今天,我就从最近遇到的一个例子来聊聊技术和方案的关系。

背景

在开发 APP 的时候,我们常常会遇到发版的问题。不仅需要通过应用商店的审核,还要考虑兼容老的版本。
尤其是对国际化的 APP 来说,翻译往往是很重要的一环。如果不小心翻译错误,那么想立马修复线上的问题就比较麻烦。所以动态化加载翻译文案就比较重要。
我们公司有一个 Transify 平台,这个平台是越南或者泰国团队的同事做翻译用的。我们每次提出需求,由他们来翻译成对应的泰文和越南文。
刚好隔壁组做了一个 ccms 配置中心的项目,允许我们在上面创建应用以及子业务,大概就是 Ant Design 这种树状结构。

image.png-58.6kB

客户端团队原本也是在应用启动的时候,直接去调 Transify 的接口,但这样不够灵活,每次拉下来全量的数据体积过大,他们希望只做差量更新。
于是,产品给我们提需求,希望能够接入配置中心,将翻译文案做成动态配置的,可以按照版本进行差量更新。
先来介绍一下 ccms 系统吧。

在 ccms 上面我们可以创建一个大的应用,以及下面对应的子应用,在我们这边常常是按照 部门 -> 业务 -> 子应用 -> 地区 进行的分级,每个叶子节点存储每个子应用的配置信息。

image.png-243.6kB

对于翻译来说,对于安卓和 iOS 会创建不同的 branch,每个 branch 下面会根据地区区分创建 en、th 或者 en、vn 的子 branch,每个子 branch 下面的叶子节点就是我们的翻译 key,每个 key 的 value 就是翻译文案。

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注