公众号「古时的风筝」,专注于后端技术,尤其是 Java 及周边生态。
个人博客:www.moonkite.cn
大家好,我是风筝
经常看到有人调侃:Visual Studio 是宇宙第一强大 IDE。如果不是做过 C++、C# 开发的人可能也就是看个热闹,但我可是亲身体验过5、6年的。

注意呦,Visual Studio 和 Visual Studio Code 可不是一个东西。
这两天,看到微软发的公告,将于2024年8月31日停止支持 Mac 版的Visual Studio,让我又想起了当初上学时初学 C# 的大学时光,以及毕业后莽撞又充满希望的青葱岁月。
初次接触 Visual Studio
上学的时候不知道怎么鬼迷心窍的就看上了 C#,就开始买书自学。学 C# 的话,开发工具必选 Visual Studio 啊。阴差阳错的,我这还没出道,就用上了宇宙第一强大 IDE,何德何能啊。
由于当时的笔记本配置太低,只能用 Visual Studio 2008 的版本。就这 2008 的版本,安装包就将近 4 个G,你说咱不强大谁强大。

当时写的第一个小程序是铃声截取器,就是选择一个音频格式的文件,然后选择一个起始点,一个终点,将这中间的部分截取出来,最后选择一个目标位置重新保存成音频格式,然后这个音频片段就可以用来设置铃声了。这是一个 GUI 程序,因为 C# 写Windows GUI 那觉得是最厉害的,没有之一。
主打的就是一个胆子大,当时连语法都没掌握全,什么是文件流、文件流怎么读取、怎么更是一无所知,就这样开始边学边写,最后还真的搞出来了。
之后,我再学习新的东西,也是用这种方法。假设你现在的能力水平是1,那你就选一个难度为 5 的目标,边学边做,最后你的水平可能会迅速的到达6。
当时写的代码一时不知道跑哪儿去了,应该是在老家的一个硬盘的某个角落里放着,改天回家找一找。
在写这篇文章的时候,搜了一下 Visual Studio 2008 的界面,亲切感铺面而来。

初入职场的青葱岁月
毕业之后呢,自然而然的就找了 C# 开发的工作,公司是做文档管理和知识库的产品,基于 SharePoint 产品做二次开发,底层是 .NET 和 C#。
我是以实习生身份进去的,直接进到了产品部。公司有将近100人,几乎80%是研发,除了产品部,还有项目部。那可是第一次工作呀,虽然不是大公司,但也是以技术主导的,在这里,切切实实的感受到了那么多人一起写代码、一起讨论问题的快乐和充实。
当时的开发机应该是8G内存的台式机,Windows Server 的操作系统,比起我的破笔记本那简直不要太好。团队统一使用 Visual Studio 2010的版本。
Visual Studio 支持的开发语言有 C++、C#、F#、Python、Nodejs等,支持的项目Web 项目、GUI 项目,GUI 项目还分WinForm、WPF,之前还有 Silverlight(一种能够实现非常炫酷界面的技术)。
我们主要用 C#,项目类型是 Web 类型,也会做一些 GUI 程序,用来辅助安装和配置的。还有两个同事用 C++,扩展一个客户端聊天工具的功能。
为什么说 Visual Studio 强大呢?后来我开发做 Java 了,Java 的开发工具 IDEA 是2013年才出来的,之前都是用 Eclipse。在2013、14年的时候 Visual Studio 的开发体验就非常好了。而且,如果是团队的话,可以部署 Team Foundation Server,这是一个团队协作的服务端,然后团队成员在 Visual Studio 中连接,之后就可以在 Visual Studio 中进行开发、代码管理、任务分发、bug跟踪,整个团队中的产品人员、开发人员、测试人员都可以用 Visual Studio 完成整个项目的全流程。
还记得刚去公司前两天,项目经理(产品部有三个领导,一个是产品总监,一个是技术经理,一个是项目经理)给我分的任务就是改 bug,他说一边改bug一边熟悉代码。刚开始都是很简单的bug,后来分一些难一点的。仍然记得有一次周例会上,他说:小胡(我姓胡)挺厉害啊,第一天分两个bug,能改完。第二天分4个,也能改完。再后来分 6 个还能改完。
虽然只是一次简单的夸奖,但是却给了第一次参与团队开发的我极大的自信心。
在以后的日子里,技术经理让我见识到,原来做技术的可以这么厉害,好像没有他不懂的领域,也没有不能解决的问题,而且还很平易近人。虽然年龄相差几岁,但是完全能和我们打成一片。在他的带领下(当然也有我自己的努力),让我意识到,做开发要不断的学习,技术好才是硬道理。
离开 Visual Studio
做了3年多C#后,我还是决定转到 Python 或 Java,衡量再三,最终选择了 Java。刚开始进入 Java 团队,用的开发工具还是 Eclipse。
由俭入奢易,由奢入俭难。用了 Visual Studio,再用 Eclipse ,真的感觉不是一般的难用。还好后来有了 IDEA。
转到了 Java,也就不怎么用 Visual Studio 了,不过我的电脑上还是会装上它,虽然几乎不再打开了。
但是老伙计毕竟是老伙计,偶尔还是会做个客户端小工具。比如我们有个需求要上传大批量的文件,要给公司不同部门的人用。界面很简单,就是批量选择、显示上传进度、日志回传,但是速度要快。
衡量之后,决定不用web做,做一个 GUI ,谁用就给谁发安装包。
这不就到了我的专业了吗,打开Windows系统下的 Visual Studio , 咔咔拖几个控件,然后写 C# 代码,一下午写好了,支持多线程和进度实时更新(当时还没有 ChatGPT,要是有的话,会更快)。
我去年还在 Mac 上装了 Visual Studio for Mac,安装包也很大,打算用 .NET MAUI 做跨平台客户端来着,后来发现没有我想象的好用。
而且在 Mac 上开发 C# 确实没有必要,然后就给卸载了,主要是太占地方了。这可能也是微软放弃 Mac 版的原因吧,投入的成本很大,但是用的人又不多。
现在再提起 Visual Studio ,不是它的界面和用法,也不是 C# 这门语言。更多的是想起使用它的那段时光,那些同事。那时的同事很多都成了朋友,到现在仍在联系。后来的同事也很多,很少数离开了还有联系的。
什么时候再有适合的场景,还是会拿出 Visual Studio ,毕竟是宇宙第一强大 IDE 、老伙计,靠谱。