1-6-principle-layering.pdf

    分层原则是将一个系统分成多个相对独立的功能模块
    分层体系在生活中比较常用:
    1、 快递 发-运输- 收
    计算机编译 code compile link execute

    各层只和相邻的上下层进行交流

    每一层利用下层提供的接口和自身的处理逻辑向上提供一个服务
    分层的好处是:
    模块化:
    抽象的比较好的接口
    重用:不需要重新造轮子
    关注点分离:每层只考虑自己的事情,不需要考虑别的层面是如何具体工作的
    持续优化:想优化哪层直接优化,不影响功能
    对等交流:可以看成是对等层之间直接交流

    尽量不要打破分层体系,因为代价比较大,一旦打破了,那么分层提供的这些优点就消失了,
    nat 技术就是一个打破分层的典型