美杜莎
如果无法正常显示,请先停止浏览器的去广告插件。
1. 国际化文案解决方案
黎敏
2. 黎敏
阿里巴巴 B2B 国际站 前端
从 2013 年开始,致力于美
杜莎的维护发展工作
3. 美杜莎 是阿里巴巴 B2B 国际站推出的国际化文案服务平台
专注于
文案 高效维护 便捷使用
多语言 快速支持
4. 应用到 7 个站点
已接入 153 个应用
支持 20 种语言,英文到多语言的翻译
对多种语言框架的支持,包括 Java 、 NodeJS 、无线
APP
已经运行在私有云上
5. 通过今天的分享
应用 复制 接入
共建 优化 扩展
6. 概览
• 基础方案
• 应用与扩展
• 未来展望
7. 场景一
文案资源文件
8. 写在代码里
9. 写在代码里
优点
一目了然
缺点
文案无法复用
跨文件查找效率低,遗漏
多语言支持难
用户端生效慢
10. 多个资源文件
单个资源文件
11. 优点 缺点
KV 存储,可复用 跨文件查询效率低
支持扩展多语言 用户端生效慢
以业务为纬度,降低维护成本
12. 需要解决的问题
降低文案维护成本
快速支持多语言
提高文案生效速度
13. 解决办法
KV 存储
融合
增加多语言纬度
增加业务纬度
存储
数据库
14. UI 化管理
文
案
新
增
文
案
修
改
文
案
删
除
文
案
历
史
批量
导入
导出
翻译
引擎
key 查询
namespace
查询
应用查询
分组查询
内部 API
文案服务
控制面板
用户
界面
15. 查询
16. 添加多语言文案
17. 批量导入文案
18. 导出业务文案
19. 文案资源文件怎么办?
20. 我们需要
一个获取文案的接口
一个将文案写到资源文件的工具
21. 文案同步到资源文件
内部 API
本地工具
读取
请求
config.json
locale watch
i18n[‘ 文案 key’]
生成
i18n.js
使用
i18n._(‘ 语种’ )
22. config.json
i18n.js
23. 小结
文案平台化管理
优点
查询便捷 维护友好 释放开发资源
缺点
文案查找修改不够简便
24. 小结
文案同步到资源文件
优点
避免直接修改资源文件,避免人为修改错误
缺点
文案更新无法快速反应到用户端
25. 场景二
应用端使用文案
26. 文案放在后端模板中
模板渲染前
查询数据库
调用服务
逻辑运算
文案数据
准备
数据
27. 模板中使用文案 key 替代原始文案
28. 应用客户端
文案
模板
渲染
i18n.get(“ 文案 key”)
应用端缓存
应用端内存
应用客户端
注入 i18n
Node
Java
刷新
文案
版本
文案服务
29. 文案可以及时同步了!
不过
是后端
30. 前端业务代码中的文案
31. 前端业务代码中的文案
解决了
前端业务文案及时更新
未解决
文案新增、删除之后,无法及时反应在用户端
32. 解决思路
输出一组文案
使用统一的前缀
文案 key 转换成 namespace
33.
34.
35. 文案 namespace
{
“a.b.c”: “ 文案 value”,
“a.b.d.e”: “ 文案 value”
}
i18n.getNSJson(“a.b”)
应用客户端
文案服务
文案批量
输出到页面
36. 小结
文案服务化
以文案为切面,适配各种场景,如 Java 、 NodeJS 等
通过定制扩展,衍生出适应各类场景的文案方案
37. 小结
文案 namespace
优点
文案新增、删除的结果可以及时反应在用户端
缺点
文案不宜过多,否则会影响页面加载速度
38. 场景三
修改页面上的文案
39. 修改某个页面上的文案
确认
文案
明确
业务
页面
定位
代码
代码
修改
文案
文案
key
美杜莎
40. 只是改一个文案
了解业务
清楚代码结构
开发
人员
人肉工作
41. 急需解放开发人员生产力
42. 应用客户端输出调整
43. 可视化维护
工作
人员
访问
页面
编辑
否
正常页面
是
可编辑
页面
编辑器
文案服务
内部 API
44. 可视化维护
45. 可视化维护
46. 可视化维护
47. 可视化维护
48. 场景四
单页应用
49. 存在的问题
文案量大
通过后端模板输出 不可取
通过文案资源文件 更新不及时
50. 文案资源文件动态更新
文
案
服
务
NS
版
本
NS
文
案
文案 CDN
静
态
服
务
生成资源文件
读取 NS 版本
Web 服务器
输出资源文件引
用路径
JS 模块
加载器
浏览器
按照
标准模块
使用文案
51. 场景五
无线 APP
52. 无线 APP 的现状
文案打包在 APP 中 用户启动时,需要即刻展示文案
更新文案需要发布新版本,用户需要重新安装
53. 无线 APP
启动
切换语言
版本
更新
有
定时刷新
无
文案服务
增量文案
本地缓存
APP
离线
文案
更新内存
刷新界面
进入界面
54. 总结
交互
界面
可视化维护
用户界面
使用文案
WEB 框
架
内部 API
机器
翻译
权限
控制
无线 APP
前端
应用
客户端
应用端缓存
写入
读取
存储
文案
服务
55. 规范化
• 输入输出标准化,降低理解及升级成本
• 平台服务文档化,便于沟通交流,以及扩
展功能
56. 提升服务能力
• 更便利的文案维护方式
• 更强大的文案使用方式
57. 公有云
• 共享文案服务
• 共同打造更好的服务
58. Q & A
谢谢!