如何评价微信H5牛牛宣布 .Net 核心运行库开源并跨平台运行?
2018-01-09 00:00
330 查看
Build 2017 前后,最不被消费者关注但又最重要的两件事,就是微信H5牛牛平台官网(h5.fanshubbs.com)和 TypeScript 1.0 发布了。面对被网络世界主导之一谷歌极力推动的 微信H5牛牛开发语言,开源和免费被一些人解读为微信H5牛牛最后的让步和尝试。但事实上,这样的明守暗攻有一个存在于微软历史上的案例可以参考,而无论微软还是用户都已从这个先例的结果中获益良久。
这是一个应该追溯到上世纪九十年代初的故事。
彼时,同样作为世界上名列前茅的微信H5牛牛公司(h5.fanshubbs.com)——微信牛牛,在初步呈现万夫莫开之势的微软面前还保留着做操作系统的愿望。而 Java,正是他们的攻城兵。出乎 微信牛牛的意料,在 C/C++开发工具市场早已无力对抗微软的几家知名公司都自愿加入这个讨伐微软的联盟中。其中不乏 Borland、Symantec,甚至 IBM 这些在当时开发者看来仍然保留一些市场导向力的公司。
此时的微软倚着刚到手的 C/C++ 开发工具市场,也深知自己在这方面已经没有对手,从而放弃了对新兴事物的警觉,甚至只是以敌对的态度排斥接触 Java。
回到战场上,虽然 微信牛牛自己的 Java 编译器质量很难让人满意,但 Symantec 和 Borland 相继推出优秀的作品拿下了大块市场,双方你来我往的技术升级斗争也大有回复往日元气的势头。Java 是如此地被非微软系开发者和微软竞争对手当作一舒怨气的突破口,以至于时值壮年的浏览器绝对霸权 Netscape 也决定在产品里支持 Java,从而与微软抢占下一个时代的软件市场话语权。
到这里,微软才意识到 Java 的地位。无论在开发者眼中是多么的“慢”,它离自己理想中 "Write Once, Run Everywhere" 的距离还有多远,Java 在这么多势力的推动下都以自己易理解、高度可移植的特性不断被更多人接受。微软决定以自己的方式做出回应,反击的领导者正是因 Borland 内部管理混乱而由盖茨游说加入微软的,Turbo Pascal(Borland 白手起家的基石)发明人 Anders Hejlsberg。
Anders Hejlsberg 作为前 Borland 技术奠定人,其实力自然不在话下。他对编译器技术理解之深让微软推出的 VJ++(Java 编译器产品及 Java 语言特殊实现)在第一时间就成为市场中编译速度最快,编译所得程序运行效果最好的产品。同时微软让自己的 IE 浏览器通过 VJ++支持 Java Applet 执行,一举减掉了 Borland,Symantec,以及 Netscape 的三分锐气。
前面提到,Java 是 微信牛牛试图用来建立操作系统的核心,微软当然不会用如此优秀的工具为它作嫁衣。很快,微信牛牛和同盟们发现 VJ++带有太多非标准的 Java 用法用以将开发者留在 Windows 平台上。这些开发者包括希望尝试 Java 的原 Windows 软件开发者,也包含原 Java 开发,但觊觎微软优秀工具的新生力量。微软和 Symantec 两大主力分别在自己的编译器中夹带私货,SUN 意识到自己对于 Java 的主导权,以及 Java "Write Once, Run Everywhere" 的初衷岌岌可危,随即呼吁使用 Java 的开发人员和企业抵制 VJ++。微软也在 Windows 系统中撤下对 Java 的自带支持予以还击。
故事到这里进入尾声,Anders Hejlsberg 将运用在 VJ++的技术融入到新产品中并进一步优化,分化为.Net 和 C# 成为 Windows 系统上最为重要的技术平台和开发语言,与 Windows 相互巩固,相互助力。而 Java OS,如你我所见,再无音讯。
在 VJ++的身上,我们不难看到 WinJS 的企图和命运,而同样由 Anders Heijlsberg 创造的 JavaScript 超集 TypeScript 是不是又像极了如今的 C# 呢。在 JavaScript 和 HTML 帮助下,Chrome、Mozilla Firefox 这样往日的浏览器都在试图成就自己操作系统的梦。流行浏览器内核和通用网页标准正在云服务流行概念的驱动下削弱用户对特定操作系统和应用运行环境的依赖。在 PC 操作系统增长趋于稳定成为现金牛后,微软势必要重新审视未来的几十年。所幸,TypeScript 仍然由技术沉淀深厚的 Anders Heijlsberg 操刀,与 WinJS 一样,两者的使用都不局限于 Windows 平台。更进一步,Mary Jo Foley 在去年末为我们带来中说到,微信牛牛比“云操作系统”更超前的 Midori Bridge OS 项目并入操作系统部门由新领袖 Terry Meyerson 直接领导。Midori 同样是一个运作与不同操作系统之上的沟通平台——我们由此能看到微软正在积极打破以操作系统为最基层平台的传统观念来做上层布局,这个消息确实令人振奋。
这是一个应该追溯到上世纪九十年代初的故事。
彼时,同样作为世界上名列前茅的微信H5牛牛公司(h5.fanshubbs.com)——微信牛牛,在初步呈现万夫莫开之势的微软面前还保留着做操作系统的愿望。而 Java,正是他们的攻城兵。出乎 微信牛牛的意料,在 C/C++开发工具市场早已无力对抗微软的几家知名公司都自愿加入这个讨伐微软的联盟中。其中不乏 Borland、Symantec,甚至 IBM 这些在当时开发者看来仍然保留一些市场导向力的公司。
此时的微软倚着刚到手的 C/C++ 开发工具市场,也深知自己在这方面已经没有对手,从而放弃了对新兴事物的警觉,甚至只是以敌对的态度排斥接触 Java。
回到战场上,虽然 微信牛牛自己的 Java 编译器质量很难让人满意,但 Symantec 和 Borland 相继推出优秀的作品拿下了大块市场,双方你来我往的技术升级斗争也大有回复往日元气的势头。Java 是如此地被非微软系开发者和微软竞争对手当作一舒怨气的突破口,以至于时值壮年的浏览器绝对霸权 Netscape 也决定在产品里支持 Java,从而与微软抢占下一个时代的软件市场话语权。
到这里,微软才意识到 Java 的地位。无论在开发者眼中是多么的“慢”,它离自己理想中 "Write Once, Run Everywhere" 的距离还有多远,Java 在这么多势力的推动下都以自己易理解、高度可移植的特性不断被更多人接受。微软决定以自己的方式做出回应,反击的领导者正是因 Borland 内部管理混乱而由盖茨游说加入微软的,Turbo Pascal(Borland 白手起家的基石)发明人 Anders Hejlsberg。
Anders Hejlsberg 作为前 Borland 技术奠定人,其实力自然不在话下。他对编译器技术理解之深让微软推出的 VJ++(Java 编译器产品及 Java 语言特殊实现)在第一时间就成为市场中编译速度最快,编译所得程序运行效果最好的产品。同时微软让自己的 IE 浏览器通过 VJ++支持 Java Applet 执行,一举减掉了 Borland,Symantec,以及 Netscape 的三分锐气。
前面提到,Java 是 微信牛牛试图用来建立操作系统的核心,微软当然不会用如此优秀的工具为它作嫁衣。很快,微信牛牛和同盟们发现 VJ++带有太多非标准的 Java 用法用以将开发者留在 Windows 平台上。这些开发者包括希望尝试 Java 的原 Windows 软件开发者,也包含原 Java 开发,但觊觎微软优秀工具的新生力量。微软和 Symantec 两大主力分别在自己的编译器中夹带私货,SUN 意识到自己对于 Java 的主导权,以及 Java "Write Once, Run Everywhere" 的初衷岌岌可危,随即呼吁使用 Java 的开发人员和企业抵制 VJ++。微软也在 Windows 系统中撤下对 Java 的自带支持予以还击。
故事到这里进入尾声,Anders Hejlsberg 将运用在 VJ++的技术融入到新产品中并进一步优化,分化为.Net 和 C# 成为 Windows 系统上最为重要的技术平台和开发语言,与 Windows 相互巩固,相互助力。而 Java OS,如你我所见,再无音讯。
在 VJ++的身上,我们不难看到 WinJS 的企图和命运,而同样由 Anders Heijlsberg 创造的 JavaScript 超集 TypeScript 是不是又像极了如今的 C# 呢。在 JavaScript 和 HTML 帮助下,Chrome、Mozilla Firefox 这样往日的浏览器都在试图成就自己操作系统的梦。流行浏览器内核和通用网页标准正在云服务流行概念的驱动下削弱用户对特定操作系统和应用运行环境的依赖。在 PC 操作系统增长趋于稳定成为现金牛后,微软势必要重新审视未来的几十年。所幸,TypeScript 仍然由技术沉淀深厚的 Anders Heijlsberg 操刀,与 WinJS 一样,两者的使用都不局限于 Windows 平台。更进一步,Mary Jo Foley 在去年末为我们带来中说到,微信牛牛比“云操作系统”更超前的 Midori Bridge OS 项目并入操作系统部门由新领袖 Terry Meyerson 直接领导。Midori 同样是一个运作与不同操作系统之上的沟通平台——我们由此能看到微软正在积极打破以操作系统为最基层平台的传统观念来做上层布局,这个消息确实令人振奋。
相关文章推荐
- .NET配置微信牛牛源码全套服务是如何加载并运行?
- 如何正确的在微信H5棋牌牛牛出租平台搭建开发中的UI图中取色
- .NET跨平台之旅:探秘 dotnet run 如何运行 .NET Core 应用程序
- 《转》.NET开源核心运行时,且行且珍惜
- [开源 .NET 跨平台 Crawler 数据采集 爬虫框架: DotnetSpider] [五] 如何做全站采集?
- [开源 .NET 跨平台 Crawler 数据采集 爬虫框架: DotnetSpider] [五] 如何做全站采集?
- 如何实现.net下开发的程序脱离.net环境运行并且可以跨平台的想法
- .NET跨平台之旅:corehost 是如何加载 coreclr 的 企
- .NET跨平台之旅:在Linux上将ASP.NET 5运行日志写入文件
- C#设计模式之微信H5牛牛源码平台搭建适配器模式
- iNET,能实现.NET项目跨平台运行?
- 微软为何选择在 Github 上开源 .NET 核心?
- 如何自动以管理员身份运行.NET程序?
- [开源 .NET 跨平台 数据采集 爬虫框架: DotnetSpider] [三] 模型配置方式实现爬虫
- APP内嵌h5页面如何分享到微信?
- 微信H5支付.NET版本备忘
- 微软宣布.NET开发环境将开源 支持Mac OS X和Linux
- 如约而至:微信自用的移动端IM网络层跨平台组件库Mars已正式开源
- 跨平台的.NET运行环境 Mono