设计模式优缺点及应用场景