该应用程序是一个从不同来源收集相同类型数据的解析器。
也就是说,应用程序的主要实体将始终具有相同的方法和属性。只有需要解析此数据的来源会有所不同。
应用程序本身必须作为 API 实现。
从客户端,将收到请求以从特定来源获取列表,可能是在特定来源中的搜索。
我看到的第一个问题是要解析的数据非常不稳定。那些。如果明天其中一个来源的布局发生变化,一切都会中断,您将需要编辑代码。因此,该提议应该易于维护。目前我有两个想法:
- 实现一个抽象类,在其中描述实体+搜索数据的抽象方法。从该类继承所有其他类并描述每个单独源的搜索方法
- 单独实现一个类,该类将使用与业务逻辑相关的方法来描述实体,并为每个源单独实现存储库类。就像它在交响乐中的实现方式一样。
哪种方法更好?也许还有一些我不知道的其他概念?
我认为您需要先实施第二个想法。并且当积累了关于不同来源的足够数据时,就有可能(“结晶”)实现第一个通用变体。
或者收集有关数据处理的每个来源和方法的足够信息,并实施第一个选项。但一开始并不容易。