【转】C# 在腾讯的发展

本文首发我的微信公众号"dotnet跨平台", 内容得到大家热烈的欢迎,全文重新发布在博客,欢迎转载,请注明出处.

.NET 主要的开发语言是 C# , .NET 平台泛指遵循ECMA 334 C#和 ECMA 335 CLI 标准的开发平台 ,包括微软自行开发的.NET 平台和 开源实现的Mono 以及 微软最新开发的.NET Core。 从2007年加入公司自今一直在使用C#, 对这门语言在 腾讯的使用情况有大概的了解,最近有空整理了一下相关的情况,破除江湖传言 ”国内互联网公司都不用C# ”。

1、2003 ~ 2007 年

微软在2002年发布.NET 1.0,2003年发布 .NET 1.1。由于.NET的开发效率高,2003年开始腾讯的OA系统也开始采用.NET进行开发,早期的OA系统是使用cgi来开发的,2007年我接手OA的单点登录系统时里面还有cgi 的兼容性代码,那个cgi的兼容性代码还存在着内存泄漏问题,一直到2013年 OA登录的重构 才把它移除。2003年OA开发团队开始迅速的从几个人发展到2006年的30多人规模,公司的快速发展也要找更多的开发人员,在toby的介绍下2007年加入了腾讯,我从加入公司开始就一直负责腾讯OA基础服务,简称TOF的开发运营工作。

2003到2007 这几年是.NET在腾讯快速发展的几年, 最早的OA工作流-品高工作流产品也是用.NET开发的,2004年引入并做了二次定制性开发, 我到公司后也接手维护过这一个工作流引擎,品高公司不再维护这一个版本, 2008年引入K2 工作流引擎替代它。 公司的门户www.oa.com 曾经是使用微软的SharePoint 2003系统二次开发而成,他是由toby 负责的,他是微软2005~2007年的MVP,也是在微软的社区活动上认识了toby,后来也在他的引荐下加入腾讯,工作到现在。当年不仅仅OA是用.NET开发的,公司内很多的业务运营系统也是用.NET开发的,开发的第一版的TAPD 也是用.NET开发的,在我到公司之前他们组建了现在的研发管理部用PHP重写了TAPD,这也就开始了PHP替代asp.net的进程 ,还有很多系统,财经/HR/SCM/公司论坛BBS/ITIL/BOSS等等的系统,可以说这是.NET在腾讯的顶峰时期。从2007年开始往后的时间里asp.net开发的系统逐步使用Python/PHP等替换,幸运的是,腾讯支付业务(前身财付通)的清算,风控等业务从创立至今还在使用C#,最近我有幸转岗到了支付清算业务,继续发挥光大C# 。

2、2007 ~ 2014 年

2007 ~ 2014年这个时间段的划分,正是按照微软的鲍尔默时期,微软丢掉互联网和移动互联网时期。 2007年初加入腾讯时,和toby一起前往微软总部参加微软MVP 全球峰会,比尔盖茨告别CEO,CEO交给了鲍尔默,一个干销售的CEO一心想着赚更多钱的,死抱着Windows不放,导致互联网公司都排斥使用Windows,.NET 有着天生的跨平台理想,却始终没有实现,导致了很多人认为.NET只能跑在Windows上,观念一旦形成就很难改变,在此期间开源的.NET 实现Mono项目却在移动互联网领域找到了落脚点, 基于Mono的商业项目Xamarin和Unity 分别在移动开发和游戏开发领域占据重要地位。

2007年初我加入腾讯,接手民哥维护腾讯OA基础服务TOF,这一干就是9年,在这期间有很多同事出去创业了,民哥带领了一班兄弟去开创了公司的内网安全领域,其间开发的安全运营平台也是用.NET 开发,2013年开始也逐步用C++替代.NET开发了。公司的业务剩下使用.NET开发的项目已经不是很多,掰着指头就可以数得过来,目前还有财经/行政/HR/财付通/互娱一些运营系统还是使用.NET开发。如果只能部署在Windows平台上,这些系统迟早要被替换掉。因此,我在做腾讯OA基础服务TOF的维护的同时,业余时间在研究Mono跨平台开发,通过博客,微搏宣传Mono项目,并在实践中进行实践。

这个跨度的时间有7年,我也一直在进行腾讯OA基础服务TOF的升级改造工作,在2014年完成了最完整的一次重构,支撑起公司内网API调用千万级别的蜕变,具体可看我的文章介绍《先定个小目标, 使用C# 开发的千万级应用》。公司其他使用.NET开发的系统也在不断的演化,得以继续生存下去,当然也有很多的同学不再使用C#,转而使用其他语言来重写系统。2013年公司code平台第一次推出了腾讯年度代码报告:http://code.oa.com/v2/report/2013 ,开发语言前10 中不见C#的身影,我还没有运营公众号,这个只有内部数据,需要看具体内容请加入鹅厂。

2014年的腾讯年度报告http://code.oa.com/v2/report/2014 〈2014腾讯代码报告出炉 C#代码量增长一倍〉奇迹般的c# 排到了第七,增长了1700W行,这是什么魔力让他增长如此迅速,开发者也增长到了1563人。

在.NET应用被其他语言不断替代的情况下,2014年c# 的代码却发出了洪荒之力,主角就是基于Mono平台的Unity 游戏开发,是手游让C# 爆发了,Unity5.1版本后全力支持VR开发,今后的VR/AR领域C# 还会继续发扬光大。

3、2014 ~ 未来

2014 年更换了CEO,萨特亚·纳德拉接任CEO,正式开始推行开放策略,开始拥抱Linux,开源,.NET Core持续2年的开发在2016年6月27日发布RTM,在这两年时间内微软转型也很成功,微软股价走出了一个完美的大底,现在刚刚开始上涨。

微软在这两年时间内也完成了对Mono的开发商Xamarin 的收购,通过成立.NET基金会,效仿Apache基金会的运作来推动.NET平台的发展,目前已经吸收Unity,RedHat,samsung等业内企业加入。微软也完成了对.NET 的平台演进规划,下面这张图是它的未来全貌:

2014年C# 在腾讯的发展借助于手游的发展使出洪荒之力,2014年的发展也很好,成为最有潜力的开发语言,我们来看下2015年腾讯年度代码报告http://code.oa.com/v2/report/2015

使用c# 的人数从1563 上升到2068,代码增长也是千万级,据我所知这些增长都是Unity所带来的,在新的VR 领域还会看到C#的增长,在传统的服务端应用开发方面还在继续下降,形势不乐观。随着微软发布.NET Core 1.0, 在Windows、OS X和Linux系统上可用了。.NET Core是一个跨平台,开源代码,模块化的.NET平台,可以用来创建现代网络应用,微服务,库和控制台应用程序。.NET Core现在在Red Hat Enterprise Linux和OpenShift上是可用的。另外,.NET Core完全被Red Hat支持并通过微软和Red Hat之间的集成混合支持合作关系进行扩展。

这是自.NET创始以来最大的转变并且会在下一个十年引领.NET的发展。我们已经以满足当今世界的需要为目标重建了.NET基础: 高度分布式的云应用,微服务和容器。.NET框架和.NET核心以及Xamarin 都是微软重要的产品,将继续分别在Windows、Linux跨平台云计算和跨平台移动领域发展。这个.NET框架和传统的ASP.NET将继续与你现有的工作负载相关。你可以共享代码并且在整个.NET体系中重用你的技能,所以你可以决定用什么并且什么时候用,包括运用了Xamarin的移动应用程序。

微软在.Net Core 1.0 公告 列出了.NET Core 使用情况,游戏《崛起时代(Age of Ascent)》的开发商 Illyriad Games,报道称在Azure Service Fabric上使用了ASP.NET Core之后,性能提升了10倍。网易,一家中国领先的IT公司,为内容、游戏、社交媒体、通信和商业提供在线服务,需要在不断变化的游戏空间保持领先优势也选择了.NET Core为后台服务。相比以前的java后台架构:“.NET Core缩短了我们发布周期的20%并节约了30%的工程资源成本”。当谈到吞吐量改进和成本节约时说到:“另外,它使在生产方面的虚拟机数量成半减少成为可能”。

总结

C#语言经历10几年的发展,已经从1.0发展到7.0,但是.NET平台重新回归跨平台的设计初衷,版本号重新回归到1.0,重新出发。C#语言在腾讯的使用情况也经历了高峰到低谷,我们也要重新出发,我也转岗到支付业务,通过和同事们一道努力进军tlinux,docker。

时间: 2024-10-27 08:26:50

【转】C# 在腾讯的发展的相关文章

C# 在腾讯的发展

本文首发我的微信公众号"dotnet跨平台", 内容得到大家热烈的欢迎,全文重新发布在博客,欢迎转载,请注明出处. .NET 主要的开发语言是 C# , .NET 平台泛指遵循ECMA 334 C#和 ECMA 335 CLI 标准的开发平台 ,包括微软自行开发的.NET 平台和 开源实现的Mono 以及 微软最新开发的.NET Core. 从2007年加入公司自今一直在使用C#, 对这门语言在 腾讯的使用情况有大概的了解,最近有空整理了一下相关的情况,破除江湖传言 "国内互

浅谈腾讯技术发展 创新不止

针对网络安全现状,国内网络安全厂商不断推陈出新,通过创新的安全产品和技术与安全威胁抗衡.作为国内首家推出下一代防火墙的厂商腾讯,一直以来取得了不错的成绩,其专业的安全防护深受全国众多用户的信赖. 顺应技术发展趋势,创新不止 随着安全事件的不断发生,虽然企业用户意识到了安全防护的重要性,但是仍有很多的企业在采购安全产品后,不懂配置,不懂分析,无法检测到自身的威胁,甚至是在出现安全问题时都无法自行解决.总之,整个企业的安全能力很差,面对攻击显得有些无力.因此,想要真正的保护企业的信息安全,仅仅有安全

腾讯17年,一部QQ成长史

日前,在猴年新春之际,腾讯推出了新春广告片,作为<弹指间 心无间>的延续.片中通过春节期间发送QQ红包让家人打车回家团聚,让我们感受到了“最温暖的红包,给最爱的人”那种弹指间的感动.而就在这弹指一挥间,此次腾讯新春广告片距离2011年腾讯发布<弹指间 心无间>“亲情篇”已经整整5年了. 在这五年的时间里,腾讯QQ从音频.视频.移动社交.移动办公.QQ钱包等各个领域,其产品形态又发生了巨大的改变,而腾讯QQ作为一种社交关系圈的纽带,带给亲人.朋友.爱人之间的那种亲密无间的感动却始终没

读书笔记 --腾讯传

我们很早的时候就用过腾讯的产品,可是我们对腾讯的了解并不多,<腾讯传>这本书的作者是吴晓波,他深入到腾讯内部,并且通过近千人次的员工访谈,才完成了这本书. 这本书讲述了腾讯的成长经历,腾讯的发展也是中国互联网企业发展的缩影. 作者在书中提出了许多问题,并且作出了解答: 首先腾讯的创始人马化腾是一个怎样的人? 马化腾爱好天文.机房病毒制造者.中国最早的bbs网站站长.寻呼机系统. 其中不得不提到腾讯五虎:马化腾(大Boss).张志东(技术).许晨晔(公关).陈一丹(法律.行政).曾李青(市场),

展讯CEO:低毛利生存 由中低端转向高端

最近一两年来,芯片市场的热闹有从细分.垂直的圈子向整个大社会场景发酵的迹象. 备受各界关注的高通发垄断案,国家大基金的成立,以及展讯.锐迪科等私有化等等,都意味着这个行业的热度在快速上升.这里面既有芯片产业从欧美.日韩向中国大陆进行梯度产业转移的市场大势,也有中国信息产业界对“缺芯少屏”这一产业桎梏的突围情愫. 无论从哪个角度来看,在中国芯片业本轮纵横捭阖中,展讯都是一家值得更多笔墨的公司.它曾“以彼之道还施彼身”,让联发科的2G产品遭遇严重压力.在国家扶持集成电路发展的风口上,展讯又被紫光以私

日活上百万时,腾讯产品如何提前规避服务器宕机风险?

众所周知,优异的应用性能是良好用户体验的坚实基础,而服务器响应缓慢.卡顿.崩溃的产品,即便设计再精美也无法留住用户的心. 2017年2月28日,百度就和用户们开了一个不大不小的玩笑,从当天的20点54分到21点24分左右,百度搜索整整宕机了30分钟,众多网友戏言那30分钟成为了百度最有存在感的30分钟,但是从后来百度的公关文章中,可以看到其提到了"错过了大家上亿次的搜索请求",从这个体量来看,这无论如何都是一次很大的影响了. 无独有偶,今日头条也在今年的1月出现了宕机现象,系统超过30

万达+百度+腾讯可以对抗阿里么?

一. 关于万达+百度+腾讯是否能对抗阿里的问题,我觉得没那么简单的定论. 万达,百度,腾讯,阿里,都属于国内的巨头级别的公司了.对于万达,比较熟知的就是万达电影了,实际上我本人也不是很了解万达.然而万达集团创立于1988年,已形成商业地产.高级酒店.文化产业.连锁百货.旅游度假五大产业.剩下的三个巨头企业,我想普通民众也都很了解的,因为它们的服务完全渗透在了我们生活中.首先说百度和阿里,把我最喜欢的腾讯留到最后.百度,中国最强大的搜索引擎,至少在我们普通人的认知和使用中,搜索引擎里面,刨除部分g

展讯通信:文章&quot;紫光收购后展讯困难重重”失实(展讯的成就确实很高)

6月22日上午消息,展讯通信官方微信对自媒体文章<五大危机缠身,紫光收购后展讯困难重重>作出声明,称,其中内容严重失实,对公司造成了不良影响,并表示,将坚决采取法律手段维护自身的合法权益. 声明原文如下: 一. 关于展讯的产品布局及出货量占比 1. 文中引用分析机构Gartner2015年统计数据,认为展讯产品出货主要集中在2G领域,并推断展讯的收入来源主要依靠2G和部分3G领域. 事实上,在2013年展讯被收购前,公司产品趋向单一,主要面向2G和3G TD-SCDMA(不涵盖3G WCDMA

站在3000亿美元路口,阿里、腾讯谁将笑到最后

5月18日晚,阿里集团2017财年第四季度财报及2017财年全年业绩终于公布.在收入.盈利.现金流等核心指标上,阿里巴巴全面领先腾讯.其中营收方面,阿里全年营收收入1582.73亿元,超出腾讯4%. 作为目前中概股中两只最抢眼互联网公司.起家于B2B电商的阿里,和起家于社交工具的腾讯虽然现在市值都已到达3000亿美元,但两家如何稳坐3000点,并冲刺4000亿美元市值,值得玩味. 腾讯连接世界  阿里改变世界 通过两家公司财报可以看到,腾讯接近一半营收来源于网络游戏,另一半则是社交(QQ.微信等