首页 后端开发 php教程 ThinkPHP中的MVC开发模式了解一

ThinkPHP中的MVC开发模式了解一

Jun 13, 2016 pm 12:18 PM
mvc php thinkphp

ThinkPHP中的MVC开发模式理解一

MVC这三个字母不愧博大精深,当我自以为要马上攻破php最后一道难关的时候,那时候的我好想就想错了,当我研究了一个半月之后,竟然发现其思想是那么的难以理解,直到现在我也不得不承认我只是对这个思想的认识只是一个皮毛,对于很底层的东西还是不太理解,还有别的要说的,但先说一下我对MVC的理解:

其实MVC并不是一个什么语法或者算法,只是一个开发模式,说道开发模式,我所知道的有传统的MODEL模式,即过程化的处理,而MVC则是对结构做了一个很好的优化,更像是一种开发规范,你必须要根据规范去执行,才能够去使用其内部的各种库,就像小孩子只有听大人的话大人才能给买吃的,说到这,肯呢过还是不太明白,那就具体的说一下MVC,MVC你一眼就应该可以看出来这是字母的缩写即分别为M:模型V: 视图 C:控制器。

这养的话,我们就应该知道,MVC至少有这三个最为基础的东西,模型,先简单的说一下比如数据模型,像你的数据库配置哪些什么的,当然这里的模型还会有分支,一开始学的时候不建议再往下多想,到明白的时候自然会明白,那么V呢,这是MVC最容易理解的地方了,就是视图,说白了就是用户看到的前端页面,这个没有说明难以理解的,可以过去,下面就是最为重要的控制器了,这个起到了中枢神经的作用,你既然能看到这里,就一定知道APACHE的作用是什么了,是一样的道理,起到了分配,逻辑处理,程序结构等等很多重要的功能,我之前卡死就卡死到控制器上面了,因为即便你去按照规范去创建了控制器可是你还是对于之后的种种规范感觉难以理解,在自己的内心里,就永远没有那种明白的感觉,总感觉是朦朦胧胧的,其实就是不明白,这个过程是无法传授的,自能依靠自己去理解,自由自己真正的理解了,问题才会有好的解决。

其实额外的理解,因为我们或许知道作为一般的程序开发,我们都是尽量做到业务的分离,只有业务之间完全分离,才能支持大型的团体的项目开发,所以说,都是这样,jquery的诞生原因之一就是我们有对html代码结构和行为的分离,这样增强了代码的可维护性,你可能会拿html5反驳我,至于html5的诞生,我可感到很费解,除了在移动端对用户的体验提高之外,没有发现太大的亮点,但有一个在我看来致命的弱点,就是之前我们仅仅对于前段页面而言是结构,样式,行为,分别由html,css,和JavaScript提供支持,但是,html5的一些新的属性明显越界了,这样不就是明显的与代码分离原则相违背把,这可能需要另一种思考方式,但是从我个人的方面来看是不太好的。那么在回到MVC,其一个重要的原则就是做到了业务分离,大的方面,前端设计和后台业务逻辑的分离,小的方面,数据设计和逻辑处理的分离等等,这样,对于大型的团队开发,对于后期维护是非常高效的,这也是MVC在各种开发语言大受欢迎的原因之一。

我现在学的thinkphp,就是一种MVC框架,相对于其他的框架简单一些,但还是不太好理解,我的总结是,想要学好这些东西,还是要多写代码,多分析过程和错误原因,这是非常重要的,最好还要写一下文档,以前我绝得写文档很没有必要,单后后来发现,文档可以让子自己很明确开发思路,因为开发后台就怕脑子浑,一旦发浑,就不知所以然了,所以写文档是很不错的。


本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
2 周前 By 尊渡假赌尊渡假赌尊渡假赌
仓库:如何复兴队友
4 周前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒险:如何获得巨型种子
3 周前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

CakePHP 项目配置 CakePHP 项目配置 Sep 10, 2024 pm 05:25 PM

在本章中,我们将了解CakePHP中的环境变量、常规配置、数据库配置和电子邮件配置。

适用于 Ubuntu 和 Debian 的 PHP 8.4 安装和升级指南 适用于 Ubuntu 和 Debian 的 PHP 8.4 安装和升级指南 Dec 24, 2024 pm 04:42 PM

PHP 8.4 带来了多项新功能、安全性改进和性能改进,同时弃用和删除了大量功能。 本指南介绍了如何在 Ubuntu、Debian 或其衍生版本上安装 PHP 8.4 或升级到 PHP 8.4

CakePHP 日期和时间 CakePHP 日期和时间 Sep 10, 2024 pm 05:27 PM

为了在 cakephp4 中处理日期和时间,我们将使用可用的 FrozenTime 类。

CakePHP 文件上传 CakePHP 文件上传 Sep 10, 2024 pm 05:27 PM

为了进行文件上传,我们将使用表单助手。这是文件上传的示例。

CakePHP 路由 CakePHP 路由 Sep 10, 2024 pm 05:25 PM

在本章中,我们将学习以下与路由相关的主题?

讨论 CakePHP 讨论 CakePHP Sep 10, 2024 pm 05:28 PM

CakePHP 是 PHP 的开源框架。它的目的是使应用程序的开发、部署和维护变得更加容易。 CakePHP 基于类似 MVC 的架构,功能强大且易于掌握。模型、视图和控制器 gu

如何设置 Visual Studio Code (VS Code) 进行 PHP 开发 如何设置 Visual Studio Code (VS Code) 进行 PHP 开发 Dec 20, 2024 am 11:31 AM

Visual Studio Code,也称为 VS Code,是一个免费的源代码编辑器 - 或集成开发环境 (IDE) - 可用于所有主要操作系统。 VS Code 拥有针对多种编程语言的大量扩展,可以轻松编写

CakePHP 创建验证器 CakePHP 创建验证器 Sep 10, 2024 pm 05:26 PM

可以通过在控制器中添加以下两行来创建验证器。

See all articles