美文网首页编程杂谈
浅谈MVC面向对象的编程思维

浅谈MVC面向对象的编程思维

作者: wolf2921 | 来源:发表于2016-09-28 22:04 被阅读0次

MVC面向对象的编程思维

接触编程已经有些日子了,说实在的一直在进行过程化编程。之前学习过一些语言,因为没有实际操作经验,思维上一直停留在一个过程化编程的层面上,这里抛出一个过程化编程的概念,其实用大家都能理解的“炒菜”来举个例子。

用过程化思维来炒菜,我们要进行洗菜,切菜,点火,烧油,炒菜,盛菜。
这一系列操作都可以叫做过程。而这一系列操作过程中又有很细致的流程,所以如果改变其中任何一条操作都是非常难的。但是这也是我们做事大部分采用的方式。

如果我们用面向对象的方法来炒菜,首先我们首先面对的是对象,这个炒菜里,菜是对象,刀是对象,火是对象,锅是对象,盘子也是对象。面对这些我们来炒菜就很方便。因为核心业务是炒菜。所以,所谓的面向对象就是只要有这些对象我们就可以炒菜不用过多的考虑炒菜的细节有多少。例如:菜我们可以买现成的,甚至可以不用菜,我们直接用肉。刀也一样,我们也可以不用,菜用撕的也可以。所以这就是面向对象。

现在用些概念来解释一下什么是MVC面向对象的编程思想。全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。MVC被独特的发展起来用于映射传统的输入、处理和输出功能在一个逻辑的图形化用户界面的结构中。
以上是百度COPY的一些内容,这些对于理解什么是MVC来说还是很官方化。我就用通俗的语来解释上面那些人不太好理解的话。

这里我需要来还原一下我们现实的情况,现实工作和开发环境中,我们对于软件的开发的需求就是如何保证软件的稳定,高效,安全和可扩展性。之前我用炒菜来解释了一下面向过程的编程,我们需要从软件启动到结束设计一整套完善的流程。程序一但成型我们对程序的代码进行修改就会很困难,因为我们的软件是一套完整的逻辑系统,新加入的功能或许需要重新设计逻辑处理。即使不是修改,单纯的扩展性也一样。最近我做的学生信息管理系统就是这样一个面向过程的软件,虽然只有二三百行代码,但是从中加入一些功能直接报错。但是如果是先搞定页面,再搞定各种功能,最后将各种功能连接起来,这就是MVC面向对象的编程。如果我们需要给页面扩展甚至是变更,我们就修改页面。如果我们是要添加一些功能,在功能里做添加即可。而上述的过程就是面向对象。而面向对象也有很多利于程序稳定安全的地方。程序都是给人用的,但是人在使用的过程中难免会出现一些错误的操作,而这些错误的操作如果没有相应的逻辑判断的话很有可能造成程序的出错,而面向对象用户直接通过界面来获取相应的内容和操作方法,而控制器来接收和处理用户的操作,核心的功能部分由控制器发出指令后进行相应的调取。这样即大大的提高了程序的稳定性和安全性。

谈了这么多面向过程以及面向对象的编程思维,最后我想说一下有关程序运行效率的问题,虽然不类属MVC毕竟还是有些关联所以一并谈谈。
如果之前说的面向对象的编程有可使程序稳定、安全方便扩展和修改等优点那么我们自然就要考虑到这么多优点它的代价是怎样的。它设计出来的程序效率方面怎样。

之前我谈过计算机内的一些硬件,这里我们需要知道CPU是用来计算的,内存是用来存储数据的。无论是什么数据都是先用内存存起来用CPU来计算,所以,面向对象的编程大部分是通过方法之间的调用来实现业务需求的,也就是存数据的时候相对少些更多的是用来计算处理数据。这里值得一提的是程序也是人来设计并编写的,如果大部分计算是由我们人来进行的话也是相当消耗人力资源的。虽然我谈到了程序的资源消耗,但是这只是在程序设计时对物理资源的一种参考方面。就好比有些游戏对硬件的配置有一些要求,而我们写的程序能在什么样的硬件上运行我们至少要心里有数,所以接下来面对一些商业项目的开发我们除了要了解的还有很多。

相关文章

  • 浅谈MVC面向对象的编程思维

    MVC面向对象的编程思维 接触编程已经有些日子了,说实在的一直在进行过程化编程。之前学习过一些语言,因为没有实际操...

  • 浅谈JS中的面向对象

    浅谈JS中的面向对象 本文主要说说本人在JS中对面向对象的理解。 计算机编程语言主要分为面向过程式编程和面向对象式...

  • 浅谈面向对象编程与面向过程编程以及DDD充血Model

    浅谈面向对象编程与面向过程编程以及DDD充血Model 先抛出开头一个问题:一直在说OOP面向对象编程,你现在写的...

  • 面向对象的基础

    什么是面向对象? 面向对象是一种编程方法; 面向对象是一种思维方式 面向对象不是一种编程语言 什么是面向对象的思维...

  • c#面向对象编程

    面向对象的编程,其实就是用现实中的思维方式来编程。 面向对象编程的3个方式:封装,继承,多态。 而提到面向对象编程...

  • Python面向对象编程(一)

    一、面向对象编程 1. 面向对象编程和面向过程编程的区别 面向过程编程:机械思维,简化复杂的流程,可扩展性差面向对...

  • 面向对象与构造函数

    面向对象是一种思维方法 面向对象是一种编程方法 面向对象并不只针对某一种编程语言 什么是面向对象? 面向对...

  • Go语言面向对象

    类和对象 面向过程编程和面向对象编程主要区别在于思维方式的不同 面向过程编程,所有的东西都需要亲力亲为 面向对象编...

  • 第三模块第一章编程范式3——11

    面向对象编程 编程范式 面向过程编程,面向对象编程 过程指的是解决问题的步骤,设计一条流水线,机械式的思维方式。 ...

  • 四、seesion、cookie实战之登录功能mvc结构

    该项目文件结构简单,根据MVC设计思想,使用函数式编程,未使用类和面向对象编程,简化框架结构,轻量展示MVC编程结...

网友评论

    本文标题:浅谈MVC面向对象的编程思维

    本文链接:https://www.haomeiwen.com/subject/bhrkyttx.html