软件的开发与设计模式,自编程语言诞生之初就一直向高内聚、低耦合的方向发展,所有开发人员与组织的梦想就是实现软件功能更高层次、更快部署、更广范围的复用。
在近70年利用编程语言开发软件的历史中(从1954年FORTRAN语言开始),从功能封装的设计层次上,可以分为以下几类:
面向过程编程(Process-Oriented Programming,POP):系统的编程开发是将整体功能分成若干过程或步骤,每个步骤通过一个或几个方法来实现。所有的步骤通过串行、分支或循环的逻辑次序执行,终完成整个业务功能。早期的编程语言,如BASIC、C、PASCAL等,都是此类。
面向对象编程(Object-Oriented Programming,OOP):是从业务逻辑中拆分出一个个独立的客体,称为对象。系统通过对象之间的互操作来实现整个功能逻辑。属性、方法与事件等是对象的核心组成要素,再辅以依赖、继承、多态等特点,OOP迅速替代POP,成为业界主流。