
课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
随着互联网的不断发展,越来越多的人都在学习计算机编程开发技术,而今天我们就通过案例分析来了解一下,软件开发设计模式应用与原则分析。
1、设计模式使用的位置
功能模块+框架上。
设计模式在软件中哪里?面向对象(oo)=>功能模块[设计模式+算法(数据结构)]=>框架[使用到多种设计模式]=>架构[服务器集群]
2、设计模式的目的
为了让程序(软件),具有更好的以下效果:
代码重用性(即:相同功能的代码,不用多次编写)
可读性(即:编程规范性,便于其他程序员的阅读和理解)
可扩展性(即:当需要增加新的功能时,非常的方便,称为可维护)
可靠性(即:当我们增加新的功能后,对原来的功能没有影响)
使程序呈现高内聚,低耦合的特性
3、设计模式原则
也就是说一个类只负责一项职责,降低类的复杂度,就像经济学里的分工提高效率一样。
降低类的复杂度,一个类只负责一项职责。
提高类的可读性,可维护性
降低变更引起的风险
通常情况下,我们应当遵守单一职责原则,只有逻辑足够简单,才可以在代码级违反单一职责原则;只有类中方法数量足够少,可以在方法级别保持单一职责原则
接口隔离原则
客户端不应该依赖它不需要的接口,即一个类对另一个类的依赖应该建立在小的接口上。比如如果一个接口过大,里面并不是所有的方法都是我们想要的,这时候我们就要对这个接口进行拆分,分成多个接口,然后只依赖于我们需要的接口。
依赖倒置原则
也就是说面向接口编程,高层与低层间的依赖是接口或抽象类,形成一个缓冲区,有利于程序的扩展和优化。
高层模块不应该依赖低层模块,二者都应该依赖其抽象
抽象不应该依赖细节,细节应该依赖抽象
依赖倒置的中心思想是面向接口编程
依赖倒转原则是基于这样的设计理念:相对于细节的多变性,抽象的东西要稳定的多。以抽象为基础搭建的架构比以细节为基础的架构要稳定的多。在java中,抽象指的是接口或抽象类,细节就是具体的实现类
使用接口或抽象类的目的是制定好规范,而不涉及任何具体的操作,把展现细节的任务交给他们的实现类去完成
依赖倒置原则的注意事项
高层模块也就是指调用者,低层模块指被调用者。抽象指接口或抽象类,而细节指具体的实现类。
接口和抽象类的价值在于设计,也就是自上而下的设计,设计好了再开发。
低层模块尽量都要有抽象类或接口,或者两者都有,程序稳定性更好.
变量的声明类型尽量是抽象类或接口,这样我们的变量引用和实际对象间,就存在一个缓冲层,利于程序扩展和优化
里氏替换原则
里氏替换原则告诉我们如何正确的使用继承,表达的意思是一个子类应该可以替换掉父类并且可以正常工作。要达到这样的目的,在使用继承时,要遵循里氏替换原则,在子类中尽量不要重写父类的方法,重写了也要使子类可以替换父类可以正常工作,而两个类如果不是必要就不要通过继承来产生联系,继承实际上让两个类耦合性增强了,在适当的情况下,(原来的父类和子类都继承一个更通俗的基类,原有的继承关系去掉)通过聚合,组合,依赖来解决问题。另一方面,由于有了里氏替换原则,才使得开发-关闭有了可能,因为子类的可替换性使得使用父类类型的模块在无需修改的情况下就可以扩展。
开闭原则
开闭原则(OpenClosedPrinciple)是编程中基础、重要的设计原则
一个软件实体如类,模块和函数应该对扩展开放(对提供方),对修改关闭(对使用方)。用抽象构建框架,用实现扩展细节。
当软件需要变化时,尽量通过扩展软件实体的行为来实现变化,而不是通过修改已有的代码来实现变化。
编程中遵循其它原则,以及使用设计模式的目的就是遵循开闭原则。
【免责声明】:本内容转载于网络,转载目的在于传递信息。文章内容为作者个人意见,本平台对文中陈述、观点保持中立,不对所包含内容的准确性、可靠性与完整性提供形式地保证。请读者仅作参考。更多内容请加danei0707学习了解。欢迎关注“达内在线”参与分销,赚更多好礼。