面向过程与面向对象意识层面的差距

面向过程与面向对象意识层面的差距

客户需求:客户管理,客户分为一级客户与二级客户。

最近与朋友合作干一个项目,上面是一个简单的用户需求,我的朋友以前是干VB的,纯面向过程出身,他给出的数据库设计方案如下:


id一级客户名称二级客户名称其它
1AB
2AC
3AD
4A



我的方案如下:


id客户名称上级id其它
1Anull
2B1
3C1
4D1


两份截然不同的方案,折射出两个不同的思想,在面向过程的思想里,一级客户与二级客户是截然不同的两个东西,不可归为一类,我很理解他的方案,但他却根本听不懂我的方案,不知道是真听不懂,还是不愿懂,或是我的语言已经归为幼儿园水平了?反正他就是不懂。面向对像,是把需要的东西归为一个整体看待,在这个问题上,不管是一级客户还是二级客户,或是N级客户,归根结底都属于客户,而级别也不过只是客户一个属性标识而已。

对于操作页面的设计,我的这位朋友更是把面向过程思想推到了极致,新建页面,居然可以同时创建一级与二级客户,而在编辑界面中,却无法去更改一级客户与二级客户的关系,假如客户B,由于误操作,成为了A的二级客户,在我朋友设计的编辑功能中,无法让B脱离A成为一级客户。

综上所述,以面向对象思想为主的,不要与面向过程的去合作任何东西,即使你们的关系再好,再铁,坑就在前面。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Python既支持面向过程编程,也支持面向对象编程。下面分别介绍一下这两种编程范式的特点和区别。 1. 面向过程编程 面向过程编程是一种以过程为中心的编程范式,主要关注的是程序的执行过程。在面向过程编程中,我们将程序看作是一系列的函数或过程的集合,每个函数或过程都是一个独立的逻辑单元,完成特定的功能。 在Python中,我们可以使用函数来实现面向过程编程。函数接受一些输入参数,对这些参数进行处理,最后返回一些结果。通过组合不同的函数,我们可以构建出一个完整的程序。 2. 面向对象编程 面向对象编程是一种以对象为中心的编程范式,主要关注的是数据和行为之间的关系。在面向对象编程中,我们将程序看作是一系列的对象的集合,每个对象包含了数据和相关的操作,这些操作被称为方法。 在Python中,我们可以使用类来实现面向对象编程。类是一种用户自定义的数据类型,它可以包含属性和方法。属性是类的状态信息,方法是类的行为。通过创建不同的实例对象,我们可以使用类中定义的方法来对对象进行操作。 3. 面向过程编程和面向对象编程的区别 面向过程编程和面向对象编程之间的最大区别在于,面向过程编程是以过程为中心,将程序看作是一系列的函数的集合,而面向对象编程是以对象为中心,将程序看作是一系列的对象的集合。 在面向过程编程中,函数之间的数据传递是通过参数来实现的,而在面向对象编程中,数据和行为被封装在对象中,对象之间的数据传递是通过方法调用来实现的。 此外,面向对象编程具有封装、继承和多态等特性,这些特性可以使程序更加灵活和易于维护。而面向过程编程则相对简单,适合于一些简单的任务。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值