http://blog.csdn.net/hjf19790118/article/details/6919578

面向过程 → 面向对象 → 面向组件 → 面向服务

约翰·巴库斯(John Backus)

FORTRAN语言创始人


尼古拉斯·沃思(Niklaus Wirth)

结构化编程思想的创始人

从IBM公司的约翰·巴库斯在1957年开发出世界上第一个高级程序设计语言Fortran至今,高级程序设计语言的发展已经经历了整整半个世纪。在这期间,程序设计语言主要经历了从面向过程(如C和Pascal语言)到面向对象(如C++和Java语言),再到面向组件编程(如.NET平台下的C#语言),以及正在快速发展的面向服务架构技术(如SOA和WebService)。

◆  面向过程编程

结构化编程思想的核心:功能分解(自顶向下,逐层细化)。

结构化编程思想主要是将一个大的问题划分为几个小的问题,再将几个小的问题划分为更小的问题,我们解决大问题非常困难,但是解决划分后的最小的问题却比较容易。

面向过程编程把编程任务划分成一个一个的步骤,然后按照步骤分别去执行。其中每完成一个步骤就像是完成一个任务中的单个过程一样。

尼古拉斯·沃思(Niklaus Wirth):结构化编程思想的创始人。因发明了Euler、Alogo-W、Modula和Pascal等一系列优秀的编程语言并提出了结构化编程思想而在1984年获得了图灵奖。

尼古拉斯· 沃思教授在编程界提出了一个著名的公式:

程序 = 数据结构 + 算法

 

阿伦·凯(Alan Kay)

面向对象编程思想的创始人

◆  面向对象编程

面向对象编程思想的核心:应对变化,提高复用。

面向对象编程思想主要是复用性和灵活性(弹性)。复用性是面向对象编程的一个主要机制。灵活性主要是应对变化的特性,因为客户的需求是不断改变的,怎样适应客户需求的变化,这是软件设计灵活性或者说是弹性的问题。

阿伦·(Alan Kay):面向对象编程思想的创始人。2003年因在面向对象编程上所做的巨大贡献而获得图灵奖。

阿伦·凯:麻省理工学院的院长。阿伦·凯是Smalltalk面向对象编程语言的发明人之一,也是面向对象编程思想的创始人之一,同时,他还是笔记本电脑最早的构想者和现代Windows GUI的建筑师。最早提出PC概念和互联网的也是阿伦·凯,所以人们都尊称他为“预言大师”。他是当今IT界屈指可数的技术天才级人物。

面向组件和面向服务

面向组件:

我们知道面向对象支持重用,但是重用的单元很小,一般是类;而面向组件则不同,它可以重用多个类甚至一个程序。也就是说面向组件支持更大范围内的重用,开发效率更高。如果把面向对象比作重用零件,那么面向组件则是重用部件。

面向服务:

将系统进行功能化,每个功能提供一种服务。现在非常流行WebService技术以及SOA(面向服务架构)技术。

面向过程(C)→面向对象(Java)→面向组件(C#)→面向服务(WebService)

从面向过程到面向对象相关推荐

  1. java面向过程和面向对象

    面向过程(Procedure Oriented):说的是功能的行为 面向对象(Object Oriented,简称OO):说的是功能的对象 面向过程理解: 当学习java的时候先了解java语言优良的 ...

  2. java知识点7——面向过程和面向对象、面向对象的内存分析、构造方法

    面向过程和面向对象 解决简单问题可以使用面向过程 解决复杂问题:宏观上使用面向对象把握,微观处理上仍然是面向过程. 面向对象具有三大特征:封装性.继承性和多态性,而面向过程没有继承性和多态性,并且面向 ...

  3. 面向过程与面向对象编程的区别和优缺点

    ■面向过程与面向对象编程的区别 转载至:https://www.cnblogs.com/strivers/p/6681876.html 面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步 ...

  4. 面向过程和面向对象编程的优缺点

    [1]面向过程和面向对象的比较 网上发现了一篇文章,说了一下OP与OO的不同,并且打了一个比喻,通俗易懂. 有人这么形容OP和OO的不同:用面向过程的方法写出来的程序是一份蛋炒饭,而用面向对象写出来的 ...

  5. (转)函数作用域,匿名函数,函数式编程,面向过程,面向对象

    函数作用域 ? 1 2 3 4 5 6 7 8 9 10 def first():     name = 'Wangben'     def second():         name = 'Men ...

  6. 面向过程和面向对象的编程思想 复习原型 构造函数和实例对象和原型对象之间的关系

    体会面向过程和面向对象的编程思想 <!DOCTYPE html> <html lang="en"> <head><meta charset ...

  7. 架构师之路(1)---面向过程和面向对象

    1.引言    机算机科学是一门应用科学,它的知识体系是典型的倒三角结构,所用的基础知识并不多,只是随着应用领域和方向的不同,产生了很多的分支,所以说编程并不是一件很困难的事情,一个高中生经过特定的训 ...

  8. 面向过程 VS 面向对象

    面向过程(Process Oriented)这个词是在面向对象(Object Oriented)出现之后为与之相对而提出的.其实它在以前基本被叫做"结构化编程". 早期的程序设计, ...

  9. 面向过程和面向对象的联系和区别

    以C语言和C++为例. C语言是面向过程的,封装单元是函数.函数里面按照逻辑流程一步一步实现就行了,这符合我们现实生活中解决问题时的思考过程. C++是面向对象的,封装单元是类.首先,面向对象是为了提 ...

  10. java面向过程编程怎么写_从面向过程到面向对象,我的编程之路

    也许现在新一代的程序员一开始涉足的就是c++,C#,Java这类面向对象的语言,如果这样,这篇文章可能得不到他们的认同. 这里,我只想写写我从面向过程到面向对象开发成长中的一些感想而已. 我最初学习的 ...

最新文章

  1. 30-hadoop-hbase-安装squirrel工具
  2. [转载]逐步建设企业DevOps能力
  3. 无线鼠标计算机不识别,win7系统下USB无线鼠标电脑检测不到如何解决
  4. 联合索引会创建几个索引_面试官:谈谈你对mysql联合索引的认识?
  5. Python Numpy 教程(使用 Jupyter 和 Colab)
  6. 初作学术论文存在的文献梳理和引文注释问题
  7. php mysql 预编译语句_php mysql 预编译
  8. 20应用统计考研复试要点(part26)--简答题
  9. redisson 看门狗_Redisson的分布式锁
  10. html优美界面左侧下拉,一组时尚的侧边栏菜单和下拉列表UI设计
  11. 吐血整理!近二十年全国数学联赛赛题大全,烧脑全集来啦!
  12. Logtail从入门到精通(二):开启日志采集之旅
  13. 辞旧迎新,胖了几斤?数据告诉你,这种东西你就不该吃
  14. 在Migration中操作新添加的字段
  15. 算法学习之路|互评成绩计算
  16. 计算机课安全管理制度,微机室安全管理制度.doc
  17. 浅谈MYSQL之备份恢复
  18. BGR转YUV420SP
  19. 初试401 英语86分上岸苏州大学经验分享
  20. 对比学习论文综述(part4 transformer + 总结)

热门文章

  1. 解决java.sql.SQLNonTransientConnectionException: Public Key Retrieval is not allowed
  2. U盘启动盘恢复为普通U盘
  3. ubuntu20.04下安装Docker和NVIDIA Container Toolkit教程
  4. 小能量汇聚成大能量_清体能量棒配料解析:小种子,大能量,藜麦和青稞
  5. python 3.0 print_Python 3.x 新特性及10大变化
  6. r语言把两个折线图图像放到一个图里_图像相似度度量
  7. 关于vue项目中输入框无法正常输入的问题
  8. 扑克牌排序_巧用扑克牌搞定孩子的数学思维启蒙,聪明的妈妈都在玩这样的游戏...
  9. Ubuntu15.0.4下Torch安装教程
  10. git revert 用法