2022 年把前公司常用的工具类抽离出来,发布了一个 maven 包,后续一直在持续迭代,但是除了我自己的项目,查看其它项目发现很少有引用这个坐标的,大家对于这种情况都是怎么坚持下去的。 项目链接在这里: https://github.com/mobaijun/kjs-common
|      1metalvest      2023-03-14 07:20:10 +08:00 via Android  3 前公司的东西你给开源了?不吃官司就该知足了。 | 
|  |      2wildnode      2023-03-14 07:21:14 +08:00  1 额…虽然我不是写 Java 的,但是我点了半天没找到文档在哪,wiki 是空的,仓库里挂的链接点进去是你的个人博客,这搁谁谁也不敢用吧… | 
|  |      5msg7086      2023-03-14 07:39:48 +08:00 祈祷一下公司不把你送进去蹲大牢吧。不是核心业务,只是工具类的话,说不定可以少蹲几年。 | 
|  |      6msg7086      2023-03-14 07:42:14 +08:00 如果这个公司是你开的,或者你是有决定权的公司高管,那当我没说。 毕竟「 Kjs-common Copyright 2022-2023 Framer Mo Bai 」你个人拥有所有代码的著作权? | 
|  |      7Juppiter      2023-03-14 07:44:31 +08:00 没签协议的话应该还好吧 应该不会怎么样 | 
|  |      8msg7086      2023-03-14 07:45:42 +08:00 再补一句。 正常情况下,公司项目开源,是以公司项目依赖开源项目的方式进行的。 底层的工具类剥离出来开源,然后公司项目就依赖这个开源项目,那么你这个项目至少也会有一个大客户,也就是公司本身。 哪有单独拉一份出来开源,然后项目继续用内部类的。这样不是白开吗?以后打补丁还要两个项目一起打。什么大病操作。 | 
|  |      10tramm      2023-03-14 07:59:25 +08:00 开源项目不用, 个人可能用的啊, 个人用, 不发布的话仓库不显示使用的. | 
|  |      13mobaijun OP @msg7086 就是 Java 有很多可复用的工具类,比如封装的 string 操作工具类,这些工具类和公司关系不大,任何一个大型项目都会有这样的工具类,并非是和公司项目绑定的 | 
|  |      14L0L      2023-03-14 08:31:15 +08:00 没找到具体的工具类的使用说明 | 
|  |      16beginor      2023-03-14 08:35:33 +08:00 花时间不多的话就继续维护吧, 可以给自己申请个 JetBrains 全家桶的许可 😂 | 
|  |      17Nazz      2023-03-14 08:47:49 +08:00 留着自己用也不错 | 
|  |      18zjp      2023-03-14 08:56:51 +08:00 via Android 这和通不通用没关系。在工作时间用公司电脑写的代码,版权属于公司,公司也是付了工资的 通用只是难取证一点… | 
|      19lllllliiii      2023-03-14 09:02:17 +08:00  1 | 
|  |      20swulling      2023-03-14 09:06:42 +08:00 via iPhone 通用工具库是伪需求,专注于某一个子域的工具库才是真需求。 工具库的编写难度远大于普通库,如上面有人说排序不支持泛型算啥工具库。 | 
|  |      21Vindroid      2023-03-14 09:07:40 +08:00 一个只有 5star 的东西,谁敢用啊。我懒得去审计代码,去找个上千 star 的不是更轻松吗 | 
|  |      22foundyou      2023-03-14 09:09:17 +08:00 和 hutool 比如何啊,有什么特别之处吗,工具类的依赖现在我都是用 hutool | 
|  |      23SmiteChow      2023-03-14 09:15:25 +08:00 不用维护,不会有人关心的。 | 
|  |      24qwertty01      2023-03-14 09:36:30 +08:00 吐槽一下,逛 Github 逛那么久,头一次见版本号用大写的 V | 
|  |      25Felldeadbird      2023-03-14 09:40:20 +08:00 没人用就关掉呗。做开源要学会取舍。 | 
|  |      26hhjswf      2023-03-14 09:48:43 +08:00 人才 | 
|  |      27suanran      2023-03-14 09:53:13 +08:00 开源并不一定非要很多人去用啊,是否维护下去看自己心情,但是我认为是不是有人使用和是不是有人关心你这个项目,和你是否维护,没太大的关联!一些很多人用的项目,不也说停更就停更,你能说对方不负责任吗? | 
|  |      29mobaijun OP @Felldeadbird 是的 | 
|  |      33beichenshao      2023-03-14 10:05:19 +08:00 老哥,下次记得这么说,“是我自己平时写的工具库,在公司项目中用到了,现在开源出来” | 
|  |      34beichenshao      2023-03-14 10:06:59 +08:00 “是我自己闲时写的工具库,在公司项目中用到了,现在开源出来” | 
|  |      35mobaijun OP @beichenshao 学到了 | 
|      36WashFreshFresh      2023-03-14 10:11:22 +08:00 被发现,公司较真还是可以让你赔钱或坐牢的。和业务不业务,通用不通用没关系。只要是在公司写的或者公司发工资让你写的,都是公司的财产,离开公司你没权带走,更别说开源。 | 
|  |      38mumuy      2023-03-14 10:15:29 +08:00 让自己成为第一个用户啊,自己都不用,怎么还能指望别人用呢!自己在项目中应用下去 | 
|  |      40MoYi123      2023-03-14 10:39:34 +08:00 看了点代码, 感觉完全不行, 泛型这些就不说了.  algorithm: 冒泡排序之类的完全没用, 可以直接删了, QuickSort 也没处理最坏情况下 O(n^2), 字符串搜索留一个 BM 就够了, 二分查找通常分成 lower_bound 和 upper_bound, 没找到完全相同的返回-1 不是很好用. bloomfilter: 你对 bloomfilter 的理解有问题, 建议重写. cache: 我没看错的话, 除了接口更少,更不标准, 这个一个普通的 map 有什么区别? 一般来说, cache 自己都会带一个 evict 机制吧. | 
|  |      42icyalala      2023-03-14 10:53:14 +08:00 感觉楼主没有这方面的意识,或者刻意忽略楼上这么多提醒: 工作期间的劳动成果归公司所有,不是你个人的东西,这是写在合同里的 | 
|      43lonewolfakela      2023-03-14 10:57:51 +08:00 呃,抱歉我平时不怎么写 Java ,但是 Java 标准库里没有排序算法么…… | 
|      44webdesigner      2023-03-14 11:05:44 +08:00 via iPhone 我也发布了很多开源,有的几十个赞有的几个,但是我其实不会去关心要不要更新,一般提 issue 我才去解决。 | 
|  |      45nekomiao      2023-03-14 11:13:22 +08:00 起码 readme 里要写上里面有什么工具吧 | 
|  |      46Leonard      2023-03-14 11:14:42 +08:00 via iPhone @icyalala 理论上确实如此,但是很多小公司不管,加上如果代码和公司业务关系不大也难以取证,就不太关注这方面。比如有的人在上班时间做私活,难道会把收益给公司么 | 
|      48lyy780808      2023-03-14 12:13:29 +08:00 感觉这个项目只有练练手的价值,连最基本的单元测试写的都有问题。 就拿这个 HeapSortTest.java 文件来说,都没有预期的结果去校验,怎么能知道排序的结果是正确的呢?你的项目里的单元测试只能测出代码是能跑通的不会抛异常,其他的都测不出来。 |