java如何在服务类和util类之间拆分应用程序函数?
我们使用spring框架,遇到了如下情况:
我们有一些服务类,比如CatalogManager、CourseManager,我们现在希望它们有一些函数,比如parseXML
我的问题是,我是否应该将这些方法放入每个单独的类中,例如CatalogManager或CourseManager中的parseXML方法?或者我们应该创建一个XMLUtil类,并在此类中创建parseCatalogXMl和parseCourseXML之类的方法
谢谢
# 1 楼答案
这取决于
parseXML()
将要做什么案例1:如果所有的
parseXML()
方法都将执行相同的操作,那么您应该拥有另一个具有一个parseXML()
方法的类。为什么?它避免了不必要的重复,更易于更新,并且更易于扩展案例2:如果所有的
parseXML()
方法都不同(主要不是几行),那么在每个类中实现该方法会更容易。为什么?试图将多种不同的方法结合在一起既复杂又丑陋案例3:创建具有
parseXML()
方法的CatalogManager
和CourseManager
的超类。然后,如果子类需要用这个方法做一些不同的事情,它可以简单地重写它您应该使用哪一种最终的解决方案是最可取的,因为它结合了前两种方法的优点,使您的代码保持简单、可扩展、可读和可更新。但如果前两种情况中的一种严格适用,则应改用这两种情况
您的类结构如下所示:
这最终是你的决定。没有一个案例比任何其他案例都快,只要选择一个你想要的