Visual Studio 2015 为何老开发者至今舍不得换

tmyb

我身边坚持用VS2015的码农

上个月和做工控开发的老大哥王哥吃饭,他掏出电脑给我看新改的注塑机上位机程序,我一眼就看到了任务栏上那个熟悉的紫色图标——Visual Studio 2015,今年已经是2024年,离VS2015正式发布过去了快9年,连VS2022都更新了好几个大版本,我忍不住问他:“怎么还不换新版?现在VS都集成AI补全了,写代码快多了。”

Visual Studio 2015 为何老开发者至今舍不得换

王哥笑了笑给我算了一笔账:他在东莞开了个小工作室,做工业控制的软件开发快15年,现在全国有超过三千台他写程序的注塑机、贴片机在跑,最早的一批项目就是2015年用VS2015搭的框架,这些机器卖给客户之后,最少要跑10年以上,中途客户随时会加新需求:比如改个参数界面、加个对接机械臂的接口,你总不能让客户把整台机器换了吧?

去年有个客户要加新的机械臂接口,供应商给的SDK只有VS2010和VS2015的预编译库,王哥工作室新来的毕业生不信邪,非要用VS2022编译改,折腾了三天,程序一连接机械臂就闪退,各种链接错误、内存泄漏改不完,最后还是王哥打开自己用了8年的VS2015,新建项目导入SDK,10分钟就编译通过,一天测试完直接上线,到现在快一年了没出任何问题。

“我换新版干嘛?出了问题客户工厂停工一天,损失几十万我赔得起吗?”王哥的话我印象特别深,这不是老开发者守旧,是吃过亏之后明白:对工业领域的开发来说,稳定比什么都重要,而VS2015就是能给他们这份稳定的工具。

诞生近十年,VS2015为什么还没被淘汰?

很多年轻开发者可能都没见过VS2015,只知道现在有VS Code、VS2022,实际上直到今天,VS2015依然是很多开发者的主力工具,核心原因绕不开三个:

第一个就是无可替代的兼容性,首先是对老系统的兼容,VS2015是最后一个完美支持Windows 7的Visual Studio大版本,从VS2017开始对Win7的支持就bug百出,VS2022直接停止了对Win7的所有支持,而现在国内大量工业调试设备、老版本的工控驱动,都只能跑在Win7上,很多工厂的调试电脑至今还是Win7系统,你根本装不上新版VS,自然只能用VS2015。

对老项目和第三方库的兼容,国内大量传统桌面软件、工控项目、MFC框架的项目,都是2015年之后几年开发的,很多项目依赖的第三方SDK、驱动库,早就停止更新了,供应商都倒闭了,你根本找不到适配新版VS的库,只要项目还在维护,就只能留在VS2015上,我之前接触过一个医疗设备公司的老项目,这个项目是2016年用VS2015写的胎心监护仪的上位机,现在这个型号的监护仪还在生产,厂家根本不敢换IDE,换一次出问题就是医疗事故,谁敢冒这个险?

第二个原因是VS2015本身的完成度足够高,对很多场景来说完全够用,VS2015是微软第一个完整支持C++11标准的Visual Studio,之前的VS2012、VS2013对C++11的支持都残缺不全,VS2015一出直接解决了这个痛点,直到今天,对写C++的开发者来说,VS2015的功能足够满足90%的开发需求,而且它的体积远比新版小得多,完整安装带所有工具包才不到10G,VS2022完整安装要超过50G,很多老电脑、机房的低配机器,跑VS2015流畅得很,跑新版VS开一个项目都要卡五分钟。

Visual Studio 2015 为何老开发者至今舍不得换

第三个原因就是受众基础足够大,现在国内很多高校的C语言、C++教学,还是用VS2015,一来安装包小,资源好找,安装步骤网上一搜全是教程,对初学者友好;二来功能足够初学者用,不会像新版VS那样带一堆没用的功能,把初学者搞晕,我这两年帮过不少新生改C语言作业,十个有八个装新版VS出问题,要么激活失败,要么兼容性报错,最后给他们发个VS2015的安装包,二十分钟装完就能用,从来没出过问题。

VS2015仍活跃,藏着国内软件行业的真实图景

很多人觉得,都2024年了还用十年前的IDE,是落伍的表现,但实际上VS2015的活跃,恰恰反映了国内软件行业最真实的一面,这两年的最新行业动态也印证了这一点。

2024年上半年,工信部发布《中小企业数字化转型指南》,里面特意提到一句话:“推进数字化转型要尊重企业现有系统的延续性,不得强迫企业盲目替换现有系统,搞运动式升级。”这句话戳中了很多中小企业的痛点,很多中小企业的核心业务系统,就是十年前用VS2015开发的,运行稳定,能满足需求,换一套新系统少则几十万多则几百万,对本来利润就不高的中小企业来说,完全是不必要的负担,能在原来的基础上改,为什么要推倒重来?

GitHub 2024年发布的全球开发者调查报告也显示,Windows平台开发者中,还有超过8%的人依然在使用VS2015及更早的版本,其中超过70%的使用者,都来自工业控制、医疗设备、传统桌面软件这些实体经济领域,互联网行业的开发者反而很少用,这个数据很有意思,我们平时在掘金、知乎这些技术社区看到的,都是讨论最新的AI框架、最新的IDE,好像所有人都在用最新的工具,但实际上,还有大量的开发者在看不见的地方,维护着支撑整个实体经济运转的老项目,他们很少在网上发声,所以他们的需求也很少被看见,VS2015就是满足他们需求的工具。

还有一个很多人不知道的点:微软对VS2015的扩展支持会持续到2025年10月,也就是说直到明年年底,VS2015还能收到微软的安全补丁,根本不存在大家担心的“旧软件全是漏洞不能用”的问题,对大部分内网开发的场景来说,VS2015的安全性完全足够。

工具不分新旧,好用才是第一标准

聊了这么多,我也说说我自己的观点:现在整个科技圈都弥漫着一种“追新崇拜”,什么都要最新的,框架要最新的,IDE要最新的,手机要最新的,好像不用最新的就是落伍,就是技术不行,这种焦虑完全是没必要的,工具的本质是解决问题,不是用来炫耀的,能解决你的问题,就是好工具,和它发布了多少年没关系。

我自己之前也犯过追新的错,前年我接手维护一个老的MFC项目,原来就是VS2015写的,我觉得我要用新版IDE显得专业,非要把项目升级到VS2022,结果折腾了整整一个星期,改了无数兼容问题,最后还是有个动态链接库的问题解决不了,没办法只能回到VS2015,半天就改完需求上线了,从那之后我就明白,适合的才是最好的,没必要为了追新折腾自己。

当然我不是说大家都要用旧工具,如果你做新的项目,用新版VS当然没问题,新版的AI补全、更智能的语法提示,确实能提高开发效率,但是完全没必要看不起用旧工具的人,更没必要强迫所有人都换新版,很多人说旧工具会被淘汰,其实淘汰工具的从来不是时间,是需求,只要还有人需要VS2015,只要它还能解决问题,它就会一直存在下去。

现在回头看,VS2015诞生的时候,刚好是中国移动互联网爆发,传统制造业开始升级的年份,无数国内开发者用它写出了第一个Windows程序,写出了支撑工厂运转的控制系统,写出了高校实验室的科研项目,它见证了中国软件行业的一段发展历程,现在它还在很多看不见的角落里,继续发挥着自己的作用,这就足够了,对很多老开发者来说,VS2015不止是一个开发工具,更是陪了自己快十年的老伙计,哪能说换就换呢?