政策逐渐走向拥抱开源的微软又给我们带来了新东西。在纳德拉上台之后,微软就逐渐地拥抱开源,通过开源社区给我们带来了越来越多的「宝贝」,例如他们大名鼎鼎的 .Net Core,知名 JavaScript 超集 TypeScript,以及目前对脚本语言开发者来说简直是神器的 VSCode 等等。
前段时间微软还将全球最大的代码托管平台 GitHub 给收购了,向全球表示自己对开源的认同。
目前微软已经超越了 Facebook 和 Google 成为了 GitHub 贡献第一的公司,微软正在向全世界的开发者开放自己越来越多的技术,并且从开源社区吸收力量完善自己的产品。
以前的微软是十分封闭的,也正是因为这点他们也没少吃苦头,从整个行业的发展趋势来看,选择开放是一条非常好的道路。你可能会奇怪,微软这么大体量的一个公司,为什么要把自己辛辛苦苦做了这么久的东西直接公开呢,就不怕竞争对手做出一些竞品超越自己吗?
答案是,不怕。微软开源的并不是什么自家很核心的东西,他们所开源的要么是公共的、用的人很多的框架,要么是一些小工具,真正核心的东西自然是不能开源的。并不是说微软拥抱开源就意味着他们开始做公益、做慈善了,微软本质上还是一个营利组织,是一个商业公司,他们是需要盈利的。
那么开源能给他们带来什么东西呢?第一个是能给他们带来一批所谓的「信徒」,这对微软的品牌形象来说是一个非常有利的东西。举个例子,VSCode 是当下一款非常优秀的代码编辑器,由于其本身是开源、免费的,所以它受到了大量开发者的青睐,有很多人自发地拥护 VSCode 或拥护微软。对于微软来说,这就是一个品牌形象的提升,同时这也有利于微软接触到自己的用户们,也就是所谓的「更接地气」。
第二个是,微软将一些公共的或者小型的东西开源,实际上是把维护这一些东西的工作扔给了开源社区,这能帮助微软减轻一些负担,同时依赖开源社区的力量来提升这一部分产品的质量,微软实际上并不是没有收益的,选择开源对微软和用户来说实际上是双赢。
最近微软又在 GitHub 上开源了一个新东西 —— Windows 10 自带的计算器。
是的,你没有看错,就是计算器。你可能会纳闷,怎么这个系统自带的小工具微软都开源,需要社区去维护呢?计算器对于微软这样的科技企业来说可以说是非常非常简单的小东西,而且一直以来计算器都没出现什么问题。
然而,事实是,这个计算器远比你想象的要复杂,并不是所有的公司都能做出这样的一款计算器,在保证其精简、小巧的同时,还让它的 UI 足够美观,同时具有面对多种场景的众多功能。
在 Windows 10 的计算器中,微软实际上塞了不少功能,一般人可能只会用到简易,实际上它还包括了各种单位的转换器,功能比较强的科学计算器,以及给程序员专用的、可以同时显示 2、8、10、16 进制、可以进行逻辑运算的程序员计算器。
确实这个计算器里面可能有大多功能你用不上,但是你不可否认它是一个麻雀虽小五脏俱全的东西。
相信有不少程序员都有做过计算器或者相关的东西,要么是用来入门的,即那种功能十分有限、容易出现溢出的错误,要么是用来提升自己的,因为功能较强的计算器往往需要处理各种各样的问题,代码需要覆盖到用户可能做出的各种行为,对不少程序员来说,做一个能够进行一定复杂计算的计算器是一个不小的挑战。
Windows 自带的计算器可并不简单,微软为了保证它在各种情况下能够正常工作还特别为这个计算器设计了一套单元测试代码。
通过这个开源项目,你可以了解到 Windows 自带的这个计算器到底是怎么编写的,如果你是一位正在学习编程的学生,想要通过阅读一些项目的源码来提升自己,那么这个计算器项目会是一个比较不错的选择。
如果你只是一个普通的 Windows 用户,那么你也可以通过这个开源项目参与到这个计算器的开发之中,你可以给微软提一些意见、建议,或者将你使用中遇到的一些问题提交给微软。
这个项目在开源之后受到了非常多开发者和看客的欢迎,在项目下已经有不少的 Issue 和 PR 了,如果你对 Windows 自带的计算器有什么想法,或者想为它贡献代码,你都可以前往这个开源项目。
在 GitHub 中,你只需要搜索「calculator」就能找到这个项目,目前该项目已经有高达 8000 多的 Star 了。