中国这么多 Java 开发者,应该诞生出生态级应用开发框架


1、必须要有,不然就永远不会有

应用开发框架,虽然没有芯片、操作系统、数据库、编程语言这些重要。但是最终呈现在用户面前的,总是有软件部分。而软件系统开发,一般都需要应用开发框架,它是软件系统的基础性部件之一。

很多很多软件系统都会有 Java 开发的部分,尤其是政府部门的软件系统大量的使用了 Java。市场非常的大,我们有很多的 Java 程序员,更有很多技术大能,也为很多全球级的项目供献过力量。理所应该当也要有自己的“生态级”应用开发框架,不是说卡不卡脖子的问题,而是不好意思没有啊!外面可是隔三差五的出语言。

国内现在有很多好的“功能性能开发框架”,也有很多好的“快速开发框架”,还有很多好的“后台脚手架”。但是没有像 Spring 这样生态级的框架出现。个人觉得,这应该是有问题的、是可惜的、是遗憾的。

想要搞个 Java 生态级的应用开发框架。一般是以年为开发时间单位的(需要漫长的时间打磨),一般是不赚钱的。还有 Spring 生态这个巨人存在。但,真的有很多人是期待的:一个轻量的,更现代感的,最好还是国产的。

刚开始的确会很难;刚开始可能不如人家的完善;刚开始会有很多人质疑和漫骂。再难能有芯片难???不是说非要替换代别人,而是必须要有,不然就永远不会有

2、一个美好的“生态级”应用开发框架

应该是所有“功能型”框架的好朋友,就像水、土、空气一样串起万物生长;应该是接地气些,方便所有技术员快速学习和使用。比如:

  • 应该能自动装配扩展能力(方便做第三方扩展)
  • 应该有很多的第三方合作与便利适配(生态嘛)
  • 应该有IOC 和 AOP(确实更便利)
  • 应该启动很快(必须要远超它的前辈)
  • 应该内存更少,尤其是在启动时和静默时的内存(休息时,不该吃那么多内存)
  • 应该很少量的代码(不然学习太幸苦了)
  • 应该有自己的思考方式和性格特性(抄过来的不好)

其实要求也不高,只要道心稳,慢慢打怪升级。最近有位技术大牛说:国外有 spring 和 apache,国内有 solon 和 dromara

3、论 Solon 框架的意义

是一个国产的生态级 Java 应用开发框架(已发具备全球第二级别的生态)。开玩笑,两三百个生态扩展呢。

  • 国内第一个

从零开始构建,有自己的标准规范与开放生态。尤其没有使用 javaee 的接口规范(它改包名了,可麻烦)。会借鉴与善用前人的成果,但绝对是原创。

  • 为什么说是生态呢

没有功能,没有集成。都是基于标准与规范的扩展与适配。同一个需求,可以有很多不同的方案选择。这是架构的美感。当然别人家的生态框架也会是这样。

  • 提供不同的选择

以前只有包子,没得选,不管什么场景只有包子吃。而且很多人都习惯了这样。现在是还有面条和米饭,你可以按需选择

  • 助力信创国产化

信创,讲国产可控。但是很多软件系统用了 spring 开发。之前是没得选。现在可以用 solon 了。

  • 助力国产语言的成长

当有适合的国产语言出现时,可以快速实现副本迁移。因为 solon 是原创,有自己的标准规范与开放生态,迁移起来很方便。开发语言,有好的生态框架,能优化用户体验,加速成长。

  • 助力部训机构使用国产框架进行 Java 教学

一个生态级的应用开发框架。无形之中,会有很多模式,有很多术语。应用于教学,对国产开发环境是好事。

  • 助力高校使用国产框架进行 Java 教学

Solon 的愿景里,会有很多相关书出现。以 Solon 的视角去展现 Java。 以前是没得选,以后可以选 Solon 相关的书,进行教学。

  • 助力 Java 开源项目成长

以前嘛,我们的 Java 开源项目很多是“面向 Spring 编程的”。现在可以回归本源,“面向 Java 编程”(同时也适配下 Solon)。Java 的世界很大,有很多的不同的生态框架。

  • 助力 Java 程序员的成长

有些 Java 程序员,如果没有 Spring 是不能编程的。其实 Java 的世界很大,Java 之外的世界更大。见识不同的生态应用开发框架,见识不同的编程语言,可以看见更大的世界。

4、Solon 生态框架是应运而生的

这不是吹牛,之前真的是没有,这是第一个生态级的。打磨五六年了。暂时,它还真是中国人的 Java 生态框架(没别的啦)。

特性:

  • 启动快 5 ~ 10 倍。 (更快)
  • qps 高 2~ 3 倍。 (更高)
  • 运行时内存节省 1/3 ~ 1/2。 (更少)
  • 打包可以缩小到 1/2 ~ 1/10;比如,300Mb 的变成了 23Mb。 (更小)
  • 同时支持 jdk8, jdk11, jdk17, jdk21, graalvm native image

简介:

  • 克制、简洁、高效、开放、生态
  • 支持 JDK8、JDK11、JDK17、JDK20(是同时支持)
  • Http、WebSocket、Socket 三种信号统一的开发体验(俗称:三源合一)
  • 支持“注解”与“手动”两种模式,按需自由操控
  • Not Servlet,可以适配任何基础通讯框架(最小 0.3m 运行rpc架构)
  • 独特的 IOC/AOP 容器设计。不会因为插件变多而启动变很慢
  • 支持 Web、Data、Job、Remoting、Cloud 等任何开发场景
  • 兼顾 Handler + Context 和 Listener + Message 两种架构模式
  • 强调插件式扩展,可扩展可切换;适应不同的应用场景
  • 支持 GraalVm Native Image 打包
  • 允许业务插件“热插”、“热拔”、“热管理”

预览:

@Controller
public class App {
public static void main(String[] args) {
Solon.start(App.class, args, app -> {
//手写模式
app.get("/hello1", ctx -> ctx.output("Hello world!"));
});
}

//注解模式
@Get
@Socket
@Mapping("/hello2")
public String hello2(String name) {
return String.format("Hello %s!", name);
}
}

5、什么样的 Java 项目用 Solon 好

就像华为讲的,不要因为爱国而特意买华为手机。Solon 也是,有需要就用不需要就跳过(按正常的需求选择):

  • 信创需要国产化,应该用 Solon 或者 Solon Cloud(有案例)
  • 军工项目要国产化,应该用 Solon 或者 Solon Cloud(有案例)
  • 嵌入式设备,内存有限,算力差,可以用 Solon 或者 Solon Native(有案例)
  • 客户的希望你内存更少,可以用 Solon (有案例)
  • 别的框架用腻了,可以用 Solon (有案例)
  • 有新系统开发想尝新的框架,可以用 Solon (有案例)
  • 老系统要轻量化改造,可以用 Solon(有案例)

作为后来者,大家的疑或是会多一些。有问题,可以去交流群里多交流。

6、Solon 的代码仓库

喜欢 Solon 的,可以帮助宣传。喜欢但觉得不够好的,可以助其成长。不方便切换框架的,也可支持:

  • https://gitee.com/noear/solon
  • https://github.com/noear/solon

众人拾柴火焰高”,支持它、使用它、传播它、一起供献代码:)


相關推薦

2023-10-08

Solon 是什么? Java 生态级应用开发框架。从零开始构建,有自己的标准规范与开放生态(历时五年,具备全球第二级别的生态规模)。更多内容详见:《中国这么多 Java 开发者,应该诞生出生态级应用开发框架》 有什么特点?

2023-11-10

美国立法者继续施压限制中国使用 RISC-V 的举措已经引起质疑。著名硬件黑客黄欣国近日就针对此事,写了一封至白宫、美国商务部和国会议员的公开信,敦促不要对 RISC-V 技术的共享施加任何限制。 他认为,增添限制只会减少

2021-11-25

Bruce Perens 在1997年6月初向 debian-private 邮件列表中的Debian 开发者提出了 Debian 社会契约草案。 “Debian 开发出来之后,Debian 除了遵循 copyleft 之外,也遵循着一些其他的自由许可证。所以当时的 Debian 在自由软件方面还存在一些

2022-10-26

与未来。 统信技术开放日是统信软件打造的一个面向开发者、合作伙伴和用户朋友的实用性和知识性活动平台,致力于赋能开发者与合作伙伴解决数字化转型中的技术所需、提升数字化转型效能、获取丰富的技术热点与创新

2022-07-20

么多编程语言? 在编程语言如此丰富的今天,相信许多开发者都有过上面的疑问。不过早在 1960 年代初,人们就已经提出了这个问题。 《ACM通讯》期刊近日发表了题为《Why Are There So Many Programming Languages?》的文章,作者在文中

2023-05-09

以避免这些拆分问题。在开发阶段中,我们可以使用单体应用开发思维,降低了开发成本。通过单体应用的开发方式,在开发分步式项目时,调试更加的方便;这既能兼顾分步式开发、项目模块的拆分,又能降低团队的开发成本

2023-11-15

(后来,据他说是自己跑来的)。他说,我们应该A,B,C...这么这么搞! 还有个加强版的 AOT。原来如此,原来如此: 在编译后 -> 运行项目并获取运行中的信息 -> 然后完成各种预编译和登记 -> 再进行原生编译 一气呵

2022-06-07

迈科技 2021 年年报资料显示,王继平出生于 1968 年 1 月,中国国籍,无境外永久居留权,硕士学历。工作履历包括:1994 年 2 月至 1999 年 1 月,曾任美国智通公司软件工程师;1999 年 2 月至 2000 年 8 月,曾任中美合资智通电脑有

2022-10-01

理念,持续不断地吸引了一大批来自全球各个国家的优秀开发者参与其中。开源的方式也促进了教育和科研事业的发展,为高校师生提供了更多自主学习的资源,学生能够直接、迅速地加入开源项目中,技术水平不断提高,经验

2022-03-22

重大版本更新,双双迈入 1.0.0 版本。众多 Windows 用户和开发者是否有在使用 Chocolatey 呢?你们使用 Chocolatey 安装的第一个软件又是什么呢?欢迎大家留言分享自己的使用经历。

2023-09-22

区域大赛的组织。华为愿意赞助 ICPC 教练、参赛人员等来中国交流。华为资助竞赛不以华为为目的。我们不仅要坚持,还要加大对这类活动的赞助。 支持未来 ICPC 全球赛在中国的举办,并邀请优秀选手和教练来中国多走走、多

2023-08-08

以避免这些拆分问题。在开发阶段中,我们可以使用单体应用开发思维,降低了开发成本。通过单体应用的开发方式,在开发分步式项目时,调试更加的方便;这既能兼顾分步式开发、项目模块的拆分,又能降低团队的开发成本

2023-07-08

以避免这些拆分问题。在开发阶段中,我们可以使用单体应用开发思维,降低了开发成本。通过单体应用的开发方式,在开发分步式项目时,调试更加的方便;这既能兼顾分步式开发、项目模块的拆分,又能降低团队的开发成本

2022-10-24

序和数据部署到云端或内部,并获得加密保证。 3.3.4 Web3应用开发和智能合约 Wasm天然适合以加密为中心的场景:首先Wasm的可移植性使运行不同硬件集的节点网络具有可靠性;其次Wasm的性能在这些网络中转化为更广泛的效率。