有什么最大的物联网Azure的集线器设备登记的号码?我找到这篇文章,但仅提供有关消息总数的信息
关于服务设备供应的相同问题。
假设我们有一个Order类和一个方法,其中一些服务执行一系列操作
fun doStuff(order: Order): Order {
val orderByServiceA = serviceA.operationA(order: Order)
val orderByServiceB = serviceB.operationB(orderByServiceA: Order)
val orderByServiceC = serviceC.operationC(orderByServiceB: Order)
return orderByServiceC
}
Run Code Online (Sandbox Code Playgroud)
我创建了一个可以由服务实现的通用接口
interface IOrderService {
fun operation(order: Order): Order
}
Run Code Online (Sandbox Code Playgroud)
于是上面的方法就变成了
fun doStuff(order: Order): Order {
val orderByServiceA = serviceA.operation(order: Order)
val orderByServiceB = serviceB.operation(orderByServiceA: Order)
val orderByServiceC = serviceC.operation(orderByServiceB: Order)
return orderByServiceC
}
Run Code Online (Sandbox Code Playgroud)
此代码中有某种重复,因此下一步是使此函数对扩展开放并对修改关闭。我将IOrderService的所有实例添加到列表中,因此函数会发生如下变化
fun doStuff(order: Order): Order {
orderServices.forEach { service ->
service.operation(order)
}
...
}
Run Code Online (Sandbox Code Playgroud)
这个解决方案非常好,因为如果我想添加另一个实现操作功能的服务,这是很容易做到的。 …