使用设计模式是为了重用代码、让代码更容易被他人理解、保证代码可靠性