微软宣布加入 OpenJDK 项目(https://www.oschina.net/news/111036/microsoft-to-participate-in-openidk),这两天在微信公众号里面有几种论调:

上面这些都是Javaer的观点,在CSharper 对这件事情的反应更奇怪了:

在Csharper圈子里一直弥漫着一种对Java的爱恨之情,在几年前Spring Cloud在微服务领域独霸天下,一起很期待微软能够推出压倒Spring Cloud一样的框架,殊不知我们已经迈入云原生时代,还有前段时间微软联合阿里推出的Dapr (https://mp.weixin.qq.com/s/se7fd5fp719q-dzDFmNU8A)使用go语言构建的,很多Csharper 还是一样的论调。

无论是Javaer 还是Csharper,我们都不要把自己贴上各个语言的工程师,从2014年开始我们已经迈入云原生应用开发时代,我们在工作中不仅仅是使用一种语言工作,就拿我公司的技术栈来说,主要使用C#,还是需要非常多其他语言辅助,前端使用 Vue/Js/Blazor ,如果从语言角度来说是(Javascript/C#),后端使用.NET Core, 从语言角度来说是C#,运行平台上用的kubernetes/Istio/Docker 从语言角度来说用的是go,还有ElasticSearch 用的就是Java了,机器学习/AI 用的ML.NET/SciSharp, 从语言角度来说用的是C#/Python,移动开发使用Xamarin/Ios/Android,从语言角度来说用的是C#/Java/Objective-C/Swift。

我们今天还是回归到微软加入OpenJDK这个话题,其实微软在开源领域的有大动作一直不断,从2012年4月份微软成立开放技术子公司,专注参与开源项目以及和开源社区的合作开始,到Build 2014大会上宣布一系列开源项目以及成立.NET 基金会,全力支持.NET平台上的开源研发与合作,微软一直在用实际行动践行开源。2014年微软向 OpenJDK贡献了关于 Windows上TCP回环快捷路径机制方面的优化代码是微软第一次为OpenJDK社区贡献代码,也是第一次为Java做出贡献。 2016年收购Xamarin,Xamarin开发Android 需要JDK,在Oracle JDK没有收费之前他们也用的是Oracle JDK,后来他们自己维护了一个供Xamarin开发Android 使用的OpenJDK,当然更重要的是Microsoft Azure上面的客户需要Java运行时,微软的各大产品需要支持Java。这些都是微软2014年开始在CEO 纳德拉的带领下进行自我刷新的必然结果,也是微软当今万亿市值的最好回报。 对于在.NET 社区的Csharper们更是需要向微软学习,进行自我刷新,赶上时代的脉搏,我曾经写过一篇文章 刷新:重新发现.NET与未来,欢迎你看看。2019.11.9 在上海筹办的 中国.NET 开发者峰会 也是我们社区进行自我刷新的一个表现,这次大会完全由社区筹办,得到社区的积极支持,各项筹备进展比预想的顺利,大会议题很丰富,还有很多议题没有机会分享。 这里也非常感谢微软Azure 对我们活动的支持以及社区里各位对活动的支持,有很多同学都是自掏腰包买票来支持大会,他们从远离上海的西南、西北一起来上海聚一聚,我们非常期待这次大会的成功举办。这次大会的时间上和China International Import Expo时间上相重合,有空也可以到大会场去走走。

中国.NET 开发者峰会的举办是我们国内.NET主动向开源社区的重大举措,有利于扩大.NET Core的推广、促进企业技术栈的平衡发展,有利于改善技术供给结构、引导国内企业走向云原生的创新驱动发展之路,有利于帮助使用.NET的企业参与技术开源化、推动开放型技术社区发展。正如国家主席习主席在2018年China International Import Expo开幕致辞中说的,“面对世界经济格局的深刻变化,各国都应该拿出更大勇气,积极推动开放合作,实现共同发展”。中国.NET 开发者峰会,正是这样一个推动开放合作,实现共同发展的平台。

微软宣布加入 OpenJDK,看网上各派的热闹的更多相关文章

  1. [转帖]微软宣布加入 OpenJDK 项目

    微软宣布加入 OpenJDK 项目 https://news.cnblogs.com/n/646003/ 近日,微软的 Bruno Borges 在 OpenJDK 邮件列表中发布了一条消息,内容包含 ...

  2. 微软宣布加入 OpenJDK,打不过就改变 Java 未来!

    近日,微软的 Bruno Borges 在 OpenJDK 邮件列表中发布了一条消息,内容包含接下来发生的事情以及微软如何开始将其团队整合到 OpenJDK 社区. 在邮件中,Bruno Borges ...

  3. 微软宣布加入 OpenJDK 项目

    近日,微软的 Bruno Borges 在 OpenJDK 邮件列表中发布了一条消息,内容包含接下来发生的事情以及微软如何开始将其团队整合到 OpenJDK 社区.在邮件中,Bruno Borges ...

  4. 网上查了点关于windows注册表的知识,发现基本名词没理解好,于是整理这篇笔记(可能个别地方不准确,先这么理解吧),有了这个理解,再去看网上的文章,就差不读了

    打开注册表编辑器,左边窗格中显示的是“注册表项”,右边窗格中显示的是“注册表项的项值” 子项:子项是相对父项而言的,在某一个项(父项)下面出现的项(子项) 值项:一个项可以有一个或多个项值,当前被使用 ...

  5. 转-OpenJDK源码阅读导航跟编译

    OpenJDK源码阅读导航 OpenJDK源码阅读导航 博客分类: Virtual Machine HotSpot VM Java OpenJDK openjdk 这是链接帖.主体内容都在各链接中.  ...

  6. 给学习IT、编程者的看

    Preface: 我始终认为,对一个初学者来说,IT界的技术风潮...... Content: 我始终认为,对一个初学者来说,IT界的技术风潮是不可以追赶的,而且也没有能力去追赶.我时常看见自己的DD ...

  7. 经典面试题(二)附答案 算法+数据结构+代码 微软Microsoft、谷歌Google、百度、腾讯

    1.正整数序列Q中的每个元素都至少能被正整数a和b中的一个整除,现给定a和b,需要计算出Q中的前几项, 例如,当a=3,b=5,N=6时,序列为3,5,6,9,10,12 (1).设计一个函数void ...

  8. openjdk源码阅读导航

    转自:http://rednaxelafx.iteye.com/blog/1549577 这是链接帖.主体内容都在各链接中. 怕放草稿箱里过会儿又坑掉了,总之先发出来再说…回头再慢慢补充内容. 先把I ...

  9. 看过的bootstrap书籍(附下载地址)

    http://yun.baidu.com/share/link?shareid=3820784617&uk=1008683945 以下书籍下载地址. <BootStrap入门教程> ...

随机推荐

  1. Ubuntu su命令 Authentication failure的解决办法

    重新设置root的密码: $ sudo passwd root Enter new UNIX password: Retype new UNIX password: passwd: password ...

  2. Python攻破淘宝网各类反爬手段,采集淘宝网ZDB(女用)的销量!

    声明: 由于某些原因,我这里会用手机代替,其实是一样的! 环境: windows python3.6.5 模块: time selenium re 环境与模块介绍完毕后,就可以来实行我们的操作了. 第 ...

  3. pikachu-数字型注入(post)#手工注入

    1, 因为是post型,所以需要抓取数据包 2, 测试结果为数字型注入 提交恒等的语句可以查询到所有的数据信息 3, 使用UNION联合查询法 判断字段数,测试为2个字段时没有报错,所以可以判断字段数 ...

  4. 夯实Java基础系列13:深入理解Java中的泛型

    目录 泛型概述 一个栗子 特性 泛型的使用方式 泛型类 泛型接口 泛型通配符 泛型方法 泛型方法的基本用法 类中的泛型方法 泛型方法与可变参数 静态方法与泛型 泛型方法总结 泛型上下边界 泛型常见面试 ...

  5. js中对于数组的操作

    let myArray=[11,22,33]; console.log('原数组:',myArray); myArray.push(44,55); console.log('用push在数组后面插入元 ...

  6. 夯实Java基础系列23:一文读懂继承、封装、多态的底层实现原理

    本系列文章将整理到我在GitHub上的<Java面试指南>仓库,更多精彩内容请到我的仓库里查看 https://github.com/h2pl/Java-Tutorial 喜欢的话麻烦点下 ...

  7. Java 学习笔记之 线程安全

    线程安全: 线程安全的方法一定是排队运行的. public class SyncObject { synchronized public void methodA() { try { System.o ...

  8. 【原创】go语言学习(二)数据类型、变量量、常量量

    目录 1.标识符.关键字2. 变量量和常量量3. 数据类型4. Go程序基本结构 标识符.关键字 1.标识符是⽤用来表示Go中的变量量名或者函数名,以字⺟母或_开头.后⾯面跟着字⺟母 ._或数字2. ...

  9. GoLang 获取两个时间相差多少小时

    package main import ( "fmt" "time" ) func main() { fmt.Println(getHourDiffer(&qu ...

  10. python编程基础之二十八

    装饰器:说白了就是闭包,但是内部函数调用外部变量调用的是函数, 好处:就是在不用修改原函数代码的前提下给函数增加新的功能 装饰器有两种写法 第一种: #被修饰的函数 def say_hello(nam ...