可以方便的进行功能模块的新增/移除，提供代码/模块级别良好的可扩展性。

模块化，组件化：高内聚，内耦合，提高复用性，扩展性。

稳定接口：定义稳定的接口，在接口不变的情况下，内部结构可以“随意”变化。

设计模式：应用面向对象思想，原则，使用设计模式，进行代码层面的设计。

消息队列：模块化的系统，通过消息队列进行交互，使模块之间的依赖解耦。

分布式服务：公用模块服务化，提供其他系统使用，提高可重用性，扩展性。