thinkcmf学习和开发经验总结

    本人是某普通本科计算机科学与技术专业准大二的学生,假期意外接手了一个网站开发的项目,但本人当时对于网站开发什么前后台,什么h5、js、php、mysql一无所知,但既然决定了要做,就要努力去做,就要做好,尽可能掌握更多的知识。

    一般网站开发在windowsPC端需要安装wamp(包含了MySQL+PHP+apach) + sublime 。其中wamp就是相对于一个本地服务器,可以在它的环境里运行编写的网站,sublime是一款代码神器,软件很小,但功能很强大,可以安装各种插件,让编程效率更高,也可以配置某些IDE直接可以编译运行。

    起初学习PHP就是为了做网站项目,刚开始一直在看书,看了一个多周的PHP入门知识,感觉看这些基础的东西没有什么太大的意思,里面的编程的一些基础的东西,在C语言里早已学过类似的,所有掌握起来也比较容易。后来公司给了我一个thinkcmf的开发框架,说开发项目就要用到这个框架,当时本人处于一种完全蒙蔽的状态,这是我学习大一计算机一年来第一次接触开发框架,我只是知道,这个框架可能已经对于一些底层和常用的东西做了一些封装,但也不知道他的具体细节。

    接到框架的第二天我就开始研究了,接触了对于自己是完全陌生的事物会令人感到恐慌,因为自己对其一无所知。刚开始我在百度上搜索thinkcmf的内容时,感觉关于thinkcmf的东西很少,完全没法理解框架,后来在一个网站看到“ThinkCMF是一款基于PHP+MYSQL开发的中文内容管理框架。”,thinphp与它很相似然后我就去搜索thinkphp的东西,才找到自己想要的知识,下载了thinkphp的手册,强迫自己把手册看了一遍,逐步了解了框架的结构。

    thinkcmf是一款中文版开源的MVC网站开发框架,“M”是model,“V”是view,“C”是control的意思,它一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。MVC被独特的发展起来用于映射传统的输入、处理和输出功能在一个逻辑的图形化用户界面的结构中。下面是百度对MVC框架的阐述:

MVC 是一种使用 MVC(Model View Controller 模型-视图-控制器)设计创建 Web 应用程序的模式:

Model(模型)表示应用程序核心(比如数据库记录列表)。

View(视图)显示数据(数据库记录)。

Controller(控制器)处理输入(写入数据库记录)。

MVC 模式同时提供了对 HTML、CSS 和 JavaScript 的完全控制。

Model(模型)是应用程序中用于处理应用程序数据逻辑的部分。
                    通常模型对象负责在数据库中存取数据。

View(视图)是应用程序中处理数据显示的部分。
             通常视图是依据模型数据创建的。

Controller(控制器)是应用程序中处理用户交互的部分。
           通常控制器负责从视图读取数据,控制用户输入,并向模型发送数据。
MVC 分层有助于管理复杂的应用程序,因为可以在一个时间内专门关注一个方面。例如,可以在不依赖业务逻辑的情况下专注于视图设计。同时也让应用程序的测试更加容易。
MVC 分层同时也简化了分组开发。不同的开发人员可同时开发视图、控制器逻辑和业务逻辑。

    thinkcmf框架是分前后台和前后端的,前台和后台分别指用户操作界面和管理员操作界面,前端和后端分别指html5页面和controller控制端,一般刚开始编写测试实现功能的时候大多直接把它放在后台调试编写,它有一个统一的入口,登入就可以进入主界面了界面大致是这样的:

    thinkcmf中有很多封装好的函数库和类库,特别是操作数据库是特别简单。一般的网站项目需要的算法很少,主要是对于一些数据的操作比较多,而thinkcmf给出的操作函数都特别好用。比如说数据不需要每次用的时候都写一系列的数据库配置信息,只需要提前在data文件夹下的db文件中把数据库配置好就可以了。对于数据库的操作主要是增删改查,它给提供了add、delete、save、select等几个函数,不需要刻意去记,用的时候很容易想起了,比起用原始的SQL语句好用的多。

   thinkcmf需要一个模块里有控制端和视图端,对于跳转和方法调用,主要用到了U方法,可以避免因为路径原因导致的项目瘫痪。

    thinkcmf中还包含了bootstrap前端框架,可以直接调用其样式,特别好用,具体查看使用文档就可以了。

   一个项目现在已经做完了,现在看来,本项目并不难,主要用到thincmf框架,提高了工作的效率,已于掌握和学习。整个项目主要用到了数据库的语句,页面的传值,已经页面的跳转,页面的内容的显示,controller端与view的协调。用到bootstrap节约了大量的学习成本,js我基本没学,但查阅手册就可以轻松的利用它已经写好的东西,可能以后要继续加强学习。总体来说一个暑假在、大致掌握了MVC开发结构和开发流程,网站开发也基本完成,已经达到了预期的目标。总体来说收获颇丰,日后继续努力,进一步研究深入学习,学好英语,多掌握一些知识,让自己变得更强。

你可能感兴趣的:(PHP)