目的
面向过程和面向对象的工作切换时时常会困扰,本文试图整理已期指导后续工作切换中融会贯通,顺畅一些。
概述
面向过程和面向对象是两种编程语言的方法,其思想基于的哲学基础不一样。计算机编程发展过程是先有面向过程,后有面向对象。面向对象的编程语言也是由面向过程的编程语言为基础实现的。
面向过程:就是程序编写依据事物过程的方式实现。应用上对应是实现某个功能、完成某个任务。比如写一篇文章,那么需要构思,写标题,目录,各功能章节等。面向过程就是找人构思,找人去写目录,写标题,写各个章节,然后按照构思逻辑整合在一起就完成了。 因为其实现的思路基本就是对一个目标进行拆解,然后各个按照其功能内容实现接口。最后有一个大的进程将其串起来就完成。模块之间的接口主要是函数api,数据结构以及全局变量等。面向过程语言最典型的是c语言。 它常用于嵌入式开发系统,完成特定具体的硬件机械功能。另外比较著名的linux操作系统也是c语言写的。这个源于操作系统偏于操作各种底层硬件,并且c语言的效率非常高,linux本人也是c语言高手,所以一直是c语言完成的。
面向对象:对象这个词应该是译文中产生的,哲学上他因该是源于对自然世界的思考后产生的。观察自然界的万物,我们可以得到除了简单罗列的功能和过程外,会发现有其他更深层面的东西。比如它可以是看一个独立自治的系统,有自己的特色功能和特点,称为一类。比如动物类,人类,水,土,木等。另外,这些类之间有相应的联系和关系,比如包含从属关系:猫类从属于动物类。比如个体和共性的关系:人类是一个整理概述,而某个人甲甲甲他就是人类中的具体个例。面向对象就是基于这样的观察和哲学思考产生的编程方法和思想。编程语言