市场研究和分析团队根据开发人员估算模型得出的最佳估计显示,当今世界上有大约 520 万专业 Java 开发人员,他们将 Java 作为主要语言。但是,如果我们将主要使用其他编程语言但同时也做一些 Java 工作的专业开发人员也包含在内的话,这个数字可能 接近 680 万。
Java 在前 6 个国家如此流行的原因可能包括 Java 是免费使用的、政府支持和开源。对于中国、西班牙 和 巴西 尤其是这样。它是在 中国和印度 进行 Android 移动开发的基础,并且雇佣海外人员用 Java 开发手机应用程序非常普遍,这可能是 印度 使用量达到峰值的原因。
根据 2020 年开发者生态系统状况调查,有超过三分之一的专业开发人员将 Java 用作主要语言,而 Java 在专业开发人员当中仍然是仅次于 JavaScript 的第二大主要语言。
Java8仍然是最受欢迎版本,Java11是Java9引入一些重大架构变更后的一个LTS长期支持版本,下一个可能是Java17。
Spring Cloud 2020.0.0
版本正式发布。2020.0.0 是第一个使用新版本命名方案的发命名的 Spring Cloud 发行版本,这次发布全面抛弃了 Netflix 技术栈,并且是一个长期维护的主要版本。Spring Cloud 遵循 Pivotal OSS support policy 协议对主要版本提供三年的支持。此外,在 Spring Cloud 的主要或次要版本发布后,若存在严重的 bug 和安全问题,就会再维护一段时间(6-12 个月不等)。参考以下表格:
Spring Cloud 一直以来把 Netflix OSS
套件作为其官方默认的一站式解决方案,那时的 Netflix OSS 套件恨不得可以跟 Spring Cloud 划等号。而 Netflix 公司在 2018 年前后宣布其核心组件 Hystrix、Ribbon、Zuul、Archaius 等均进入维护状态。
时至今日,Spring Cloud 2020.0 正式发布,在这个主要版本里,按既定计划终于对 spring-cloud-netflix
动刀了。
Spring Cloud 2020 构建在 Spring Boot 2.4 之上,拥有更强的配置文件处理机制可以非常好的适配云原生 (例如可以直接应用 kubernetes 的 configMap )配置;内置 Docker 镜像构建和分层分析优化能力。
如果团队正在使用 kubernetes,那么 spring-cloud-kubernetes
也将是 Netflix 的不错替代方案。
近几年开源社区发展很快,国内外很多大都公司都在拥抱开源。因为技术开源所以更新迭代更快,像小米11刚发布,内核源码就开源了。
由于 Android 系统是基于 Linux 的,而 Linux 采用 GPLv2 授权,根据 GPL 协议的要求,派生作品均需要发布源代码。小米从 2018 年开始把新机型的内核源码开源,开源时间通常为新机发布后的三个月内。从 2019 年的小米 9 开始,小米将开源时间改为新机上市同时开源。而这次的小米 11 在产品正式开卖之前就已经把内核源码更新到了小米内核仓库中。
根据之前公开的内容,小米 11 的预装系统是 MIUI 12。小米方面表示,随着内核源代码的公开,相信会有大量的开发者和刷机玩家来探索这套硬件系统,也可以帮助官方更好地开发小米 11 的潜力。