这种现象在所有的面向对象工程中都会遇到,在我们编码时,对一般的对象比如mvc的,我们可以把写好的类文件放到相应的model view controller包里面去。但是对于一些共用类就不那么好处理了,比如一些工具类,或者是共用对象,你对它一个类命名一个软件包吧好像有点浪费,但是他们之间又确实没啥关联。
很常用的做法是全部放到一个类似util的包里,但是最近看到一篇文章说这样过于简单粗暴,而且其他人也不好理解这样的分层,不知道各位是怎么处理这个问题的。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
对于这种问题,没有什么硬性规定,重要的是团队内部必须形成规范,且团队的每个成员必须遵守这个规范,这样的话,就会降低新加入成员的熟悉成本。
我们团队内部对于项目公用的一些工具类(类似StringUtils,CollectionUtils等),也会以Util打成包;对于一些模块内部的共用对象,如果是一些enum类,则会以enums打成包;如果是一些模块(例如module1等)内部层与层之间的对象,则会先以dto命名包,再将其放入用其模块名命名的子包内,对于一些模块之间共用的对象,放入common命名的子包,其他共用的类,也会类似的先按照业务功能命名包名,然后在包内,按照不同模块划分子包。
最后一点重要的还是形成并遵守规范。