为什么程序员应该使用Windows 10

这篇文章不会说明Windows相较于Linux和macOS对程序员的优势所在,它们三者之间各有优势,本文只想强调相较于之前的Windows版本,程序员更应该使用Windows 10,或许标题应该叫做”为什么程序员应该升级为Windows 10“更为贴切一点。

版本

微软曾经宣布Windows 10将会成为最后一版的Windows,这也意味着之后的Windows将是基于Windows10的改进和更新。直到本文写作之时,已经历过几个重要的Windows 10更新,如下:

  1. 2015年7月:Windows 10发布,代号Threshold 1,版本1507
  2. 2015年11月:代号Threshold 2,秋季更新,版本1511
  3. 2016年8月:代号Redstone 1,周年更新,版本1607
  4. 2017年4月:代号Redstone 2,创意者更新,版本1703
  5. 2017年10月:代号Redstone 3,秋季创意者更新,版本1709
  6. 2018年4月:代号Redstone 4,春季创意者更新,版本1803

每一个重要的版本更新都会引入许多新的功能,比如在创意者更新中加入了游戏模式Windows Defender安全中心等,秋季创意者更新中引入了微软Fluent Design体系等,春季创意者更新中增加了时间线就近共享等功能。要了解自己的Windows版本可以在运行窗口中输入winver查看。

设计

设计风格这种东西说起来是很主观的问题,不同的人有不同的审美,就我个人而言比较喜欢Windows 10的设计风格。自从Windows Vista开始,微软就采用了Aero设计风格,最显著的特点就是毛玻璃效果。而从Windows 8开始,微软放弃了Aero,转而改用Metro UI设计,其最大的特点是多方块的堆砌组合,背后的设计主题则是直觉、易懂、现代,其本质是为了突出内容,这种设计风格非常适合于触摸屏,但微软将开始菜单全面更改为多方块堆砌的Metro UI设计,难免让许多人倍感不适。所有的这一切在Windows 10中得到了完美的诠释,1709版所引入的Fluent Design借鉴了Aero中的毛玻璃效果,官方称其为亚克力效果,亚克力效果和毛玻璃效果的区别在于亚克力效果是单纯的模糊,而毛玻璃效果是有光泽的;其次开始菜单也实现了原始效果与Metro UI的完美融合,在我看来,Fluent Design是微软多年来各种设计风格的全新阐释。

PowerShell

众所周知,在Windows 7中就能看到PowerShell的影子,但是,Windows 10中内置了PowerShell 5.0版本,这个版本的PowerShell添加了PowerShellGet功能,通过它可以很方便的在PowerShell Gallery上下载第三方模块等。

WSL

熟悉Windows 10 Mobile的人可能会知道,在Build 2015上微软宣布了一个Astoria项目,该项目的目的是允许Android应用运行在Windows 10 Mobile上,希望以此缓解Windows 10 Mobile上应用匮乏的现象,不幸的是仅到2016年,微软就宣布放弃Astoria项目,但是,没过多久,WSL便起源于此项目,WSL即Windows Subsystem for Linux(适用于Linux的Windows子系统),这是一个为在Windows 10上能够原生运行Linux二进制可执行文件的兼容层,利用WSL我们可以在Windows上安装Debian、Kali、Ubuntu等子系统,这极大的方便了跨平台的程序开发。注意,WSL既不是双系统,也不是虚拟机,传统意义上的双系统即某个时刻只能运行一种操作系统,显然WSL用子系统来描述更为恰当,其次它比虚拟机更加轻量快速,因为它不用像虚拟机那样虚拟出底层硬件,它是直接基于NT内核的。自从1607版开始,微软就已经内置了WSL Beta版功能,到1709版已更新为正式版。至此,WSL已经能够运行绝大部分的Linux应用,但GUI程序并不支持,不过这可以通过X Window系统来缓解。值得注意的是,在WSL环境中我们依然可以运行Windows中的可执行程序,这并不需要依赖Wine等第三方程序。

OpenSSH

早在1709版,Windows的可选功能中就已经内置了OpenSSH的Beta版客户端和服务器程序,用户只要添加相关功能即可启用SSH,而到了1803版,Beta版已经升级为正式版,并且OpenSSH客户端已经内置到了Windows中,用户可以直接使用,服务器程序仍在可选功能中,需要可以自行启用。相关程序被安装在C:\Windows\System32\OpenSSH下,有了内置OpenSSH的支持,连接Linux服务器变得十分方便,不用再安装Putty、XShell等第三方程序,即可在命令行下使用ssh、scp、sftp等命令。

记事本

Windows中的记事本向来功能简陋,其编码和换行问题一直影响着跨平台开发,以至于我们不得不选择第三方的文本编辑软件,类似的有Notepad++、Sublime Text等。众所周知,在Windows中,每行结尾是回车换行,即\r\n;在Linux中,每行结尾是换行,即\n;在macOS中,每行结尾是回车,即\r。这就导致了一个问题,即Linux/macOS中的文件在Windows记事本中打开的话,所有文字会变成一行;而Windows中的文件在Linux/macOS中打开的话,每行结尾就会多出一个^M符号。在Windows 10中,针对记事本这个古老的程序做了一些改进,即让其采用Linux中的行结尾方式,这使得我们在阅读Linux中的文件时不用再借助第三方的程序来修改行结尾的显示方式。

文件夹名称

众所周知,在Linux中,文件和文件夹名称是区分大小写的,macOS默认不区分大小写,但可以配置成区分,而在Windows中向来都是不区分的。自从1803版更新,Windows 10加入了一个新的特性,可以让文件夹名称区分大小写。在管理员模式的PowerShell中输入fsutil.exe file SetCaseSensitiveInfo C:\Users\howie\GitDemoenable命令即可开启C:\Users\howie\GitDemo下文件夹名称区分大小写的功能,如果要关闭,只需把enable改为disable即可。注意,以上命令的成功执行还需要电脑安装有WSL,并且所在分区为NTFS格式才行。

UWP

Windows 10引入的最大更新就是UWP,即Universal Windows Platform(通用Windows平台),通过它我们可以编写一套代码即可在多个Windows平台上运行,极大的简化了跨Windows平台应用程序的开发难度。开发的UWP应用可以直接上传至微软商店,同样在Windows 10的微软商店中也可以下载到需要的UWP应用,而这在Windows 8中是不存在的。



发表评论

电子邮件地址不会被公开。 必填项已用*标注