public abstract class ServiceA<SEAL extends SealServerServiceAbst<F, FPR, FSUP, FGD, FFE, FSTP, FMBF>,
F extends ApplyCommon<FPR, FSUP, FGD, FFE, FSTP, FMBF>,
FPR extends ApplyPartnerCommon<FMBF>,
FSUP extends SubPlanCommon, FGD extends CmContGoodCommon,
FFE extends FileCommon,
FSTP extends StampCommon,
FMBF extends FileCommon,
V extends ApplyCommon<VPR, VSUP, VGD, VFE, VSTP, VMBF>,
VPR extends ApplyPartnerCommon<VMBF>,
VSUP extends SubPlanCommon, VGD extends GoodCommon,
VFE extends FileCommon,
VSTP extends StampCommon, VMBF extends FileCommon>
extends ServiceB< Apply, ApplyMapper>
implements TopService<V, VPR, VSUP, VGD, VFE, VSTP, VMBF> {
// 一些业务逻辑
}
前几天看到其他人写的一段代码,一眼给我看蒙了。 问了他才知道,因为和前端对接使用了 DTO ,FORM 两种参数类型,然后又和其他模块对接,又使用了一种参数类型。 他呢就把这几个参数抽象成泛型,在定义一个的抽象 service 如上,每种 service 处理不同类型的参数。 按我的理解,不管是前端交互还是给其他服务调用,就算参数不一样,一个 service 也能够进行处理啊。 他这个是不是过度设计了?
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.