我有点困惑应该在哪些情况下使用这些模式,因为从某种意义上说,它们似乎与我相似?
我理解分层是在系统复杂的情况下使用的,可以按照层次来划分,所以每一层都有不同层次的功能,使用较低层次的功能,同时将其功能暴露给较高层次等级。
另一方面,Pipe-and-Filter 是基于处理数据的独立组件,并且可以通过管道连接,因此它们构成一个执行完整算法的整体。
但是如果层次结构不存在,那么模块的顺序是否可以改变?
一个让我困惑的例子是编译器。这是一个管道和过滤器架构的例子,但是如果我没记错的话,一些模块的顺序是相关的?
一些澄清事情的例子会很好,以消除我的困惑。提前致谢...