第一周课程小结

一、面向过程

面向过程就是面向解决问题的过程进行编程。我们在学习和工作中,当我们去实现某项功能或完成某项任务时,会不自觉的按部就班的罗列出我们要做的事情。而当我们按着我们罗列的步骤去解决问题时,实质上就是按照面向过程的思想去解决问题。我们罗列的步骤就是过程,按照步骤解决问题就是面向过程。

传统的面向过程的编程思想总结起来就是自顶向下,逐步细化!实现步骤如下:

将要实现的功能描述为一个从开始到结束按部就班的连续的步骤(过程);
依次逐步完成这些步骤,一直到结束得到想要的结果;
程序的主体是函数,一个函数就是一个封装起来的模块,可以实现一定的功能,各个子步骤往往就是通过各个函数来完成的,从而实现代码的重用和模块化 编程! 二、面向对象
面向对象,就是在编程的时候去模拟真实的现实世界,按照现实世界中的逻辑去处理一个问题,分析问题中参与其中的有哪些实体,这些实体应该有什么属性和方法,我们如何通过调用这些实体的属性和方法去解决问题。实体就是动作的支配者。

因为任何功能的实现都是依赖于一个具体的实体的“动作|操作|行动”,可以看作是一个又一个的实体在发挥其各自的“能力”并在内部进行协调有序的调用过程!

当采用面向对象的思想解决问题时,可分为下面几步:

分析哪些动作是由哪些实体发出的;
定义这些实体,为其增加相应的属性和功能;
让实体去执行相应的功能或动作。
三、面向对象与面向过程的比较
  面向过程简单直接,易于入门理解,模块化程度较低。而面向对象相对于面向过程较为复杂,不易理解,模块化程度较高。可总结为下面三点:

都可以实现代码重用和模块化编程,但是面对对象的模块化更深,数据更封闭,也更安全!因为面向对象的封装性更强!
面对对象的思维方式更加贴近于现实生活,更容易解决大型的复杂的业务逻辑
从前期开发角度上来看,面对对象远比面向过程要复杂,但是从维护和扩展功能的角度上来看,面对对象远比面向过程要简单!
  当我们的业务逻辑比较简单时,使用面向过程能更快的实现。但是当我们的业务逻辑比较复杂时,为了将来的维护和扩展,还是面向对象更为靠谱点!

复用性:未来对该代码部分功能的再次使用性
维护性:代码出现错误后对代码进行改进的难易度
扩展性:对于已经写了部分的代码想要添加一些功能的难易度

面向结构的语言(C语言):复用性差、维护性差、扩展性差。
面向对象的语言(C++):复用性好、维护性好、扩展性好。(保证了代码功能的独立性)

如何用C语言实现面向对象?——Linux内核

C++学习网站: https://ch.cppreference.com/

面向对象VS面向过程:
对于同一个问题的解答:
面向过程,是把问题分成个过程,然后按一定顺序执行
面向对象,是把这个过程看作是对象之间的相互作用关系

例:小明用钥匙开门,然后开灯
面向过程:分解成2个过程,开门、开灯。
面向对象:分解成4个对象,人、钥匙、门、灯。

面向对象的三大特点:
封装:提高代码的维护性
继承:提高代码复用性
多态:提高代码的扩展性

C++之父:Bjorne Strostrup
C++是在C语言的基础上对语法进行了升级

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值