假设我们有一个分析应用程序 (AppX),它允许导入和导出分析文件。我们希望在其中构建一些功能以允许在企业协作平台中共享这些文件,但是我们使用 2 个不同的平台,例如 Jive 和 Workplace。
虽然这有点主观,但我想看看这个模型是否符合 OO 概念的约定?
1 - 我们interface CollaborationService
定义了必须实现的方法才能实现全部功能。
2 - 我们有 abstract class DefaultCollaborationService implements CollaborationService
一些操作的默认实现。
3 - 我们有 aclass WorkplaceCollaborationService extends DefaultCollaborationService
和 a class JiveCollaborationService extends DefaultCollaborationService
,每个都有自己的方法,它们覆盖 Default 抽象类中的方法。
或者..
这是否更好:
2 - abstract class DefaultCollaborationService
- 注意,没有链接到接口,所以我们不必实现所有东西
3 -class WorkplaceCollaborationService implements CollaborationService extends DefaultCollaborationService
和class JiveCollaborationService implements CollaborationService extends DefaultCollaborationService
或者..
这一切都不对吗,您可以提出更好的方法吗?