SOLID - marmot-cn/marmot-framework GitHub Wiki SOLID 单一职责(SRP) 开放封闭(OCP) 依赖倒置(DIP) 里氏替换(LSP 接口分离(ISP)