chenhui7373
V2EX  ›  Java

java 要怎么学才能写企业级 jar 包

  •  
  •   chenhui7373 · Oct 30, 2015 · 3508 views
    This topic created in 3889 days ago, the information mentioned may be changed or developed.

    最近在做即时通讯,看到环信的一个消息实体类,就想到了这个问题。

    源链接:
    http://www.easemob.com/apidoc/android/chat/com/easemob/chat/EMMessage.html

    其实我只想写个消息实体类,但我觉得有必要提这个问题...

    15 replies    2015-10-30 21:04:19 +08:00
    funky
        1
    funky  
       Oct 30, 2015
    上面知识 jar 的 doc 但是我不太明白你说的意思,
    fwrq41251
        2
    fwrq41251  
       Oct 30, 2015
    关于怎么写 java doc,参考 oracle 的文档 http://www.oracle.com/technetwork/articles/java/index-137868.html
    然后 eclipse 里就有生成 doc 的功能,点几下就行了
    chenhui7373
        3
    chenhui7373  
    OP
       Oct 30, 2015
    @fwrq41251 可能我提问的方式不对,我想知道的是要有怎样的水平才能写 jar 包,然后要怎么达到这种水平。依然感谢!
    vietor
        4
    vietor  
       Oct 30, 2015
    “企业级“这三个字就是骗人的,一般解释为”有企业“在用。有一些情况是解释为”使用了 ERB “。
    vietor
        5
    vietor  
       Oct 30, 2015
    修正 EJB
    WalkingEraser
        6
    WalkingEraser  
       Oct 30, 2015
    设计模式,泛型,反射,动态代理,我猜的
    funky
        7
    funky  
       Oct 30, 2015
    企业级就是唬人的。但是狭义下的企业级可能是指 IBM 的 EJB(无责任猜测)
    cnhongwei
        8
    cnhongwei  
       Oct 30, 2015
    1 、没有必要使用 EJB ,现在都轻量级了,还用这玩意干什么?
    2 、你例子中也不是一个实体类,就是一个正常的 Bean 。
    3 、技术达到能写 EJB 的唯一条件就是:蛋疼。
    HentaiMew
        9
    HentaiMew  
       Oct 30, 2015
    “企业级”....."jar 包".... 原谅我一看标题就把你归在初学者范围内了。
    如果你想写 jar ,也就是 java 的 library 。
    你需要了解构建工具,例如简单的 maven ,在后者是相对复杂的 gradle 。
    至于什么水平写 library ,没有这个限制... 企业级通常在框架领域是指能上实际生产环境并且能承受
    例如数据量大,事物密集,架构复杂,保证安全性等因素的并且通常是某一件事的新解决方案。
    假若,我写一个很简单的 tools 库,专门处理 java 中各种繁琐而简单的小步骤,例如一个个简单 API 就能转换字符串和时间,转换对象和 JSON 、判断 string 和 object 是否非空包括 null,“”和.size=0 等等等等。
    只要保证正确性和优雅的实现,然后写好一个个方法上的文档注释,用构建工具打包,自动生成 doc ,没人会觉得你这是一个很烂的库,一样可以用在企业项目中。
    至于你觉得的环信,是因为代码架构和模式优雅,而你自己无法写出或者重构出这样的代码,你不了解这样做的思想,只是认为很有逼格,所以提出了这么一个问题,对不对。。。
    bramblex
        10
    bramblex  
       Oct 30, 2015
    “企业级”?

    1. 你给你的 jar 包建一个公司。
    2. 雇佣一个庞大的穿着西装革履的销售团队。
    3. 把你的 jar 包使用授权费定价位 50w 。
    4. 让你的销售团队多跑大企业和政府的 IT 部门负责人,并且给对方许诺 20 个点的回扣。
    5. 好了,你的 jar 包现在就是“企业级”的 jar 包了。
    bramblex
        11
    bramblex  
       Oct 30, 2015
    提供“企业级”软件产品的都不是科技公司
    而是打着科技公司名义的金融公司,而且主营业务是保险。
    Felldeadbird
        12
    Felldeadbird  
       Oct 30, 2015
    把 jar 包容量做大。接口要多,但必须绕口。 对外高兴地说,这是重量级的企业包,
    phx13ye
        13
    phx13ye  
       Oct 30, 2015
    spring 是坠吼的,不服不辩
    Cloudee
        14
    Cloudee  
       Oct 30, 2015
    LZ 说得是复用,不是企业级
    从简单的开始,比如说常用的小工具经常封装个 Util 类之类的,就能放到一个 jar 里面,要是发布的话好好写 javadoc 就是。
    然后考虑一下能不能通过抽象适配一类场景,封装成类,通过继承或者组合来适配具体的业务。一个 jar 包是不是足够的内聚,是不是能去掉一些用途不太大的依赖。
    如果向用户 Web 应用的话,还可以考虑是不是对 IoC 框架友好,比如如果作为 Service 层,是不是对多线程友好,状态是不是要抽取出来用独立的对象来保存,是不是能作为单例存在,配置能不能完全通过 get/set 属性来实现。
    逐渐打磨就是了。
    idamien
        15
    idamien  
       Oct 30, 2015
    我斗胆来加个评论,希望不会被喷死
    楼主的 jar ,说白了就是中间件,或者说通用模块
    写这种东西在一开始就要注意设计架构,使用接口,应用设计模式等等
    慢慢积累就好
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5789 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 109ms · UTC 02:25 · PVG 10:25 · LAX 19:25 · JFK 22:25
    ♥ Do have faith in what you're doing.