微软为何要维护开源软件vscode?
微软为什么要维护开源软件Visual Studio Code?说得简单一点就是,VS Code能够做很多Visual Studio不能做的事情。
微软这几年干了几件大事儿,发布并且开源Visual Studio Code,重金收购GitHub代码仓库,上线Linux子系统,强化命令行工具PowerShell,发布Windows原生命令行工具Windows Terminal,发布winget原生包管理工具。你发现这里面的规律了吗?微软这几年做了一大批开发者工具,这些开发者工具都一致指向Linux/MacOS等Unix-Like平台下的开发者。
完全跨平台、强大的扩展功能
VS Code能做很多Visual Studio不方便做的事情,大家也都知道Visual Studio微软的集成开发环境,也是目前全行业最好的集成开发环境。C#在语法上其实比JAVA更加出色,整个.net工具生态也做得非常好,可是就是因为不是开原的,在跟JAVA的竞争中,不具备任何优势。
作为C#标准开发环境,.NET核心开发工具,Visual Studio又想保证Windows平台上的优势,微软不愿意将全功能的Visual Studio移植到Linux和MacOS平台,这样C#为主的.NET体系还是很难在其他平台壮大起来。
Visual Studio Code不存在这种问题,既然是开源软件,微软可以把一些插件和功能放到VS Code上,“开源+跨平台”是非常大的优势。VS Code是真正完全的跨平台,在Windows、Linux、MacOS上都有着出色的体验,因为这玩意儿是开源的,微软自己也开发了很多插件,加上开发者贡献的插件,功能可以变得非常强大。
VS Code能更好地笼络开发者
Linux开源哲学是得到了很多人认可的,很多开发者还是喜欢在Unix/Linux下工作,同时基于FreeBSD发展起来的MacOS,本身也具备非常纯正的Unix血统。
在比较大的互联网企业里面,MacOS办公、Linux开发已经是公开的秘密,美国以Google、Facebook等众多互联网巨头,大多数工程师会用MacOS和Linux,国内的互联网巨头也是MacOS办公为主,本地SSH连接远程Linux开发机开发在腾讯、百度等众多企业中也是非常常见的,可以看到的是MacOS和Linux是使用量非常大。
微软自己也认识到了这一点,愿意用Windows的开发者越来越少。微软先是在应用商店上线了Linux子系统,接着开发了Windows Terminal终端工具,今年微软直接上线了自己的winget包管理工具,要知道拥有着正统Unix血统的MacOS,到现在都还没有一个官方包管理工具,没想到这事儿让微软抢了先。
微软做的这一系列操作,其实都只是为了抢多开发者资源,Windows长期以来都被极客嫌弃,尽管我从来都不认为高手真的会拿自己使用什么操作系统说事儿,但是Unix传下来的很多哲学,确实对于开发工作来说是非常友好的。Visual Studio Code、Windows Terminal、winget都是微软拥抱Linux开发者的方式,用这样的方式来吸引更多习惯了在Linux下工作的开发者,明确告诉你的你能的我也能。