我有一个消息服务,负责将正确的消息推送到UITableView
。其中一些消息是系统消息,尽管它们的内容是通用的,但它们应该例如包含用户名。
当前需要此数据,并且可以通过我的个人资料服务获得。
我一直在尝试为每个API编写服务,但是现在我想知道,我应该将个人资料服务注入消息服务吗?如果我的服务开始不只是与消息对话,我觉得这违反了 SOLID ,但是据我了解,服务不应该依赖于另一个吗?
道歉,我仍然每天都在学习,
答案 0 :(得分:1)
您的Message Service可以调用您的Profile Service,这不会违反任何原则,但是,如果Profile Service中的基础代码发生更改,您的Message Service不会中断。
我不会让您的消息服务与您的Profile API通话。
想象一下,如果您的Profile API的合同或实现发生了变化,那么您的消息服务和Profile Service可能已被破坏。
通过让您的消息服务与Profile Service对话,您可以确保(通过单元/集成测试)对API /服务的任何更改都不会破坏其他服务和视图。