如果说腾讯的话,老项目svn,新项目很多都是git了,通讯环境的话用微信企业版比较多,而项目相关的工作内容有很多会基于网页。开发环境最需要统一的就是版本管理,其它倒是比较自由。
由于C++在腾讯最主要的用途是服务器后端,因此实际上你可以使用任意的编辑器,大厂员工很务实,是很少就这个问题撕逼的。
远古时代(大约十五年前)很多人用SourceInsight3.5,因为它有完美破解版。但是它的致命问题有两个:第一是只支持C语言,C++支持比较糟糕,第二是只支持GBK不支持UTF-8,这个问题在现在来说很致命,都2020年了你几乎不会还允许程序员用GBK写代码,虽然2005年用GBK写代码还挺常见。
SourceInsight4.0改进了这两个支持,能够有限程度支持UTF-8,并且C++支持比前作排版强了半分钱,但售价是天价(四位数以上)。鉴于大厂一般不允许本机装盗版,SI4.0的价格又几乎不可能购买,所以现实中除了可以申请购买SI4的公司,其它公司已经极少有人用它。
自己折腾党有用Vim跟Emacs的很多,当然也有直接用其它IDE的,比如VS,比如Eclipse(嗯,这货确实也可以写C++),比如JB,比如。。。各种选择都可以,服务器后端C++程序员们真的不会对IDE问题过于纠结,自己习惯用哪个就是哪个。
就现在而言,Eclipse原作者的新作品:Visual Studio Code 逐渐成为程序员新宠,它有技术跟历史的必然。虽然它目前还有不少问题,但已经越来越多的人开始使用它。
纠结IDE的项目大都缺乏自己的构建系统,而对于互联网项目来说,CI/CD 机制已经很流行,这意味着C++项目是必须自动构建的,能 CI/CD 也就意味着必须有可以被命令行批处理的构建,进而就脱离了任何指定的IDE。
--
所以你要说开发环境是什么?
那就是:统一的SCM管理,基于Web的问题跟踪及缺陷管理,客户端的项目组成员间通讯,后台服务CI/CD。——至于IDE,可以说并不是开发环境的一部分,只是程序员的个人爱好选择而已。
我来厚着脸皮答一个:我们公司并不是大厂,一共只有11个人,主要产品是在Windows、Mac上面的桌面程序和动态库形式的插件(VST、Audio Unit、AAX)。经过几年的迭(zhe)代(teng)之后,目前是这样的局面:
目前来看,这个结构还算堪用。遗留的问题主要是:
前些日子想过把CMake换成Bazel。然而Bazel虽然看起来有很多优点,但一个是bug多,一个是从头折腾一遍代价太大,目前没有足够的动力。
Unreal默认使用的是C++14
克劳备忘录也好,凯南电报也好,有两大共同点。首先,都是以现实主义的眼光去分析双方的关系。然后,给出的建议都是阳谋,并不是什么不可告人的阴谋,执行起来需要的不是鸡鸣狗盗的小聪明,而是惊人的意志力。
而美国现在战略界现实主义被边缘化,我推测,布热津斯基,基辛格那帮人应该写过不少。不过没所谓,美国能执行大战略的时代过去了。现在这一代精英上半年能管下半年就已经很了不起了。一个需要两代人以上持之以恒去完成的大战略,搞出来他们也执行不了。
冷战时期,从杜鲁门艾森豪威尔到肯尼迪尼克松,最后到李根老布什,个人性格和政治偏好差距不要太大,但是都忠实地完成了他们历史任务,沿着围堵政策做下去。这种战略定力和延续性,世间少见。在中国领导集团上能看见一些相似的东西,但是我们离得距离太近,反而看不清。但在美国精英层身上完全看不到这一点。
个人愚见。
克劳备忘录也好,凯南电报也好,有两大共同点。首先,都是以现实主义的眼光去分析双方的关系。然后,给出的建议都是阳谋,并不是什么不可告人的阴谋,执行起来需要的不是鸡鸣狗盗的小聪明,而是惊人的意志力。
而美国现在战略界现实主义被边缘化,我推测,布热津斯基,基辛格那帮人应该写过不少。不过没所谓,美国能执行大战略的时代过去了。现在这一代精英上半年能管下半年就已经很了不起了。一个需要两代人以上持之以恒去完成的大战略,搞出来他们也执行不了。
冷战时期,从杜鲁门艾森豪威尔到肯尼迪尼克松,最后到李根老布什,个人性格和政治偏好差距不要太大,但是都忠实地完成了他们历史任务,沿着围堵政策做下去。这种战略定力和延续性,世间少见。在中国领导集团上能看见一些相似的东西,但是我们离得距离太近,反而看不清。但在美国精英层身上完全看不到这一点。
个人愚见。