通用代码生成器生成的接口带着I,这是规范吗,怎么不带I呢?

Blade 已结 2 920
捷睿
捷睿 2021-12-29 10:57
悬赏:5

一、该问题的重现步骤是什么?

1. 通用代码生成器生成的接口带着I,这是规范吗,怎么不带I呢?

2. 生成的Service,比如正常是AbcService,现在是IAbcService,怎么去掉I呢?

3.


二、你期待的结果是什么?实际看到的又是什么?


三、你正在使用的是什么产品,什么版本?在什么操作系统上?

bladex cloud 2.5

四、请提供详细的错误堆栈信息,这很重要。


五、若有更多详细信息,请在下面提供。

2条回答
  •  admin
    admin (楼主)
    2021-12-29 11:08

    这个也不能算是规范,可以算是大部分人的习惯,比如IUserService,"I"代表的是Interface,也就是接口类的意思。

    他的实现类就变成了UserServiceImpl,"Impl"代表给"I"的实现。

    还有纯粹的UserService命名,一般是有别的用处,比如可以用来统筹IUserService和UserServiceImpl,做一个综合的业务总处理类。这个综合处理类除了引入自家的IUserService外,可能还会引入其他的service,这样也就直接解决了多个service之间循环依赖的问题。

    除了数据库层操作,可能还会涉及到大数据处理等等其他中间件的service,这些都可以放到统筹的UserService内。所以我们数据库层的操作,加一个I,统筹的更复杂的才不加I。

    最后把UserService做成component,然后给controller引入,如果业务不够复杂,直接引入IUserService就行。

    当然这些都是可以自由定义的,可以按照公司规定来统一命名。

提交回复