关于Java面向对象程序设计原则之一——开闭原则的思考与分享-创新互联

整理日期:2022-05-27

让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:域名与空间、虚拟主机、营销软件、网站建设、孙吴网站维护、网站推广。

目录

一.开闭原则

二.为什么使用开闭原则

三.如何在程序设计中体现开闭原则


一.开闭原则

开闭原则(Open-Closed Principle, OCP)是指一个软件实体如类、模块和函数应该对扩展开放, 对修改关闭。所谓的开闭,也正是对扩展和修改两个行为的一个原则。强调的是用抽象构建框架,用实现扩展细节。可以提高软件系统的可复用性及可维护性。开闭原则,是面向对象设计中最基础的设计原 则。它指导我们如何建立稳定灵活的系统,例如:我们版本更新,我尽可能不修改源代码,但是可以增 加新功能。

二.为什么使用开闭原则

1.开闭原则非常有名,只要是面向对象编程,在开发时都会强调开闭原则

2.开闭原则是最基础的设计原则,其它的五个设计原则都是开闭原则的具体形态,也就是说其它的五个设计原则是指导设计的工具和方法,而开闭原则才是其精神领袖。

3.开闭原则可以提高复用性

在面向对象的设计中,所有的逻辑都是从原子逻辑组合而来,不是在一个类中独立实现一个业务逻辑。只有这样的代码才可以复用,粒度越小,被复用的可能性越大。那为什么要复用呢?减少代码的重复,避免相同的逻辑分散在多个角落,减少维护人员的工作量。那怎么才能提高复用率呢?缩小逻辑粒度,直到一个逻辑不可以分为止。

4.开闭原则可以提高维护性、扩展性

一个程序、一款软件量产后,维护人员的工作不仅仅对数据进行维护,还可能要对程序进行扩展,维护人员最乐意的事是扩展一个类,而不是修改一个类。让维护人员读懂原有代码,再进行修改,是一件非常痛苦的事情,不要让他在原有的代码海洋中游荡后再修改,那是对维护人员的折磨和摧残。

5.面向对象开发的要求

万物皆对象,我们要把所有的事物抽象成对象,然后针对对象进行操作,但是万物皆发展变化,有变化就要有策略去应对,怎么快速应对呢?这就需要在设计之初考虑到所有可能变化的因素,然后留下接口,等待“可能”转变为“现实”。

三.如何在程序设计中体现开闭原则

以学生信息管理系统为例。在运用多态改进代码时,此时的对扩展开放:如增加一个新的学生类型,比如小学生、中学生。我们只需要另外设计出小学生类、中学生类,使这两个类继承学生类,并重写学生类中的抽象方法;对修改关闭:关闭的是对抽象的学生类的改变,当然如果另外设计了某些功能接口的话,对接口的修改也是关闭的。从整体上看,增加或修改的模块对其他部分代码并没有很大的影响,即其他部分代码不需要做出较多的改动。这也是代码易扩展、易维护的重要体现。

当未使用多态时,地址类的设计同样可以体现开闭原则,因为地址类作为一个相对独立的类,还可以复用在其他地方得到扩展,此时对地址类的具体细节的修改是关闭的。

其实这样的编程思想可以很好的运用在面向对象程序设计的完成上(个人理解),如可以设计一个问卷调查、测评系统,又或是一个常规的管理系统。对扩展开放(可扩展部分):可以增加问卷调查的类型、问卷调查的对象或管理系统的操作对象。对修改关闭(核心部分):关闭对抽象类的修改、对功能接口的修改等。这样也能很好的提高代码的可扩展性及可维护性。

分享结束,感谢阅读!

水平有限,恳请指教~

你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧

网站名称:关于Java面向对象程序设计原则之一——开闭原则的思考与分享-创新互联
分享链接:https://www.cdcxhl.com/article2/ddigic.html

成都网站建设公司_创新互联,为您提供网站建设用户体验移动网站建设关键词优化网页设计公司网站内链

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

搜索引擎优化