面对对象的七大设计原则和面对对象的三大特性之初学

前言

为啥我要起名叫初学呢 其实我目前写的博客其实就是自己的一些归纳,很少参有自己的思想,所以我起名叫初学,估计对于初学者来说会有点用吧 而我自己也仅仅是当做一个笔记来写博客,毕竟不是科班出身,自学还是要靠点努力的,尽管这样我还是会尽总结量总结好点吧,也许有很多的不足 但是大佬们不喜勿喷,
面对对象是啥呢 他是一种思想 我们常听人说 做开发做久了 思想就会越来越重要,但是对于我们刚学的人来说 这种体会确实很少 因为我每天要学新的知识 而学一个新的知识 我不可能说直接去解剖它的内在美 去学它的思想 ,看山是山,我只能说去学会怎么去用 走都不会 就想跑的话那毕竟是很难得 ,但是闲暇之余 我们还是去了解一下 只是了解 就像我写这篇文章 我相信3年后 5年后之后来看 肯定自己都会觉得好玩,哈哈**。有道无术,术尚可得**,只要你有这种思想 框架这种东西 这种术 总是可以熟练掌握的,只是时间问题了,但是有术无道,止于术也,如果你只是一味的会去用这个工具 而不去学习里面核心的思想 ,那么我觉得你的技术的路也就那么远了,我一个初学者尚能如此,所以大家只要愿意学习 我觉得大部分人这个东西会慢慢觉得容易 不管是道还是术 其实也是一个相辅相成的东西 从小就一直听老人说 书读百遍 其意自现 所以我觉得每个人都可以学好编程 每个人都有做好世界上觉大多数事件 只是看各人的自己怎么选了 哈哈 扯淡很多 接下来让我们进入主题

面对对象之七大设计原则((口诀)开口合里最单依)

开闭原则

面向扩展开放,面向修改关闭(Software entities like classes,modules and functions should be open for extension but closed for modifications)

  1. 这一条可是它的核心 其他的原则都是围绕着它来展开的,其它的是对它的补充。依照Java语言的称谓,开闭原则是抽象类,其他五大原则是具体的实现类
  2. 开闭原则对测试的影响,新增加的类,新增加的测试方法,只要保证新增加类是正确的就可以了。
  3. 开闭原则可以提高复用性 在面向对象的设计中,所有的逻辑都是从原子逻辑组合而来的,而不是在一个类中独立实现一个业务逻辑。只有这样代码才可以复用,粒度越小,被复用的可能性就越大。那为什么要复用呢?减少代码量,避免相同的逻辑分散在多个角落,避免日后的维护人员为了修改一个微小的缺陷或增加新功能而要在整个项目中到处查找相关的代码,然后发出对开发人 员“极度失望”的感慨。那怎么才能提高复用率呢?缩小逻辑粒度,直到一个逻辑不可再拆分
    为止。
  4. 开闭原则可以提高可维护性,一款软件投产后,维护人员的工作不仅仅是对数据进行维护,还可能要对程序进行扩展,维护人员最乐意做的事情就是扩展一个类,而不是修改一个类,甭管原有的代码写得多么优秀还是多么糟糕,让维护人员读懂原有的代码,然后再修改,是一件很痛苦的事情,不要让他在原有的代码海洋里游弋完毕后再修改,那是对维护人员的一种折磨和摧残。
  5. 万物皆对象,我们需要把所有的事物都抽象成对象,然后针对对象进行操作,但是万物皆运动,有运动就有变化,有变化就要有策略去应对,怎么快速应对呢?这就需要在设计之 初考虑到所有可能变化的因素,然后留下接口,等待“可能”转变为“现实”。

接口隔离原则

The dependency of one class to another one should depend on the smallest possible interface.(类间的依赖关系应该建立在最小的接口上。)

  • 在讲接口隔离原则之前,先明确一下我们的主角——接口。接口分为两种:
    ● 实例接口(Object Interface),在Java中声明一个类,然后用new关键字产生一个实 例,它是对一个类型的事物的描述,这是一种接口。比如你定义Person这个类,然后使用 Person zhangSan=new Person()产生了一个实例,这个实例要遵从的标准就是Person这个 类,Person类就是zhangSan的接口。疑惑?看不懂?不要紧,那是因为让Java语言浸染的时间 太长了,只要知道从这个角度来看,Java中的类也是一种接口。
    ● 类接口(Class Interface),Java中经常使用的interface关键字定义的接口。

  • :建立单一接口,不要建立臃肿庞大的接口。再通
    俗一点讲:接口尽量细化,同时接口中的方法尽量少
    ● 一个接口只服务于一个子模块或业务逻辑;

后面的以后再写 写不下去目前

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值