iOS—对象的概念

很多语言,如C,Pascal,Basic等,都是面向过程的。面向过程的程序设计语言主要使用顺序,选择和循环三种基本结构来编写程序。顺序指按照时间轴顺训完成每个处理;选择指根据条件的成立与否执行不同的条件分支;循环指根据一定的条件反复执行同样的代码。

在面向对象技术问世以前,程序设计被看做为一个个功能系统的集合。程序员根据设计文档实现各个函数,完成目标软件。所以,那个年代软件开发最关心的是如何从需求中提出要实现的功能,决定数据格式,并将其组合在一起。举一个简单的列子,假设我们需要实现一个用于管理和采购办公用品的OA系统。在这个OA系统中,我们假设某部门提出采购要求后,首先要检查该部门的预算是否够用。通常的做法是设计申请购买商品的登录页面和申请的流程,决定使用的数据格式,定义检查数据正确性的函数,定义预算数据的格式和访问它的接口,简单的说就是,整个系统设计的过程就是将需求分解成一个个小的的功能,同时定义每个功能所需要的数据格式。

但是,需求是无时无刻不在变更的。如,假设需要从纸质文件的购买申请变为通过网页来申请,或者需要新增能根据部门,物品类型来查看购买历史纪录功能,这时候就需要对基于传统做法生成的软件进行大幅修改。软件的核心是功能,而需求又非常容易变更,所以围绕功能设计软件,会比较难于应对需求的变更,维护成本会比较高。

你可能感兴趣的:(iOS—对象的概念)