我为什么要开发一个Mars-java
前言
众所周知,在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回家,打开,插上电源用就是了
- 不过现在还很早,说这些可能有些人就当笑话看看,不过没关系,我只是把我的想法发表出来,希望可以吸引到一些志同道合的人加入吧
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
RocketMQ 整合 DLedger(多副本)即主从切换实现平滑升级的设计技巧
源码分析 RocketMQ DLedger 多副本系列已经进行到第 8 篇了,前面的章节主要是介绍了基于 raft 协议的选主与日志复制,从本篇开始将开始关注如何将 DLedger 应用到 RocketMQ中。 > 摘要:详细分析了RocketMQ DLedger 多副本(主从切换) 是如何整合到 RocketMQ中,本文的行文思路首先结合已掌握的DLedger 多副本相关的知识初步思考其实现思路,然后从 Broker启动流程、DLedgerCommitlog 核心类的讲解,再从消息发送(追加)与消息查找来进一步探讨 DLedger 是如何支持平滑升级的。 1、阅读源码之前的思考 RocketMQ 的消息存储文件主要包括 commitlog 文件、consumequeue 文件与 Index 文件。commitlog 文件存储全量的消息,consumequeue、index 文件都是基于 commitlog 文件构建的。要使用 DLedger 来实现消息存储的一致性,应该关键是要实现 commitlog 文件的一致性,即 DLedger 要整合的对象应该是 commitlog 文...
- 下一篇
MooTool 1.1.0 发布,开发者常备桌面小工具
MooTool 1.1.0已发布,开发者常备桌面小工具。 更新内容 Mac OS 的一些特殊处理 设置界面样式微调 支持操作习惯(菜单栏位置)设置 优化发送 http 请求按钮图标 时间戳转换增加按回车键快捷操作 增加随手记、json、host 新建快捷键(Ctrl+N) 增加快捷键提示 随手记和 Json 格式化 tab 增加列表显示/隐藏按钮 随机串生成增加位数记忆 文件 MD5 增加路径记忆 按 ESC 退出窗口时自动保存随手记的内容 支持的功能 Host 切换 时间转换 Json 格式化 发送 HTTP 请求 编码转换 二维码生成/二维码识别 加解密/随机 随手记 计划中的功能 正则表达式 Cron 表达式 图片压缩 功能&亮点 整合开发者使用频率比较高的工具 随手记:可记录待办事项、需求点、代码片段、常用 SQL、常用数据暂存、关键 log 保存、常用接口保存等 时间戳:时间戳和高可读性本地时间的相互转换,对网上常见的转换页重新设计,支持快速复制,简单高效 Json 格式化:目前仅支持 json 串的美化,暂不支持分节点展开和收起 Host 切换:自动获取系统 hos...
相关文章
文章评论
共有0条评论来说两句吧...