[干货满满] 给大家分享个 Java 工具库,绝对能提高你的工作效率

2020-05-26 12:49:21 +08:00
 17701762115

详见: https://github.com/LJWLgl/CommonUtil

5034 次点击
所在节点    程序员
40 条回复
17701762115
2020-05-26 19:17:34 +08:00
@KentY 首先感谢你中肯的评价,这个项目我个人觉得确实想一个 best-practise 。你建议中的 test coverage 方面,需要说明一下,该项目大都工具类我都已经其他项目实践过,unit test 也是全 cover 了。当然对你的其他建议,我也会结合项目来做改动,最后,十分感谢你能认真阅读我的代码,同时给出了很好建议。
anyele
2020-05-26 19:23:35 +08:00
hutool 不香? 而且为啥用拿 guava 这些库比较,你没看名字带有 Google Apache 吗
KentY
2020-05-26 19:43:40 +08:00
@17701762115 我并没认真读你的代码, 只是看了几个 class, 比如那个 DateUtil and the DecimalUtil, 就看到哪说哪. 也不一定对. 反正学习呗.
- 还有我刚忘了是 DecimalUtil 里还有个 public main, 只是把 void 改成了 int 返回个 0, 不知道是啥意思?
- 你对"best-practice"这个短语的理解可能有误 我猜你想说"一个好的练习场" 但是那个短语不是这个意思.
- test 我没看, 只是前面评论说你 coverage 不全. static methods 还挺好 test 的.
CismonX
2020-05-26 20:22:03 +08:00
刚点开 README 就发现一个 typo

> getCurrentDate(),获取当期日志,只包含日期
Kilerd
2020-05-26 20:25:13 +08:00
https://github.com/LJWLgl/CommonUtil/blob/master/src/main/java/io/github/ljwlgl/util/NetworkUtil.java#L91

就单从获取 ip 这个 load 的方法,我就质疑这东西的实用性。 吞掉了所有 Exception,还 sout 出来一个字符串。
17701762115
2020-05-26 20:41:36 +08:00
NetworkUtil 是参考了 Cat 内部的实现,我没有做过多的改动,后面我重新梳理一下,把该抛出的异常都会抛出,当然,开源的一部分目的就是接受大家质疑和批评,然后去不够改进,所以多谢你的意见。
17701762115
2020-05-26 20:42:18 +08:00
@Kilerd
NetworkUtil 是参考了 Cat 内部的实现,我没有做过多的改动,后面我重新梳理一下,把该抛出的异常都会抛出,当然,开源的一部分目的就是接受大家质疑和批评,然后去不够改进,所以多谢你的意见。
17701762115
2020-05-26 20:48:02 +08:00
@KentY
- public main 应该测试代码,后面我会移除
- best-practice 你可以理解成最佳实践,是将重要而又通用的东西独立出来
- 是的,静态方法都不需要 mock
17701762115
2020-05-26 20:49:46 +08:00
@warcraft1236 unit test 我会逐步完善,不过这些我都是在其它项目实践过的,可以放心使用
17701762115
2020-05-26 20:53:24 +08:00
@luckyrayyy 哈哈,有志青年应该能提个锤去造轮子,至少能发现发现轮子是这么个造法。另外,此项目还是在初期,如果大家能经验所得一起投入这个项目中,这事还是很有意思的
17701762115
2020-05-26 20:58:58 +08:00
@CismonX 需获取到秒可以通过
DateUtil.stringToDate(DateUtil.dateToString(Calendar.getInstance().getTime(), DateUtil.YYYYMMDDHHMMSS))
来实现,有臃长,后面我会提供一个 method 出来
17701762115
2020-05-26 21:00:48 +08:00
@xiaofan2 哎😌
echooo0
2020-05-26 22:23:44 +08:00
作者别灰心,能把轮子造好本身也是一种能力,加油
17701762115
2020-05-26 23:19:57 +08:00
@echooo0 哈哈,谢谢了,我会把这个项目做好的
chihiro2014
2020-05-26 23:32:10 +08:00
说 guava 也好,hutool 也罢。你们难道不知道 Spring 自带工具类么!!!
yiyi11
2020-05-27 02:03:39 +08:00
没用过 hutool,想了解的时候对 hutool 有个不好的印象,它的项目的 issue 打开数量极少,关闭时间很快。容我冒犯地说一句,就算是开源项目,但这种做法未免有点功利。
mikulch
2020-05-27 08:04:35 +08:00
@0x666666 第一次听说,我也去看看。
JRay
2020-05-27 09:31:55 +08:00
hutool 最近在用,很舒服啊
ChanKc
2020-05-27 09:46:56 +08:00
做工具类也不是不可以,建议做完后拿 guava,Apache 甚至 openJDK 来对答案…这样就知道自己哪里做得不好了
17701762115
2020-05-27 13:19:47 +08:00
@ChanKc 是的,Guava 里面代码思想都可以借鉴

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/675564

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX