Joker123456789
V2EX  ›  Java

Springboot 那么大,不用什么场景都用它吧,要不尝试下 Mars- Java ?

  •  
  •   Joker123456789 · Aug 2, 2020 · 15336 views
    This topic created in 2287 days ago, the information mentioned may be changed or developed.

    基本概念

    Mars-Java 是一个不需要容器的 Java 开发框架,不需要 Tomcat,不需要 JBoss,不需要 Netty,甚至连 Servlet 都不需要。

    一个纯基于 JRE 类库开发的 Http 服务,一个不需要容器的 Java 开发框架。

    他可以快速的开发出一个后端 Http 服务,支持 MVC,IOC,AOP,数据库操作,声明式事务等常用的特性,并且他更小,更快,更简单。

    为什么要用 Mars-Java

    当我们需要开发一些中小型网站的时候,如果使用 Java,那么往往会走向两个极端,要么使用非常简单的 JDBC+Servlet,要么使用非常巨大化的 Springboot+Mybatis,那么有没有一个折中的方案呢?当用户量可以预见的不会太多(多见于 B 端应用),又或者仅仅是一个逻辑不复杂的展示型网站,这个时候我们怎么办? 这个时候就可以使用 Mars-Java 了。

    它非常的小,不到 Springboot+Mybatis 的一半,它功能齐全,包含了 Springboot 常用的几大功能,并且有自己的持久层封装。同时它也有自己的生态,目前有一个小型的分布式组件 Mars-Cloud 。

    几乎可以解决你日常中的所有需求。

    MVC 支持的请求方式

    目前为止 MVC 支持 GET,POST 两种请求方式,这也是用的最多的两种方式,其他的暂时不支持。

    传参方式支持以下三种:

    • application/x-www-form-urlencoded
    • multipart/form-data
    • application/json

    数据库操作

    一、简单的单表操作

    // 根据主键查询一条数据
    @MarsGet(tableName = "userinfo",primaryKey = "id")
    public abstract `Return type` selectById(int id);
     
    // 插入一条数据
    @MarsUpdate(tableName = "userinfo",operType = OperType.INSERT)
    public abstract int insert(`Entity object parameter`);
     
    // 根据主键删除一条数
    @MarsUpdate(tableName = "userinfo",operType = OperType.DELETE,primaryKey = "id")
    public abstract int delete(int id);
     
    // 根据主键修改一条数据
    @MarsUpdate(tableName = "userinfo",operType = OperType.UPDATE,primaryKey = "id")
    public abstract int update(`Entity object parameter`);
    

    二、简单的分页操作

    // 如果你的 sql 语句是固定的,那么只需要这样就可以分页了
    @MarsSelect(sql = "select * from userinfo where name = #{name} and age = ${age}", resultType = 要返回的实体类.clss,page = true)
    public abstract PageModel<要返回的实体类> selectList(PageParamModel pageParamModel);
     
    // 如果你的 sql 语句不固定,那么就这样
    public PageModel<要返回的实体类> findPage(PageParamModel pageParamModel) throws Exception {
        String sql = "select * from userinfo where name like #{name}";
        return JdbcTemplate.get().selectPageList(sql,pageParamModel,DemoEntity.class);
    }
    

    声明式 API

    一、 先声明一下

    @MarsApi(refBean = "expApiService")
    public interface ExpApi {
     
        /**
         * get 请求示例
         * http://127.0.0.1:8080/expGetRequest?name=张三&names=王五&names=赵六
         * @param expVO
         * @return
         */
        List<ExpVO> expGetRequest(ExpVO expVO);
    }
    

    二、实现这个接口就好

    @MarsBean("expApiService")
    public class ExpApiService implements ExpApi {
     
     
        /**
         * 这个方法上加了 aop 监听
         * @param expVO
         * @return
         */
        @Override
        @MarsAop(className = ExpAop.class)
        public List<ExpVO> expGetRequest(ExpVO expVO) {
     
            // 打印接收到的参数,看是否接收成功
            System.out.println(expVO.getName());
            System.out.println(JSON.toJSONString(expVO.getNames()));
     
            // 返回数据
            return getExpResultData();
        }
    }
    

    对,你们没看错,Controller 层没了,为什么会这样呢?这得从 Controller 的作用说起,在实际开发中,Controller 基本上起到两个作用,一个是参数校验,一个是响应数据。

    在 Mars-Java 中,参数校验被封装掉了,直接用注解即可,响应数据,这个本来就没什么,直接返回就好,不需要去 Controller 里再返回一次了。

    所以,干脆去掉了,让使用者专注在业务逻辑上。

    官网地址:http://mars-framework.com

    116 replies  •  2020-09-05 14:39:57 +08:00
    1  2  
    ❮ ❯
    johnsona
    johnsona
    Aug 2, 2020
    1
    不用
    zhuangzhuang1988
    zhuangzhuang1988
    Aug 2, 2020
    2
    大不是问题 主要是生态
    zclHIT
    zclHIT
    Aug 2, 2020
    3
    star 一波,感觉自己的项目上撸着玩不错,拿去写服务扔到生产环境我还是有点虚。。。
    Salvation
    Salvation
    Aug 2, 2020❤️1
    4
    1. “非常巨大化的 Springboot+Mybatis” 有点夸张吧,所谓巨大在于?
    2. “几乎可以解决你日常中的所有需求”,不太现实。为啥 java 、spring 、springboot 这些天天被唱衰,还活得这么好呢?核心原因不是他有哪些问题,而是他的生态。生态意味着:当遇到问题,在当前框架下存在成本可控的解决方案。而这个框架我看着是做了阉割,个人很怀疑出了问题能否 cover 。
    3. 官网打不开。
    rockyou12
    rockyou12
    Aug 2, 2020
    5
    额,lz 造轮子建议先写个简单表格对比下主流框架,spring mcv 、spring data jpa 、mybatis 、vertx 这些……
    Joker123456789
    Joker123456789
    OP
    Aug 2, 2020❤️1
    6
    @Salvation
    非常感谢你的评论,我简单回复一下吧。
    1. 第一点见仁见智,这个不做讨论。
    2. 第二点,我说的日常中的需求,前提是日常,当然了每个人对日常的理解和定义可能也不同,所以也不做争论。
    生态问题,是全球一起努力的结果,当然了我这个项目目前没 spring 那种号召力,属于一个稚嫩的婴儿吧,但是也因为如此,开源的意义不就体现出来了吗? 开源和免费是不能划等号的哦,如果只是为了免费给大家用 那何必要开源呢,360 永久免费,QQ,微信免费,但是他没开源啊,我们不也一样用的好好的。 开源的意义在于大家一起完善,一起来做这个事,喜欢的人可以偶尔提提 PR,甚至可以一起完善。
    3. 官网是打的开的,可能是万网没解析到你使用的 DNS 上吧。
    sagaxu
    sagaxu
    Aug 2, 2020 via Android
    7
    只支持 GET 和 POST ? CORS 的 OPTIONS 请求也不支持?
    Joker123456789
    Joker123456789
    OP
    Aug 2, 2020
    8
    @sagaxu 是的,因为 POST 已经够用了,我们常用的几种传参方式:
    1. application/x-www-form-urlencoded [常规表单]
    2. multipart/form-data [文件上传]
    3. application/json [json 提交]
    这些都支持,所以暂时不打算做更多的东西进来,我的理念是往精简了做,精简到不能再精简。
    watzds
    watzds
    Aug 2, 2020 via Android
    9
    可以用来玩玩,或者几个人的小公司
    chendy
    chendy
    Aug 2, 2020❤️2
    10
    Springboot 那么大,不用什么场景都用它吧
    Springboot 那么大,就是要所有场景都用它
    mimimiZ
    mimimiZ
    Aug 2, 2020 via iPhone❤️1
    11
    看到官网写 more than 100 companies are using this framework. 然后下面 they are using 的 logo 都是 placeholder ?
    sagaxu
    sagaxu
    Aug 2, 2020 via Android
    12
    @Joker123456789 精简的有些严苛了,比如 application/x-protobuf 也很常见,一些边角场景平时可能用不大上,但是需要用的时候没有就尴尬了
    aguesuka
    aguesuka
    Aug 2, 2020 via Android
    13
    你已经连续发了两个帖子了,而且愈发有标题党的意思,
    zzl22100048
    zzl22100048
    Aug 3, 2020 via iPhone
    14
    @Joker123456789 没 OPTION 跨域也放弃了?
    monkeyk
    monkeyk
    Aug 3, 2020
    15
    实践是检验真理的唯一 标准
    xmge
    xmge
    Aug 3, 2020
    16
    java 那么大,用 go 吧
    chihiro2014
    chihiro2014
    Aug 3, 2020
    17
    没有太大意义。如果讨厌 Spring Boot,那可以去使用 Quarkus
    yiyi11
    yiyi11
    Aug 3, 2020 via Android❤️2
    18
    springboot 就是要通吃,手中有锤,看谁皆钉。
    sue0917
    sue0917
    Aug 3, 2020 via iPhone
    19
    看注解名字,低了啊
    zjsxwc
    zjsxwc
    Aug 3, 2020
    20
    这个框架看来只能用来写 json 的 api 接口,浏览器网页相关的还是算了
    xuanbg
    xuanbg
    Aug 3, 2020❤️1
    21
    Spring boot 太大???你们说大就大吧,反正我也没啥感觉,你们说的都对。打个包几 M 还是几十 M 对我而言根本不是问题,我的核心诉求是用起来要方便。
    Rwing
    Rwing
    Aug 3, 2020❤️1
    22
    要不尝试下 C# ?
    122006
    122006
    Aug 3, 2020
    23
    andserver 真香(本地服务器
    HiShan
    HiShan
    Aug 3, 2020
    24
    看官网,真的有超过 100 家企业在用了吗?
    witcherhope
    witcherhope
    Aug 3, 2020 via iPhone
    25
    不用 Springboot 可以用 Quarkus,支持 AOT 特性,启动速度和内存占用都不错
    HenryWang0723
    HenryWang0723
    Aug 3, 2020❤️1
    26
    虽然不用,表示支持
    siweipancc
    siweipancc
    Aug 3, 2020 via iPhone
    27
    不用
    renmu123
    renmu123
    Aug 3, 2020 via Android❤️1
    28
    连 http 的几个方法都不完整支持,不敢用
    sunziren
    sunziren
    Aug 3, 2020
    29
    有意思,我试试。
    arthas2234
    arthas2234
    Aug 3, 2020
    30
    这种要替代 spring boot 的框架,还是个人项目,万一不维护了,那不是要哭了
    TheBestSivir
    TheBestSivir
    Aug 3, 2020
    31
    10 年前甚至得更久以前,这种应用框架谈一谈轻量还有点意义。

    当下的轻量就是简陋
    Joker123456789
    Joker123456789
    OP
    Aug 3, 2020
    32
    @aguesuka 这个项目做很久了,只是近期才来这里发帖子,就把以前发的文章拷贝了两篇过来。 哈哈
    BarZu
    BarZu
    Aug 3, 2020
    33
    给个留言,以资鼓励
    Joker123456789
    Joker123456789
    OP
    Aug 3, 2020
    34
    @zzl22100048 有跨域啊,怎么会没跨域。
    jimideer
    jimideer
    Aug 3, 2020
    35
    所有造轮子的人都支持!
    Joker123456789
    Joker123456789
    OP
    Aug 3, 2020
    36
    @chihiro2014 我相信 Quarkus 刚做的时候,也有人对他说过这句话。
    Joker123456789
    Joker123456789
    OP
    Aug 3, 2020
    37
    @zjsxwc 是的,就是纯面向 前后端分离的场景。 这年头 如果有公司把页面写在 java 项目里,我相信也没几个人愿意在那干下去吧。 所以,干脆精简掉了
    Joker123456789
    Joker123456789
    OP
    Aug 3, 2020
    38
    @TheBestSivir 轻量和简陋本身就是看怎么理解。 有人觉得微信是神,有人觉得微信就是阉割版的 QQ 。有人觉得 IOS 是神,也有人觉得 IOS 功能少。 所以见仁见智吧。
    gotonull
    gotonull
    Aug 3, 2020
    39
    我选择 vertx
    tctc4869
    tctc4869
    Aug 3, 2020
    40
    这个跟 Spring MVC 有何区别?还是用 Controller 和 Action+注解配置的这种形式么?
    337136897
    337136897
    Aug 3, 2020
    41
    看标题先不看内容,你居然讲 spring boot 大? TM 的你去用别的语言试试,python 的一两百兆,note 的几百起步 2G 封顶
    Marsss
    Marsss
    Aug 3, 2020
    42
    不如用 go 咯
    RJH
    RJH
    Aug 3, 2020
    43
    spring boot 的优势是生态完整,基本上遇到的问题 90%都可以用它生态内的东西解决掉,而且踩坑的人多,搜索就可以找到对应问题的解决办法。
    zhout
    zhout
    Aug 3, 2020
    44
    和 jFinal 相比,有哪些优点和缺点?
    MakHoCheung
    MakHoCheung
    Aug 3, 2020 via iPhone
    45
    除了 spring 还要 quarkus 、micronaut 、vertx 和 ktor
    niceshell
    niceshell
    Aug 3, 2020
    46
    那为什么要用 java 不用 go 、.net
    ldlood
    ldlood
    Aug 3, 2020
    47
    所有敢于造轮子的,都值得支持,加油
    rykinia
    rykinia
    Aug 3, 2020
    48
    也许是更小,但是更快有证据吗,还是说仅指启动速度?
    zzl22100048
    zzl22100048
    Aug 3, 2020 via iPhone
    49
    @Joker123456789 POST 发送 json 是非简单请求会发送 OPTION 校验呢,前面不是说不支持 OPTION ?
    Joker123456789
    Joker123456789
    OP
    Aug 3, 2020
    50
    @zzl22100048 post 发送 json 是用的 application/json,反正我没遇到过用 option 的, 也可能是我们两个说的不是一个东西。
    fovecifer
    fovecifer
    Aug 3, 2020
    51
    请教一个问题啊,文中的“容器”具体对应的是哪个英文词汇呢?
    Joker123456789
    Joker123456789
    OP
    Aug 3, 2020
    52
    @fovecifer 这个就超出我的认知范围了,我英语不好。 我只能举例子来说明这里的容器是啥, 这里的容器指的是:tomcat,jboss,jetty 等东。
    Cbdy
    Cbdy
    Aug 3, 2020
    53
    简单的 Spring Boot ( Web + JDBC )的 hello world demo
    implementation 'org.springframework.boot:spring-boot-starter-web'
    implementation 'org.springframework.boot:spring-boot-starter-jdbc'
    引入 65 个 jar,打包出来的 fat jar 为 17MB

    其实还好,没有那么巨大
    pushback
    pushback
    Aug 3, 2020
    54
    可以扩展 TCP 吗
    medivh
    medivh
    Aug 3, 2020
    55
    @fovecifer IOC container
    zzl22100048
    zzl22100048
    Aug 3, 2020 via iPhone
    56
    @Joker123456789 使用浏览器网页访问接口才会出现 preflight
    Joker123456789
    Joker123456789
    OP
    Aug 3, 2020
    57
    @zzl22100048 你说的是跨域吧? 跨域设置响应头就好了, 这个是支持的。
    gaigechunfeng
    gaigechunfeng
    Aug 3, 2020
    58
    这个必须得来支持一波了。
    40EaE5uJO3Xt1VVa
    40EaE5uJO3Xt1VVa
    Aug 3, 2020
    59
    osc 上关注很久了。只是关注还没用。
    v2ex 不是个友好的社区。建议做好足够的心理准备接受无聊的嘲讽
    iamstrong
    iamstrong
    Aug 3, 2020
    60
    支持一波,个人项目可以尝试下
    alienx717
    alienx717
    Aug 3, 2020
    61
    可以可以,以前有些场景,比如一个独立的获取数据的服务,我用 python 写了,就是 post 方式获取数据,然后入库,再怎么导出这种,如果非要用 Java 些,我可以试试用这个框架
    keenkiller
    keenkiller
    Aug 3, 2020
    62
    没啥意义,搞精简不如直接用 go 了…用 Java 就是要框架啊,企业级开发就是看生态
    qwerthhusn
    qwerthhusn
    Aug 3, 2020
    63
    一个不需要容器的 Java 开发框架,不需要 Tomcat,不需要 JBoss,不需要 Netty,甚至连 Servlet 都不需要。

    那底层的 HTTP 协议解析是用的啥? com.sun.net.httpserver.HttpServer ?还是其他的 HTTP 解析库?不会是自己写的吧?
    wysnylc
    wysnylc
    Aug 3, 2020
    64
    @qwerthhusn #62 自己写的不敢用,内置其他容器又打脸自己
    wysnylc
    wysnylc
    Aug 3, 2020
    65

    挺矫情的
    nl101531
    nl101531
    Aug 3, 2020 via iPhone
    66
    v2ex 社区越来越不友善了,题主要忍受下哈,加油,支持
    fkdog
    fkdog
    Aug 3, 2020
    67
    无新意, 同类框架太多. 功能缺失太多,连最基本的 PUT/DELETE/OPTION 都没有实现, 个人觉得 lz 可能开发面稍微窄了点, 便觉得这些东西无所谓.

    我看框架介绍很少看使用介绍, 我反而更看重框架里并发 /锁一类的实际运用, 如果代码篇幅太长也可以附一个压测的性能报告?然后与其他同类框架做比较?

    你这个介绍里什么也没, 然后就说更快, 那么更快在哪里?

    或许 lz 可以往码农们痛点方向造点轮子? 比如无缝热加载免重启一类的, 再或者是阿里巴巴 arthas 这种线上运行时检查环境的工具?
    Joker123456789
    Joker123456789
    OP
    Aug 3, 2020
    68
    @fkdog PUT,DELETE,OPTION 不能用 POST 替代吗?能吧? 我还没见过 POST 搞不定的地方,如果你要实现 restful 风格,用请求方式来区分 本次请求的意图, 那我不太喜欢这种方式,所以也不会往那方面考虑,我始终是喜欢 一个意图一个接口,而不是弄好多名称一样的接口,靠请求方式来区分。

    测试报告之类的,正在考虑怎么弄,现在人手不够。

    最后的那个建议,我听进去了,做不做那就看缘分吧。
    Joker123456789
    Joker123456789
    OP
    Aug 3, 2020❤️1
    69
    @nl101531 谢谢你的关心,不过我看开了,因为本来就不介意。 世界上还没有谁是人人都喜欢的,即使是杰克逊,乔布斯,李小龙,牛顿等人 都有人骂。很正常的。
    Joker123456789
    Joker123456789
    OP
    Aug 3, 2020
    70
    @qwerthhusn 对,就是用的这个 com.sun.net.httpserver.HttpServer
    KentY
    KentY
    Aug 3, 2020❤️6
    71
    我觉得对现有东西有不满, 想自己创新这个精神还是应该鼓励的, 否则就不会有 Spring1.0 替代 Ejb2, 不会有 LInux 的出现, 不会有... 很多新东西.

    看着咱们这的评论感觉有点不太友善. 可以批评但是应该完全了解了人家的东西, 个人的不一定就是差的. 前面的例子, spring and linux 开始都是个人项目.

    可能 LZ 的"宣传"方式也有可斟酌的地方. 你说"更小, 更快, 更简单"这其实作为技术的描述, 让人很难理解. 你做了一个 spring 也可以干的事, 一定是对 spring 有不满的地方, 你的不满具体是什么? 什么样的应用选择你这个会比 spring 有优势?

    你说的比 spring"更快", 什么调用更快? 什么具体测试环境? 快多少? benchmark 呢?

    "更小", 我猜你说的是包的 size, 那牺牲的扩展性有多少, 现在的应用不光是查个数据库然后分页显示, 再 CRUD 就完了的. 比如也是小型企业应用常用的 message queue, cache, security 等等这些, spring 都有比较完善的简化实现 /配置方案, 这些如果在你这个 framework 基础上扩展起来的易用性如何? 当然这也引入了"更简单"的讨论.

    可能立足这些实质性的区别与针对性的应用场景来"宣传", 或者"征求意见" 大家会有不同的态度.
    zzl22100048
    zzl22100048
    Aug 3, 2020 via iPhone
    72
    MingYueQingFeng
    MingYueQingFeng
    Aug 3, 2020
    74
    你拿这个框架对比 springboot,称更小,更快,更简单,可是没有数据证明,只是靠你的一句话,实在让人无法信服,并且我也没看到除了你说的小快简单之外解决 SpringBoot 的什么痛点,目前这个只能定位于 CRUD 框架
    Zien
    Zien
    Aug 4, 2020
    75
    感觉不错的样子,简化很多,适合个人项目
    retanoj
    retanoj
    Aug 4, 2020 via iPhone
    76
    看到 lz 对 options 请求的回帖,我心态崩了。。
    IfEles
    IfEles
    Aug 4, 2020
    77
    先 star 支持一下
    wind98
    wind98
    Aug 4, 2020
    78
    @retanoj +1 options web 跨域必备啊
    Joker123456789
    Joker123456789
    OP
    Aug 4, 2020
    79
    @retanoj 怪我表达不清晰,我的意思是接口无法设置成 options,但是跨域时发出的那个 options 预判,是可以受理的。 我这里不支持的意思是 接口不受理,并不是请求不通。 也就是说服务是接受 options 的,只是接口不受理。 并不影响跨域。
    Yuicon
    Yuicon
    Aug 4, 2020
    80
    感觉没啥区别 功能还少了 我特意多学一遍你这个是干什么 更别说开发者不尊重协议 搞非主流
    Oktfolio
    Oktfolio
    Aug 4, 2020
    81
    @Joker123456789 每次请求之前都会做一次 OPTIONS 请求( preflight ),返回 200 才会执行实际的请求。连 OPTIONS 都没实现,怎么执行实际请求?
    Joker123456789
    Joker123456789
    OP
    Aug 4, 2020
    82
    @Oktfolio 你可以 看倒数第三条评论,我已经解释过了。 就是你这条评论开始往上数,第二条,以 [怪我表达不清] 开头的那条。
    OysterQAQ
    OysterQAQ
    Aug 4, 2020
    83
    作为自己学习项目还可以吧 自己写个去了解 aop 和 ioc 诸如能了解注解事务简单实现 但是我觉得在推给别人用之前还是得规模测试的 往往其实不在乎包大不大 而是运行效率以及开发效率 spring boot 效率是很高的
    mdesi
    mdesi
    Aug 4, 2020
    84
    可以自己玩玩,star 支持
    shyling
    shyling
    Aug 4, 2020
    85
    不需要 Tomcat,不需要 JBoss,不需要 Netty,甚至连 Servlet 都不需要。
    这 4 个不是一类东西吧。
    Joker123456789
    Joker123456789
    OP
    Aug 4, 2020
    86
    @shyling 确实不一类东西,但这个框架真的不需要啊。

    现在主流的框架一般都是离不开 tomcat+servlet (框架底层使用 servlet 分发的),或者离不开 jboss+servlet,或者离不开 单独的 netty 。
    janda
    janda
    Aug 4, 2020
    87
    加油
    yvestang
    yvestang
    Aug 4, 2020
    88
    撸了下代码,质量一般,最起码的格式化都没做。
    lolizeppelin
    lolizeppelin
    Aug 4, 2020
    89
    。。。。如果用不上 sprintboot 的生态为什么要吊死在 java 上呢

    php 不好么 23333333333
    bk201
    bk201
    Aug 4, 2020
    90
    就为了巨大化,对于现在的 server 开发来说无关痛痒,发力点有点不对。当然你要是 c 端开发另说。
    cwjokaka
    cwjokaka
    Aug 4, 2020
    91
    借鉴下
    tzhhahaha
    tzhhahaha
    Aug 4, 2020
    92
    接楼问一下有人公司用 Vert.x 的吗
    Joker123456789
    Joker123456789
    OP
    Aug 4, 2020
    93
    @yvestang 你如果说用工具自动对齐的话,我确实没做,但你说没格式化,就有点瞎说了, 只能说没按你的喜好格式化。
    JB18CM
    JB18CM
    Aug 4, 2020
    94
    jvm 占用内存 那么大,不用什么场景都用它吧,要不尝试下 go ?
    yvestang
    yvestang
    Aug 4, 2020
    95
    @Joker123456789 什么叫我的喜好,不说别的,看下 JDK 的格式?举例,方法签名的参数列表「逗号, 」后空格,你做到了么?
    KevinBlandy
    KevinBlandy
    Aug 4, 2020
    96
    “Controller 基本上起到两个作用,一个是参数校验,一个是响应数据。” 我觉得 Controller 还是要干很多活儿的。
    Joker123456789
    Joker123456789
    OP
    Aug 4, 2020
    97
    @yvestang 要不晒一下您的代码? 我也来挑一挑 看看有没有刺。
    cheng6563
    cheng6563
    Aug 4, 2020
    98
    Springboot 我就觉得 security 模块太大太丑了。其他都没感觉没啥问题。
    yvestang
    yvestang
    Aug 4, 2020
    99
    @Joker123456789 其一,我没有晒代码的义务和兴趣,我只能说在我们这个不入流的福报厂某部门,代码格式化是最基本的编码素养。其二,我晒不晒代码和你「代码的确没有格式化」有关系?

    我发现你在这个贴下的很多回复都是这样喜欢转移话题,承认不足很难?
    Joker123456789
    Joker123456789
    OP
    Aug 4, 2020
    100
    @yvestang
    第一句代码:
    ```
    public void abc(int a, int b){
    for(int i = 0; i++; i < 10){
    System.out.println(i);
    }
    }
    ```

    第二句代码:
    ```
    public void abc(int a,int b){
    for(int i=0; i++; i<10){
    System.out.println(i);
    }
    }
    ```

    这两句代码,你有没有把第一句捧成神 我是不知道,但你确实把第二句贬成屎了。我承认第二句有不足,但他不是屎,ok ??? 还有啊,你在不在大厂跟我没关系。
    1  2  
    ❮ ❯
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   885 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 192ms · UTC 21:41 · PVG 05:41 · LAX 13:41 · JFK 16:41
    ♥ Do have faith in what you're doing.