面向对象与面向过程

 

 

 

    定义:

 

    面向对象:采用基于对象(实体)的概念建立模型,模拟客观世界分析、设计、实现软件的办法。

    面向过程:采用以事件为中心概念建立模型,模拟客观世界分析、设计、实现软件的办法。

 

    在本文中将以bug管理系统为例从软件需求、设计、编程、数据库设计对面向过程和面向对象进行比较:

 

    面向对象与面向过程之需求分析

   

    面向过程的需求分析方法先找出与系统相关的“对象”,然后分析每个“对象”所期望提供的功能:

 

 

 面向对象产品需求

 

 

 

    面向过程的需求分析方法是直接对期望系统所提供的功能进行罗列:

面向过程需求分析图

 

    面向对象与面向过程之程序设计

 

 

    面向对象的程序设计是根据需求分析的结果来设计系统需要包含哪些“对象”,并描述这些“对象”之间的关系以及每个“对象”所要提供的功能。

 

 面向对象程序设计图

 

    面向过程的程序设计是根据需求分析的结果来设计系统需要提供哪些“功能”,并采用自顶而下的结构化设计方法来对需要实现的功能进行分解

 

 面向过程程序设计图

 

    面向对象与面向过程之代码编程

 

    面向对象的程序编写一般采用C++java等面向对象编程语言

 

    class CProgrammer

    {

     public:

             CProgrammer(){}

             virtual ~CProgrammer(){}

     public:

             void queryBug(....)

             {

                       //调用CUserMng进行全新判断

                        //调用CBugMng进行bug查询

                }

                void replyBug(....)

                {

                        //调用CUserMng进行全新判断

                       //调用CBugMng进行bug修改        

                }

     private:     

    }

 

    面向过程的程序编写一般采用C等结构化变成语言

 

    void  queryUser(...)

    {

           //查询该用户的向下信息

    }

 

    void  queryBug(...)

    {

           //查询bug信息

    }

 

    void  editBug(...)

    {

           //修改bug信息

    }

 

    void QueryBug(人员,.....)

    {

           //调用queryUser(...)函数检查用户权限

           //调用queryBug(...)函数查询bug信息

    }

    void replyBug(人员,.....)

    {

           //调用queryUser(...)函数检查用户权限

           //调用editBug(...)函数修改bug信息

    }

 

    虽然面向过程的各种思想提出的时间比较早,理论比较旧,现在也没有面向对象的红火,但是面向过程也有其自身的优点,加深对其了解也会弥补面向对象理论的一些不足,有助于开发出更好的软件。

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值