我知道当您将Web服务与直接代码进行比较时,性能可能会成为问题。但随着SOA的兴起,我不得不怀疑我是否应该计划将我的应用程序中的每个业务对象都放到Web服务中,无论是WCF还是.asmx。
对.NET 4中的WCF的改进肯定让我给予了第二次看。
答案 0 :(得分:5)
无论“未来”,酷炫的新技术等,一个原则永远不会过时:简单。
我的一般方法是尽可能简化事情。我们今天拥有的开发工具使得在需要时将普通业务对象“升级”为Web服务非常容易。
盒子里面少了几根不需要的电线。加上免费的性能提升:)
答案 1 :(得分:0)
无论教条如何,答案都是正确的答案“它有意义吗?”
将Employee
业务对象作为服务提供是否有意义?可能是吧。将您的WarehouseShelfLocationArchive
业务对象作为服务提供是否有意义?也许不吧。如果没有,这样做是愚蠢的,因为它很时尚。
答案 2 :(得分:0)
@gabe是对的,你需要确保制作对象服务是有道理的。但是,我也发现,一旦你构建了一个服务,其他人就会消费它。我在我写的服务中一遍又一遍地看到这一点:“如果你建造它,它们就会来。”
答案 3 :(得分:0)
SOA是关于与其他独立系统交谈的独立系统。如果您有一个系统需要了解另一个系统的操作或数据的情况,那么服务可能就是答案,但并非您创建的每个对象都不需要通过服务来使用。所有其他人都完全正确。是否有意义?这很简单吗?