2009-08-07 56 views
4

最近我一直在讨论处理n层体系结构中链接的最佳方法。应该如何完成通信在层之间的n层应用程序?

目前我正在做的方法是引发和处理层之间的异常错误,并使用事件/委托进行其他通信(以更新进度条等)。这些是最好的方法,还是有另一种我忽视的方法会被认为是更好的做法?

+1

澄清你的意思是由n层。按照我的定义,异常不能通过上或下层,因为它们(可能)运行在不同的计算机上,并且您需要某种形式的网络层来处理此类通信。在这种情况下,我期望像RPC这样的答案,针对该问题的消息队列和针对诸如此类的UDP。等等。 – jmucchiello 2009-08-11 18:25:27

回答

1

异常确实是处理低层错误的好方法。

在我看来,当拥有另一个对象的一个​​对象需要定制该对象时,委托是最有用的。如果你的层在逻辑上“拥有”较低层的对象,那么这可能是有意义的,否则,我可能会避开委托模式并使用事件。

1

我会说你在正确的轨道上执行异常处理 - 这就是责任链模式的实现。把这个例外放在链条上总是很好的。至于另一个(事件/代表),我不太了解你的发言,所以不能对此发表评论。

1

我试图使用适配器模式。主要对象位于逻辑层中并使用复合对象进行包装,以便表示层和数据访问层可以工作。大多数演示和数据访问层类都使用接口。包装(复合)对象位于表示层和数据访问层,并实现这些层的接口。

除了复合对象,还有控制器对象可能会从逻辑对象中提取数据并创建新对象(即字符串列表)。

相关问题