跳至主要內容
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?

4563博客

全新的繁體中文 WordPress 網站
  • 首頁
  • Martian 框架的建议征集帖
未分類
3 9 月 2020

Martian 框架的建议征集帖

Martian 框架的建议征集帖

資深大佬 : Joker123456789 14

首先,我可能还是老规矩,要先解释一波,虽然我知道不喜欢的人也不会喜欢看我解释,但是我觉得还是有必要说一下的。

关于扩展性不够强

我不知道这个扩展性具体是指啥,是指以下这种情况吗?

  1. 我内置 httpserver,但是你想用 tomcat 可以自己切换?
  2. 我内置 durid,但是你想用 c3p0 可以自己切换?

如果你们指的是这种,那我可以很负责任地说,我从来没往这方面考虑,所以也就不会去做大家嘴里的扩展性,我始终坚持一个场景只提供一种解决方案,就像 iphone 只提供 faceid,不提供屏下指纹一样。

如果大家不认同这个理念,那我只能说我们的想法不同吧,可能聊不到一块。

如果不是指上面这些,而是指支持 kafka,支持 activeMQ,支持 mongodb 等,这些完全没问题啊,这些项目本来就是可以单独使用的东西,又不是必须跟 spring 整合才能用,都可单独使用了,你们还怕不能跟 Martian 框架一起用吗? 无非现在就是缺少几个针对他们的 starter+工具类嘛,导致整合会比较耗时,对不对? 但这是问题吗?我觉得这不是问题,只要有兴趣的人一起行动,各种 starter 肯定就满天飞了。

所谓的 spring 生态,其实就是这些开源项目开发了针对 spring 的 starter 和工具类嘛, 他们又不是软件和系统的关系,一个软件在 windows 上能跑,在 mac 上不能跑,这个别人拿生态来说事,我还能理解,但是 kafka 和 spring 是这种关系吗?肯定不是啊。

接下来是意见征集

我经常听到有人说 这个框架功能少,不够用,所以这个帖子我主要是想来听一听具体的一些干货。

我承认 我是井底之蛙 ,见识不够广,所以我希望大家来指正我,拜托了,但同时我也请大家注意礼貌。

请说出 用这个框架无法满足,或者很难满足的场景,数量不限,越多越好,但必须是 web 开发这个方向的哦

然后我有几个小小的请求,希望大家见谅

  1. 希望大家可以说出正经的干货,如果光是一个劲的说,辣鸡,或者功能少,却不说到底什么场景下不够用,那我可能无法认同你们的吐槽,望见谅
  2. 我希望听到的是业务场景,而不是技术需求,比如有人喜欢把页面写在 java 项目里用模板引擎,又或者有人喜欢 jsp,这种就不要说了,因为这是技术需求,不影响业务实现,用前后端分离完全可以实现业务需求,所以这一类的东西不能算缺陷,只能说没有满足部分人的喜好吧

项目官网:http://www.mars-framework.com

大佬有話說 (14)

  • 資深大佬 : xihefeng

    感觉主的确是一个喜欢钻研技术的人,前面看过一点你的框架,主要是感觉挺适合做技术的研究,但是放到生产还是有些虚。另感谢主的分享!加油!

  • 資深大佬 : sagaxu

    卖点是什么呢?性能更强?内存占用更低?实现同样功能比 springboot 少写代码?

  • 資深大佬 : micean

    我认为个人框架首要考虑的不是扩展性和生态,而是你的框架是否能解决某种特定需求并且比其他框架做的更好

  • 資深大佬 : xuanbg

    主还是先说一下你的初心是什么吧。譬如你就想打造一个轻量级的框架,我们吐槽你功能不够多岂不是鸡同鸭讲?浪费我的时间也浪费你的时间,还让大家显得生分,这就很不好。

  • 資深大佬 : rancc

    主,本人 java 菜鸡。下载 https://github.com/yuyenews/Mars-Example 启动 main 方法后下一步怎么做?麻烦完善下 demo 的 readme 文件。
    启动 Mars-Example 后后台报错,页面返回 {“error_info”:”服务器上没有相应的接口”,”error_code”:500}

  • 資深大佬 : rancc

    @rancc 说错了。是访问 localhost:8080 后台报错

  • 資深大佬 : industryhive

    任何能给开源世界做贡献的人我都非常敬佩!主加油!

  • 主 資深大佬 : Joker123456789

    @rancc 必须请求具体的接口,根目录是不支持访问的。

  • 資深大佬 : rancc

    @Joker123456789 例子中的可用访问 api 的地址是什么?

  • 主 資深大佬 : Joker123456789

    @rancc 在 api 包里面的 ExpApi 接口里面有很多方法,方法的注释里 标注了如何请求

  • 資深大佬 : monkeyWie

    刚刚随便看了看,有几个槽点:
    1. 用的 com.sun.net.httpserver.HttpServer,这在非 sun 和 oracle JDK 上可能直接就运行不起来
    2. 路由匹配目前好像是用 HashMap 做的,没有用 tire tree
    3. 文件上传的实现为了不引入依赖,直接复制了一堆 Apache commonfile 的源码
    4. json 序列化目前固定成了 fastjson,想换成 jackson 怎么办
    5. 好像不支持支持 /user/{id} 这种路由的写法

    想说的是:
    造轮子学习技术可以,但是没有很明显优势的话别人为啥用,springboot 它不香吗?要高性能的话 vert.x 或者用 golang 不香吗?

  • 資深大佬 : rancc

    @Joker123456789 好的。
    测试的问题,源码 install 的时候测试不通过:com.mars.common.test.util.MarsAddressUtilTest#testGetLocalIp 方法里写死了本地 ip
    测试这么写不合适吧

  • 主 資深大佬 : Joker123456789

    @monkeyWie

    嗯,我简单回复下吧:

    1. 没打算支持 sun 系 以外的 jdk
    2. 路由匹配这个,感谢你的建议,我稍后研究下
    3. 这个还真不是为了不引入依赖,而是 common-fileupload 依赖 servlet,而我又丢弃了 servlet,不得已复制源码进行修改

    4. 想用 jackson 的 用就是了啊,不管是 maven 还是 java 都没限制一个项目只能引入一个 json 解析包吧? 想用 jackson 那就直接用好了,完全没问题啊,我完全无法理解这个槽点。 如果有洁癖的,不想看到一个项目里有两个 json 解析器,那大可选择别的框架,只是个 util 而已,这么纠结干嘛呢。 除非这个东西本身存在致命的缺陷,否则那就是各有千秋的事,说到底就是个人喜好嘛,我框架里用 fastjson 来处理数据,你自己写业务用 jackson 处理,一点问题都没。

    5. 这个故意不要的,传参统一用对象,我连 requestBody,requestParam 这一类的注解都丢弃了,框架自动根据 Content-type 判断如何解析。 如果你不喜欢,那我只能说很遗憾吧,你可以选择别的

    别人用不用,不是我关心的,我只是开源出来,并推荐给大家,springboot 很香,那用 springboot 就好了嘛。vert.x 很香,那就用 vert.x 好了嘛

    开源项目本身就是随缘。

  • 主 資深大佬 : Joker123456789

    @rancc 不需要自己 install,jar 包都传到 中央库了,直接用即可。

    单测这个问题,如果 ip 不写死,那这个单测就没意义嘛。两个用来比较的值都是获取出来的,我怎么知道对不对呢。肯定是拿获取出来的值,跟实际的值做比较嘛,而实际的值 就得手工查看,然后写进去。

文章導覽

上一篇文章
下一篇文章

AD

其他操作

  • 登入
  • 訂閱網站內容的資訊提供
  • 訂閱留言的資訊提供
  • WordPress.org 台灣繁體中文

51la

4563博客

全新的繁體中文 WordPress 網站
返回頂端
本站採用 WordPress 建置 | 佈景主題採用 GretaThemes 所設計的 Memory
4563博客
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?
在這裡新增小工具