精英盒子 -> 零毫秒 -> 经过重新设计和修订的消息列表(以及消息名的翻译) [打印本页]

jybox 2012-01-12 00:35

经过重新设计和修订的消息列表(以及消息名的翻译)

消息类型 推荐的常量名 描述 消息编号
 CS  Login  登录
 SC  LoginResult  登录结果
 CS/SC/CC  AskInfo  请求对方信息
 CS/SC/CC  Info  返回信息
 CS  AskPublicKey  请求公钥
 SC  PublicKey  公钥
 SC/CC  Unknown  无法理解消息
 CS/SC/CC  Hi  空消息
 SC  UserListChanged  用户列表已变更
 CS  AskUserList  请求用户列表
 SC  UserList  用户列表
 SC  SystemMsg  系统广播信息
 CS  Logout  注销登录
 CS  SendMsg  发送信息
 SC  NewMsg  新信息
 CS/SC/CC  ImageData  图片数据
 CS/CC  AskImageData  请求图片数据
 CS/CC  AskImageInfo  请求图片信息
 SC/CC  ImageInfo  图片信息
 CS  UserRequest  好友申请/邀请加群
 SC  NewRequest  新好友申请/新加群邀请
 SC  NewGroupRequest  新加群申请
 CS  RequestResult  申请/邀请处理结果
 CS  AskUserInfo  请求用户资料
 SC  UserInfo  用户资料
 CS  CreateTempGroup  创建临时讨论小组
 CC  FileRequest  邀请接收文件
 CC  FileRequestResult  接收文件邀请处理结果
 CC  FilePartData  文件分片数据
 CC  AskFilePartData  请求(重传)文件分片数据
 CS  AskConfigurationKeyList  请求漫游配置信息键名列表
 SC  ConfigurationKeyList  漫游配置信息键名列表
 CS  AskConfigurationData  请求漫游配置信息数据
 SC  ConfigurationValue  漫游配置信息数据
 CS  CreateConfigurationData  新建/修改漫游配置信息数据
 CS  RemoveConfigurationKey  删除漫游配置信息数据键名(以及数据)


jybox 2012-01-12 00:37
目前36个(最开始设计的时候是50+)...精简了好多
这个.....应该叫多态?...反正就是类似的设计理念。消息根据参数的不同可能表示不同含义


感觉设计的不错的,倒不是我英语好,只是逻辑上不错。详见楼下

jybox 2012-01-12 00:54

关于翻译
这是之前的草稿:大家可以去对比:
http://jybox.net/bbs/read.php?tid-779.html
http://jybox.net/bbs/read.php?tid-784.html

做了很大的改动,包括精简消息,更改翻译。
最重要的是,在中文描述上,仔细的斟酌了措辞

之前我和littlepig在翻译上有分歧,很可能是因为我的中文描述表示不当,导致他在理解和翻译上出现误差。当然这个是我的问题,对所有围观群众还是要表示感谢

请注意,不要一味的追究中英文是否对应,因为有的时候是中文描述不恰当.........

在这里总结一下我所谓的一致性:
Result,对应中文“结果”或“处理结果”,必有一个消息与它对应,但消息名称可能不一样
Ask,对应中文“请求”或“请求(重新)”,必有一个消息与它对应,而且消息名称 一样
User,对应中文“用户”,SB2.x中其实不存在真正意义上的好友关系,所以一律称之为用户(当然,在客户端UI上不一定这么写)
Msg,对应中文“信息”,为了防止混淆,用“消息”表示一个包含头部的二进制消息数据包,聊天信息一律用“信息”来描述
Data,对应中文“数据”,而且一定是二进制数据
Info,对应中文“信息”或“资料”,指一些伴随的属性,而不是其本身
Request,对应中文“申请”或“邀请”,必有一个Result与它对应,但是消息名称的剩余部分可能不一样
Group,对应中文“群”或,但其实在SB2.x中,群和临时讨论小组是非常接近的概念(其实用户和群的概念也很接近)
Configuration,对应中文“漫游配置信息”,当然,因为长度太长了,英文没写全
Create,对应中文“创建”,它和New的概念有区别,New是重点在提醒对方有一个的XXX,而Create是在创建一个新XXX
New,对应中文”新“,详见上一条

所谓统一性,就是,上面这些元素,都出现了不止一次,大部分消息名称都是由他们组合构成的
意在通过”搭积木“的方式,迅速让阅读者了解一个消息的性质,以及抓住消息之间相通的地方
这样也是在提醒开发者,具有相同元素的消息,很可能有必要在一起实现,通过类似多态的方式来提高开发效率

littlepig 2012-01-12 12:22
考完试接着吐槽……

whtsky 2012-01-12 16:15

把发送系统消息去了,统一规定由用户名为'system'发来的消息为系统消息

jybox 2012-01-12 20:09
whtsky:[表情]
把发送系统消息去了,统一规定由用户名为'system'发来的消息为系统消息 (2012-01-12 16:15) 

你同意搞个叫system的机器人了?...

whtsky 2012-01-12 20:12
jybox:[表情]你同意搞个叫system的机器人了?... (2012-01-12 20:09) 

我只是为了精简协议

jybox 2012-01-12 20:37
whtsky:[表情]我只是为了精简协议 (2012-01-12 20:12) 

既然加了个system,不搞成机器人那不就太无趣了?...我还是觉得单独搞成消息好点

whtsky 2012-01-12 21:08
jybox:既然加了个system,不搞成机器人那不就太无趣了?...[表情]我还是觉得单独搞成消息好点 (2012-01-12 20:37) 

机器人嘛。。什么的
系统消息不知道要拿来发什么。。
还是精简消息吧

littlepig 2012-01-15 13:42
没大问题。不吐槽了。jy加油……我直接等sb2协议了……

mason 2012-01-16 22:19
尼玛。设计的时候要为我着想啊。

jybox 2012-01-16 23:13
mason:尼玛。设计的时候要为我着想啊。[表情]  (2012-01-16 22:19) 

坑的就是你,要注意的问题我会写的,怎么实现就是你的事了




Powered by phpwind v8.7 Code ©2003-2011 phpwind
Time 0.157735 second(s),query:5 Gzip enabled