A.应在代码中多使用抽象接口,避免使用那些多变的具体实现B.不要在具体实现类上创建衍生类C.不要覆盖包含具体实现的函数D.应避免在代码中写入与任何具体实现相关的名字,或者其他容易变动的事物的名字
A.任何一个软件模块只能有一个被修改的原因B.设计良好的计算机软件应该易于扩展,同时抗拒修改C.在一般情况下,任何层次的软件设计如果依赖于不需要的东西,都会是有害的D.DIP原则想告诉我们的是,如果想要设计一个灵活的系统,在源代码层次的依赖关系中就应该多引用抽象类型,而非具体实现
A.引用抽象类型B.引用具体实现C.引用其他工具类D.写高质量代码