从技术角度解释为什么微软没有使用Windows 9_最新动态_新闻资讯_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 新闻资讯 > 最新动态 > 从技术角度解释为什么微软没有使用Windows 9

从技术角度解释为什么微软没有使用Windows 9

 2014/10/4 1:16:06    程序员俱乐部  我要评论(0)
  • 摘要:众所周知,微软对Windows的命名规则一直很诡异,从XP,Vista,7到8和8.1一直到最新的Windows10。那么从技术角度考虑,为什么微软跳过了9而直接使用10呢?据微软内部开发人员流传,是为前操作系统的版本号考虑。实例代码如下if(version.StartsWith("Windows9")){/*Windows95,Windows98*/}else{}当软件开发人员使用:“如果版本号开始于xxx,就执行yyy"时
  • 标签:Windows 微软 使用 什么 为什么 技术

  众所周知,微软对 Windows 的命名规则一直很诡异,从 XP,Vista,7 到 8 和 8.1 一直到最新的 Windows 10。那么从技术角度考虑,为什么微软跳过了 9 而直接使用 10 呢?据微软内部开发人员流传,是为前操作系统的版本号考虑。

  实例代码如下

if ( version.StartsWith ("Windows 9") )

  { /*Windows 95, Windows 98 */

  } else{

  }

  当软件开发人员使用:“ 如果版本号开始于 xxx,就执行 yyy" 时,会出现两种情况的正确判断

  Windows 9

  Windows 9* ( Windows 95 Windows 98 )   95 和 98 也是开头包含 Windows 9 的

  综上所述,在早期测试时,微软发现很多第三方软件开发商使用了如上的方法去判断操作系统,这样会造成对当在 Windows 95 和 Windows 98 上运行使用上述代码的程序时,程序会误判为 WIndows "9"。

  所以微软开发者为了避免出现这种不稳定因素,只好命名为 Windows 10 。

  觉得怎么还会这么写代码的?甲骨文还真的在 openJDK 里这么写了。http://cr.openjdk.java.net/~simonis/webrevs/8024854.v3/test/java/lang/ProcessBuilder/Basic.java.sdiff.html

  第 602 行

  同样的写法竟然还有大名鼎鼎的 jEdit 编辑器!‍

  https://searchcode.com/codesearch/view/1393856/

  第 48 行

发表评论
用户名: 匿名