人人学点编程002-谈谈编程思想

作者: 灬52赫兹灬 | 来源:发表于2017-03-19 16:23 被阅读204次

什么叫思想?

1.人的意识经过思维活动产生的结果

2.心里的打算

3.意识形态的;

人类的思想基本都是遵守了某种范式。编程语言也是具有自己的风格或者说是范式。

唠唠面向过程与面向对像

面向过程编程- Process-oriented programming  POP  

面向对像编程 -Object Oriented Programming  OOP

面向过程语言:C语言

面向对像语言:C++、java、C#等等

面向过程编程,以过程上为中心思想。分析问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候分别调用。

面向对像把整个问题分解成对象,对像是某个事物在整个问题步骤中的行为。

面向过程是先有算法,后有数据结构。

面向对象是先有数据结构,然后再有算法

打个比方,比如你去某个地方旅行,面向过程会根据当时的情况做出决定 。

面向对像是在度假的时候就已经做了准备,而不管什么情况都要根据安排去做。

代码说明

大象装冰箱

面向过程

大象装冰箱三个过程,先做什么再做什么

1、把冰箱门打开

2、把大象装进去

3、把冰箱门关上

完成阶段性目标,最终把大象装进去。

C语言演示面向过程装大象 :  

#include <stdio.h>

void openFridges(void){  

//根据需求写其它操作

 printf("打开冰箱门");

}

void ElephantIn(void){ 

//根据需求写其它操作

 printf("大象装冰箱");

}

void closeFridges(void){ 

//根据需求写其它操作

 printf("关上冰箱门");

}

int main()

{

openFridges(); //打开冰箱门

ElephantIn();//装大象

closeFridges();//关上冰箱门

return 0;

}

C#面向对像演示

大象装冰箱每个事件都有一个执行者(大象、冰箱),而它们都有自己的行为

1、冰箱(执行)打开门

2、冰箱(执行)装大象             PS:大象  (执行) 自觉进去

3、冰箱  (执行)关门               PS:   大象   (执行)关上冰箱门

面向对像装大象:

对像:大象、冰箱

行为:

        大象:装进(PS:另一种行为自己滚进去)

          冰箱:打开、关门

         冰箱:打开门、关上门

执行

面向过程相对面向对像优缺点及应用场景

面向过程:

优点:性能比面向对像高

缺点:

1)开销大,消耗资源

2)不易维护、复用性差、扩展性也差

应用领域:应用于看重性能的场景,单片机、嵌入式开发、Linux/Unix等一般采用面向过程开发。

面向对像

优点:

1)结构清晰。

2)面向对像的特征之一封装性,减小外部对内部的影响。

3)易维护、复用性好、扩展性好,有效的减少了维护工作量。

缺点:

1)性能差

2)增加工作量。(大象装冰箱就可以看出增加了编程工作量,而且增加了运行开销)

3)过多的继承,可能会导致存储问题。

应用领域:如数据库系统、交互式界面、应用结构、应用平台、分布式系统、网络管理结构、CAD技术、人工智能等领域。

总结

面向对像比面向过程最大的优势就是扩展性和维护性以及可重复性。在开发过程中,面向对像容易分离,利于团队的分工合作,同时开发降低了项目成本,提高了开发效率。

面向对像与面向过程没有好坏之分,只是思维不同。关键是找到合适的应用领域。

相关文章

  • 人人学点编程002-谈谈编程思想

    什么叫思想? 1.人的意识经过思维活动产生的结果 2.心里的打算 3.意识形态的; 人类的思想基本都是遵守了某种范...

  • 上海的养老问题

    之前facebook出过一个视频,鼓励儿童学习编程,甚至说,人人都应该学点编程。当你百度“人人都应该学。。。...

  • 谈谈对于响应式编程RxJava的理解 - 原理篇

    谈谈对于响应式编程RxJava的理解 - 核心思想篇谈谈对于响应式编程RxJava的理解 - 原理篇 源码分析 我...

  • 谈谈对于响应式编程RxJava的理解 - 核心思想篇

    谈谈对于响应式编程RxJava的理解 - 核心思想篇谈谈对于响应式编程RxJava的理解 - 原理篇 对于RxJa...

  • python面向对象1

    编程思想 编程思想:面向过程编程(穷人思想)、函数式编程、面向对象编程(富豪) 面向过程编程: 算法和逻辑 函数式...

  • Day14 面向对象基础

    一.编程思想 编程思想: 面向过程编程(穷人思想), 函数式编程, 面向对象编程(富豪) 1.求1+...+100...

  • 链式编程思想

    链式编程思想 链式编程思想

  • 人人都应该学点编程

    讲究逻辑,是产品经理的基本要求。如果你是运营,市场,营销人员,会跟产品打交道,最好也要做到这一点。当你跟产品经理沟...

  • 前端思考

    编程语言 编程思想 编程能力 学习能力

  • 寻找“高深术语”中活泼泼的地气

    面向对象的编程思想 编程,很简单,敲代码;思想,也简单,深思细想;编程思想,或者说思想编程,一说就知道难了,难在哪...

网友评论

    本文标题:人人学点编程002-谈谈编程思想

    本文链接:https://www.haomeiwen.com/subject/kispnttx.html