编程语言不是从安全的角度考虑减少程序员犯错误,而是在程序员自己负责的前提下为他提供最大限度发挥能力的灵活性。
一、结构化编程
结构化编程的基本思想是有序地控制流程,即把程序的执行顺序限制为顺序、分支和循环这 3 种,把共通的处理称为例程。
把基本上相同的处理抽象成例程,其中不同的部分由外部传递进来的参数来对应。
面向对象编程是结构化编程的延伸。
二、面向对象编程
多态性(也称动态绑定)、数据抽象(也称信息隐藏或封装)和继承被称为面向对象编程的三原则。
多态
多态的基本内容:根据对象的不同类型而进行适当处理;自动选择最合适的方法,而程序内部则不发生冲突。
各种数据可以统一处理。多态性让程序员只关注要处理什么(What),而不是怎么去处理(How)。
数据抽象
数据抽象是数据和处理方法的结合。对数据内容的处理和操作,必须通过事先定义好的方法来进行。数据和处理方法结合起来成为了黑盒子。
利用现有的类派生新类的方法称为“差分编程法”(difference programming)。
类以数据为核心,把与之相关的处理也都集中到一起。
黑盒化是模块化的基本原则,面向对象编程语言将每一类数据都当作黑盒处理。