依赖注入
定义
实现方式
// 定义协议
protocol ServiceProtocol {
func performService()
}
// 实现协议
class ServiceA: ServiceProtocol {
func performService() {
print("Service A is performing a service")
}
}
// 需要依赖 ServiceProtocol 的类
class Consumer {
private let service: ServiceProtocol
// 构造函数注入依赖
init(service: ServiceProtocol) {
self.service = service
}
func execute() {
service.performService()
}
}
// 使用
let serviceA = ServiceA()
let consumer = Consumer(service: serviceA)
consumer.execute()优点
缺点
总结
Last updated