从今天开始鸡啄米将给大家讲解一些C++编程入门的知识,对于鸡啄米也是个温习巩固的过程。鸡啄米将会用深入浅出的方式,尽量用最简单的语言让读者学会C++语言,并爱上这门语言。
本前言讲述的是编程语言的发展过程、面向对象方法、面向对象的基本概念等内容。
语言大家都知道,计算机语言跟人类语言一样有语法等规则,它是计算机可以识别的语言,用来描述解决问题的方法,计算机阅读了它就可以做相应的工作。利用语言描述解决问题的方法就生成了程序,程序是由很多指令组成的,计算机所能识别的指令是0和1的组合,所有这种指令组成的语言叫做机器语言。可以想象,全是1和0,对于软件开发者来说编程是很难的,开发周期长,功能也做不复杂。后来出现了汇编语言,它就是把机器语言映射成一些人能读懂的助记符,这样就使得软件开发容易点了,但是还是与人的思维差别很大,但这是一个跳跃式的进步。最后出现了高级语言,抽象层次比较高了,程序中的数据命名都能很容易看出数据的含义,而且执行语句也很容易理解。 20世纪60年代出现的结构化编程语言更是进了一大步,但是程序中的数据和操作分离,各自独立,不能跟现实中的事物对应起来。最后出现了面向对象编程语言。
面向对象编程语言把事物看成是具有属性和行为的对象,然后通过抽象找出属于同一类的事物的属性和行为,就形成了类。通过类得继承和多态可以很好的实现代码复用,提高软件开发效率。如果这块不懂的话可以先尽量理解,通过后面的学习会慢慢理解这些概念。
20世纪80年代比较风行结构化程序设计方法,它的设计思路是,自上而下,逐步细化,将程序结构按功能分成多个模块,每个模块可能又会分成多个模块,这样就形成了一个模块的树状结构,各个模块间的关系尽可能简单,功能上相对独立。每个模块都是由顺序、选择和循环三种基本结构组成。这种方法就将一个复杂的程序设计问题分成很多简单细化的子问题,更便于开发维护。但是这种方法的缺点是数据和处理数据的方法各自独立,如果数据结构改变,所有相关的方法都要改变。这时就出现了面向对象设计方法,它将数据和方法放到一个整体里,这个整体就叫对象,同类型对象抽象成类,类中大部分数据只能用本类中的方法处理,类通过简单的外部接口与外界发生关系,而内部的各种关系对外部是透明的。
下面介绍面向对象的几个基本概念:
1.对象。每个对象都是描述客观存在事物的一个实体,都是由数据和方法(也可以叫属性和行为)构成。属性是描述事物特征的数据,行为描述对对象属性的一些操作。
2.类。类是具有相同属性和行为的一些对象的集合,它为所有属于这个类的对象提供抽象的描述,比如麻雀和杜鹃都可以看作是对象,而鸟就可以看作类。
3.封装。封装就是把对象的所有属性和行为结合成一个独立的单位,对外隐藏对象的内部细节,只保留有几个接口与外界联系。
4.继承。一个类(叫做子类)可以通过继承另一个类(叫做父类)来拥有另一个类的所有属性和行为。比如车和汽车,汽车从车继承,车的所有属性和行为都继承到了汽车上。
5.多态性。多态性就是说父类中的属性和行为被子类继承后,子类可以有自己不同于父类的属性或行为。比如定义一个类“动物”,它具有“吃”这个行为,但是具体怎么吃吃什么,不知道,因为不知道到底是个什么“动物”,如果从这个类继承出子类“羊”和“老虎”,“吃”就成了具体的行为,怎么吃吃什么就都知道了。
最后鸡啄米再次声明,本前言内容可能对于新手来说讲的还是有点难懂,但是不要担心,通过后续的学习肯定会慢慢领会这些的,到那时你再回来看这些就会觉得很简单了。