生活中的面向对象

面向对象思想

感悟:要想成为合格工程师,必须拥有面向对象思维

初级工程师和高级工程师以及架构师最大的区别就是等级越高看问题的角度就不一样,犹如初级工程师写系统完全就是面向过程 if else写满整个类,而且类之间的耦合性很大,不好维护,牵一发而动全身,扩展性很不好。他们站在角度就是能完成功能需求,但是高级工程师以及架构师站在项目角度,考虑未来需求变化和如何做到可维护性、可复用、可扩展(当然这里从代码层面,还有就是从系统架构层面考虑后面单设栏目进行分析)。

面向对象特性

  • 封装
  • 继承
  • 多态

封装

将独立模块(可能是独个方法或多个类,甚至一个系统)逻辑封装起来,便于复用,维护。

尽量让依赖方知道的越少越好,将复杂逻辑封装在一个类中的方法中或模块中。 例如根据需要传入对应的参数,然后获取相应的结果,获取结果过程我们并不care,我只想要结果是什么,复杂的逻辑封装起来就好。

继承

将公共逻辑(包括属性、方法)放在一个父类中,然后不同的子类继承父类重写其方法,因此有不同的表现。依赖方只需要拿到抽象父类,并不需要知道具体实现类,降低模块之间的耦合性。

出现父类的地方一定可以被其他子类替换掉,这个就是后面讲到的面向对象四大设计原则中的里氏替换原则

多态</

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值