作者:手机用户2502857113 | 来源:互联网 | 2023-10-10 21:22
前言
众所周知,在java界 有一个框架霸占了市场很多年,可以说30岁以下的程序员基本就是学着它 从一个菜鸟变成老鸟的(老了的老 O(∩_∩)O哈哈~) 而且这个框架经过了这么多年的发展可以说他已经变成了一个应用层的操作系统了,然后在这个平台上运行着各种app(只是类比,希望可以正确理解这句话),它的生态是非常强大的,可以解决你的一切问题,跟这样的一个框架抢市场 无异于以卵击石。
但是这种情况只存在于后端,前端相对就开放,前卫很多,从一开始的原生js 到后来的jquery,再到后来的bootstrap,然后出现了 AngularJS,React,vue.js等,一直都在不断的变化,从没出现一直被一个框架霸占市场的情况,前端开发也变得有很多选项,我一直在想这到底是什么原因造成的,但是我想不到原因。
想法
所以,我想,让后端也能跟前端一样,出现各种选项,虽然现在有jfinal,Vert.x,play等框架,但是都没形成体系,而且基本都是走小型化,快速开发道路的,并且大家开发后端依然是首选Spring,这些小框架基本没什么市场,只能存在于一些需要快速开发的场景下。所以,我希望出现一个可以在企业级开发这个场景下的另一个选项,就算这个选项是一只鸡蛋,我也要砸的这块石头满身的蛋清,后端不能继续保守下去了,要向前端学习,开放起来。
个人力量有限
一个人的力量毕竟有限,所以我只能提供一个内核,不过这个内核已经覆盖了Springboot常用的大部分功能了,现在缺的是大量的实战检验,让它成熟起来,以及各种生态(比如 支持kafka,ActiveMQ等)
希望可以吸引到一些志同道合的人加入进来吧,一起开发和维护
官网地址:http://mars-framework.com/
补充一点
经常有人说Mars-java跟Springboot同质化严重,所以我也说说我的看法吧
- 这个问题其实很无奈,不管是什么框架都是对java语言的封装, 如果想把对象都管理起来,并绑定一些功能(比如aop,事务管理,定时任务等) 那么目前能解决的就只有ioc了,因为new出来的对象 是脱离框架管控的。
- 其他像什么启动,配置之类的,java好像就只有main这个入口,就算有别的入口那也是换汤不换药,一样是用命令启动jar包。配置也一样,要么就是yml,要么就是xml,属性文件,json等,又或者跟那些宣称没配置的框架一样用类来配置
- 这些东西很无奈的,就像呼吸一样,是无法改变的基础,就像电脑都是屏幕,键盘,鼠标组成,除非创造一个新的语言,不过同质化不一定会带来一模一样的体验
- 比如android和ios,spring就像android 很开放,生态很强,什么都能做,但同时也带来了一个问题,功能太多,扩展太强导致有点杂乱,因为要适配太多的东西,而我想做的是一个ios,很好用的封闭生态(封闭不代表“闭关锁国”,ios的appStore也是开放给全球开发者的)。
- Springboot确实很好用,但是开发者需要思考 持久层框架用什么,分布式中间件是用dubbo还是spring cloud等各种问题,而我的愿景是,让开发者专注在开发上,而不是选型上,只要是选了Mars-java,就像是买了一台imac回家,打开,插上电源用就是了
- 不过现在还很早,说这些可能有些人就当笑话看看,不过没关系,我只是把我的想法发表出来,希望可以吸引到一些志同道合的人加入吧