国际化梦工厂

专注国际化开发和测试,只聊干货拒绝扯淡!

自定义博客皮肤

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

NLP之我见

  简介 NLP(自然语言处理)作为CS, AI和Linguistics的交叉学科,目的是让计算机能够处理和理解人类的自然语言,以执行语言翻译或回答问题等任务。随着语音接口和聊天机器人的兴起,NLP成为了AI技术最重要的研究内容之一,但想要充分理解和表达语言含义其实是一个极其困难的目标,因为人...

2019-01-28 17:00:48

阅读数 1806

评论数 0

幸福的烦恼—当本地化客户端遇上本地化服务器

在国际化开发过程中,遇到过需要校验的地方,你会如何选择?用string value本身进行compare?一旦出现翻译后的内容跟标的mismatch又将如何呢?我们是幸福的,因为身处一个国际化底蕴深厚的团队,无论服务器抑或客户端;我们又是不幸的,源自客户端和服务器进行通信时,数据包括了本地化后的字...

2018-12-25 15:23:49

阅读数 3191

评论数 0

再读笑傲

飞雪连天射白鹿,笑书神侠倚碧鸳……慕然间查大侠竟就这么离开了,对于一个从小便伴随着“狭义江湖”长大的人来说,唏嘘感叹,黯然神伤着实难免。相信不光是在下,全球华人对金庸先生构建起的武侠世界大抵都不会太陌生——六脉神剑、辟邪剑法、独孤九剑、太极剑、七伤拳、太极拳、乾坤大挪移、凌波微步、金刚指、拈花指、...

2018-11-23 14:28:25

阅读数 11666

评论数 1

42th Unicode Conference随笔(二)

  这次会议上有幸听到了来自Apple Xcode团队三位工程师(Trevor Cortez, Vivian Robison, Fredrik Stenshamn)的经验分享,着实印象深刻,为了开发适应全球化,高可用的,并且是为了开发普通终端用户使用的app而并非企业级产品,Xcode需要考虑并...

2018-10-12 17:19:11

阅读数 11246

评论数 0

42th Unicode Conference随笔(一)

三国曹丕的《典论·论文》中说:“文人相轻,自古而然。”这话其实还有后句的,叫“武人相重”。而我辈应当算作文人?抑或武人呢?窃以为还是偏武多一些,毕竟IT圈儿的主流依然是“夜里挑灯看剑,梦回吹角连营”,吟风弄月的怀橘陆郎多半难成气候。然而面对业内充斥着的各种不厌其烦发明着的轮子,倒也不禁难掩大家平实...

2018-09-25 18:23:22

阅读数 11708

评论数 0

Base64与国际化

  背景介绍 抛个问题,什么是base64?何时会用到他?与我们熟知的charset又是怎样的关系呢?跟国际化又有何恩怨呢?先看看wikipedia对其定义吧。 “ Base64是一种基于64个可打印字符来表示二进制数据的表示方法。由于 26=64,所以每6个比特为一个单元,对应某个可打印字...

2018-08-22 18:10:03

阅读数 12255

评论数 0

path的锅?

用Python进行国际化编码的兄弟对这个错误大抵应该是不陌生的——“UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-1: ordinal not in range(128)”。根据业内“公认”的鄙视链,...

2018-08-16 14:13:01

阅读数 12901

评论数 0

为moment.js正名

说来也奇怪,总有人在耳边说moment.js对国际化日期支持不好,坚决不要使用,会带来很多问题之类的话。但就我个人经验来看,还从未见到过任何一个反例,恰好我又是个不信邪的人,并坚持认为检验真理的唯一标准就是小马过河,所以今儿我就准备趟趟水,是骡子是马,咱们拉出来溜溜呗,走起来。   首先,部署...

2018-07-21 12:34:22

阅读数 15368

评论数 0

国际化与多线程—续

正所谓“说曹操曹操到”吧,这世间的很多事儿着实架不住念叨。上文书我们刚提到一个“活久见”bug,如今又和他的表妹不期而遇了。 相遇过程如下: 在已经被本地化的产品中选择Preview,Schedules等tab,日文UI无任何异常。 紧接着点击Downloads tab,注意!这里的页面...

2018-06-07 18:15:15

阅读数 14790

评论数 1

国际化与多线程

提到开发中的多线程问题,我想大部分人并不陌生,其中有不少兄弟还能津津乐道于生产者,消费者模型,做烤鸭吃烤鸭的案例也烂熟于心。不过要是谈到多线程跟国际化有啥关系时,相信多数人还是会语塞,其实我也一样,从未认为国际化问题跟多线程能扯上什么关系。直到最近碰到了这样的几个bug,算是“活久见”系吧。在一个...

2018-05-25 17:34:23

阅读数 15117

评论数 0

ExtJS中的maxLength

时至今日,ExtJS已然不再流行,基本上已经从前端的世界销声匿迹了。但不可否认的是它依然在诸多legacy代码中发挥着重要作用,一旦有了问题,同样让人难受。今天我们就来聊一个还算是一个比较常见的(至少对我来说如此)国际化问题吧,它起源于maxLength。首先我们来创建一个textfield,相信...

2018-05-16 18:03:07

阅读数 15437

评论数 0

都是ß惹的祸

收到一个客户报来的bug,说自己在创建某个component时,一旦命名中包含了ß(例如UEMENß),该创建功能会导致失败,删除掉ß后该功能正常运行。不少资深的测试和开发留言说—— ß是一个非常tricky的字符,很多第三方库对其支持都不好,其他产品也有类似问题吗,在release notes务...

2018-04-27 18:17:01

阅读数 7256

评论数 0

“多余”的双引号

说起遇到过的奇葩国际化bug,相信各位的经验不会在我之下,甚至用一个seminar的时间也只能管中规豹。近日笔者就又遇到了一个,分享出来以飨读者吧。 首先,让我们来看看我是怎样偶遇该奇葩的,复现的过程倒也简单——登陆产品界面,进入dashboard的overviewpage,当设置bro...

2018-01-14 17:06:37

阅读数 3854

评论数 0

导出CSV文件中的乱码

问题概述 如今的AUT导出csv文件的功能已经相当的常见,而打开文件后内容显示为乱码的现象也着实屡见不鲜,即便编码时候特意指定了码表为UTF-8,如下所示。 public void exportCSV(){ OutputStreamWriter fwriter = new OutputStr...

2017-07-03 22:15:06

阅读数 12617

评论数 0

GemFire/Geode中的国际化(二)

代码走读 商业产品的代码我们是看不到啦,这里我们就以开源的Geode为例,一起看看哪些区域涉及到了国际化实现。(这里笔者使用了内部研发的代码语法感知工具)首先,我们的目光投在了DataSerializer.java中的writeString和readString方法。 public staticv...

2017-06-14 14:25:50

阅读数 4236

评论数 0

GemFire/Geode中的国际化(一)

背景 GemFire 作为一款分布式NoSql内存数据库,用来完成分布式缓存,数据持久化,分布式事物、动态扩展等功能。Geode是其开源版本,于2015年4月发布, 该项目是为了将GemFire改造为依托Apache软件基金会、社区自治、多元化的一个社区项目。github的地址是https://...

2017-06-13 19:43:59

阅读数 4786

评论数 0

Redis缓存中的国际化(二)

用Jedis操作存在的问题和根源 上文书我们得知用cli操作Redis是不存在国际化问题的,那为何实际项目中时常会出现因为引入Redis导致大范围非英文字符显示为问号呢?本文我们将使用Java客户端Jedis来操作Redis,进一步分析产生问号现象的可能原因。首先来模拟并测试下Jedis的序列化...

2017-05-29 14:54:06

阅读数 4476

评论数 0

Redis缓存中的国际化(一)

NoSQL 随着WEB2.0的兴起,任何新闻、视频、朋友圈都不再是一个个孤立的推送行为,大量的互动行为往往会喧宾夺主的成为主角,相当一部分吃瓜群众再也不是去关注新闻本身,而是“来看评论的”,捎带脚也常常会推波助澜的“火钳刘明”一把。面对这样超大规模和高并发的SNS类型业务需求,传统的关系型数据就...

2017-05-29 01:39:53

阅读数 4686

评论数 0

从json到gson

眼下JSON(JavaScriptObject Notation)已经成为业内使用最为广泛的数据传输格式了,似乎不用JSON来存点儿东西,出门都不好意思跟人到招呼。这种与开发语言无关,轻量级的数据格式,之所以能够发展的如此迅猛,优点一定是显而易见的,例如: ·        易于人类阅读和编写,格...

2017-05-19 21:31:36

阅读数 5148

评论数 0

本地化测试的执行

本地化测试的bug大抵可以分为几类呢?笔者总结如下。 1.   因为翻译文件check-in导致原有的功能失效 2.   软件本地化之后UI layout异常或截断 3.   硬编码 4.   翻译内容不正确   溯游从之,先说功能点异常或缺失,这可是我们测试的重中之重。我曾多次设想过利用伪翻译之...

2017-05-12 17:57:59

阅读数 2071

评论数 0

提示
确定要删除当前文章?
取消 删除