您的位置首页  文学

腾讯tim和qq区别 安装文件硕大无比

作者:高昌健链接:来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。我之前在PCQQ(以下简称QQ)部门做过一段时间客户端开发,就讲讲我的一些经历。开发每个人有两台联想台式机,预装Win7

作者:高昌健链接:来源:知乎著作权归作者所有。

商业转载请联系作者获得授权,非商业转载请注明出处。

我之前在 PC QQ(以下简称 QQ)部门做过一段时间客户端开发,就讲讲我的一些经历。

开发每个人有两台联想台式机,预装 Win 7 和一堆内网监控软件,你懂的。

配置还可以,不过其实开发 QQ 有时候还是会有点吃力。

一台接入开发网,只能用来开发和上公司内网。

另一台接入办公网,可以上外网,但是腾讯内部有白名单,非腾讯自家客户端上网也必须设代理,所以有时候就比较尴尬,比如如果某个软件不支持代理就傻了。

我曾经想 push 代码到 GitHub,后以失败告终。

总部大厦几乎每个地方都有免费 Wi-Fi,所以如果你自带电脑的话上网还是可以比较爽的。

开发环境 Visual Studio 2005,我因为习惯了 Vim,所以都是在 Vim 里敲代码,然后拿 VS 来编译和跑程序。

强烈推荐再装上「小番茄」[1],至于我们有没有交钱这个你也懂的。

版本控制是 ClearCase(大槽点之一。

以下简称 CC),CC 绝对是我见过的最逆天、最无敌的软件,安装文件硕大无比,用的时候卡得一逼。

QQ 内部对版本控制系统的使用要求比较严格,当你需要开发一个新需求的时候要先发一封邮件给 CC 管理员(居然有单独的管理员!),让他给你建一个子流(相当于建分支,建分支居然还要申请!)。

然后从 CC 服务器上把新建的子流拉到本地,注意,虽然这只是一个分支,但是你需要把整个 QQ 代码都再重新下载一遍!所以一般这种时候你可以去喝杯水看看风景啥的,时间取决于网速,一般 30 分钟至数小时不等。

然后你终于开始了「愉快」的开发生活,你会发现每当你要修改一个文件的时候,你需要先 checkout 它(注意跟 Git 的 checkout 没有半毛钱关系),checkout 完之后就只有你能改这个文件,如果刚好有人和你在同一个子流开发,必须等到你 checkin 之后才能 checkout 这个文件。

当然如果你等不及别人 checkin,你可以先 hijack 这个文件,改完之后再跟别人的修改合并。

写好代码想编译下看看效果,首次编译 QQ 的话耗时巨长无比(而且每次拉了新的子流后都要经历一次),所以你又可以去喝杯水看看风景啥的,时间取决于机器性能,一般 1 小时至数小时不等。

并且编译过程中开发机基本处于卡死状态,根本没法用,于是我通常都是吃饭前或者下班回家前干这种事情。

开发完成之后没有 code review,况且要通过 CC 来看更改也极为麻烦。

这时需要制作一个安装包给测试人员,打安装包这种事情一般交给编译机,时间 20 分钟左右,最快记录貌似是 8 分钟,当时负责优化性能的同学还拿了奖啥的。

测试过程中使用内部系统 TAPD 进行 bug tracking,每个 bug 分高、中、低三个等级,QQ 这边的 QA 对于质量要求很严格,需要同时通过功能测试和性能测试,通常要求是 0 个高单和中单(俗称 0 bug 合入),少量低单是允许的。

在经过严格的测试之后就可以合入主流了,使用 CC 的 deliver 功能来完成。

但最好是先 rebase 主流(相当于 merge 主流,同样跟 Git 没有半毛钱关系),确保没有问题之后再 deliver。

至此你的开发任务已经完成,接下来就是等待版本发布。

QQ 内部有一套成熟的客户端框架,代号 Hummer(蜂鸟),提供了诸如代码解藕、公共库、插件机制、国际化等功能。

自研的皮肤引擎,代号 GF(GUI Foundation),用来实现各种界面效果。

这两块是作为 QQ 开发者必须要掌握的,同时围绕这两块还开发了一堆小工具,最常用的就是 LogViewer,用来查看日志文件,还有性能工具用来分析代码性能。

底层代码和应用层代码是分离的,因此有时在 debug 时会遇到部分代码无法查看的情况。

毛华荣2021-06-17 21:08:59想法是很新颖,具体实施起来是很困难的,信息时代下,还是很多盲眼的信息蜘蛛侠,接受不来的东西, 你花多少精力时间都是白搭,脚踏实地的,去想想 做一个实业比较好吧

免责声明:本站所有信息均搜集自互联网,并不代表本站观点,本站不对其真实合法性负责。如有信息侵犯了您的权益,请告知,本站将立刻处理。
网站推荐更多>>