热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Cakephp3x前言-为什么要使用使用框架

:本篇文章主要介绍了Cakephp3x前言-为什么要使用使用框架,对于PHP教程有兴趣的同学可以参考一下。
在读研究生时期选修了一门Web Engineer的课。当时课程是java servlet+ Tomcat + Mysql开发一个类似facebook的社交网站。讲课的老师提起过框架,说框架的用途在于减少自己早轮子的时间。而学习框架成本在于读Documentation,通常需要一个月的时间去学习摸索。但是不以为然,自己徒手搭积木才是酷炫,才牛逼。
真正接触框架这个东西,还是2015年初,刚刚开始进入工作。当时使用了曾经NXP实习期间听来的一个框架Cakephp。Cake早期的思想是百分之百继承RoR (Ruby on Rails),比如migration、command line。当然被人们诟病的是Cake数据封装模式,偏向于关系型数据库。虽然Cakephp可能没有Lavare那么知名,但是核心开发人员,社区活跃度以及问答社区的问题依旧很多。
对刚接触建站的朋友,Cakephp的开发很高效,扩展方便。以及对于励志成为构架师的童鞋,阅读Cakephp核心代码的学习价值,个人认为很高。初期通过对Cakephp封装的API使用,了解普通MVC框架的基本模块和功能。在进阶的过程中,阅读核心代码,从而理解其中的设计原理。最后通过优化代码,达到融汇贯通的地步。笔者作为一名初出茅庐的phper,同样也在开发中摸索和努力,希望为能够阅读到此文的诸君提供自己的所思所想,与君一同进步。
这个系列主要以翻译Cakephp 3 Cookbook为主,着重介绍使用Cakephp 3的开发项目过程中的体会,同时穿插介绍Cakephp 3的特点。希望通过介绍翻译Cakephp 3, 为Cakephp做一些小小的贡献,也希望通过这个系列认识志同道合的朋友。
在进入细节之间,我们先了解快速的讲述一些Cakephp 3的功能。
1). 命名约定(Naming Conventions)
Cake,如同RoR,Django等框架,提供一套完整MVC约定名称。使用命名约定,可以便利地使用Cake提供的一些功能。同时对于项目之后代码的维护也有帮助。对于开发过程,命名约定有助于开发效率。
2). 数据层(Model)
Cakephp 3的数据层相较于Cakephp 2,有了明显的提升。不仅支持MYSQL,PostgreSQL,Microsoft SQL Server,SQLite等,同时ORM提供两种不同的数据CRUD API。使用者可以使用原生的SQL语句调用数据库,灵活地处理query。Entity处理类提供一套封装的API,使用API可以安全地处理数据。
3). 视图层(Views)
视图层提供基本的数据展现。模板以及扩展模块高效地简化代码,使前端代码更加简洁,可以重复利用。同时视图层提供了完备的RESTFUL应用,包括XML,JSON等资源,可以通过URI的形式,为网站提供web server。
4). 控制层(Controllers)
控制层作为核心逻辑层,有效的是数据层和视图层结合起来。重要的算法处理,可以在这个层实现和完善。
Cakephp 3x 前言-为什么要使用使用框架

以上就介绍了Cakephp 3x 前言-为什么要使用使用框架,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

推荐阅读
  • Java序列化对象传给PHP的方法及原理解析
    本文介绍了Java序列化对象传给PHP的方法及原理,包括Java对象传递的方式、序列化的方式、PHP中的序列化用法介绍、Java是否能反序列化PHP的数据、Java序列化的原理以及解决Java序列化中的问题。同时还解释了序列化的概念和作用,以及代码执行序列化所需要的权限。最后指出,序列化会将对象实例的所有字段都进行序列化,使得数据能够被表示为实例的序列化数据,但只有能够解释该格式的代码才能够确定数据的内容。 ... [详细]
  • 项目运行环境配置及可行性分析
    本文介绍了项目运行环境配置的要求,包括Jdk1.8、Tomcat7.0、Mysql、HBuilderX等工具的使用。同时对项目的技术可行性、操作可行性、经济可行性、时间可行性和法律可行性进行了分析。通过对数据库的设计和功能模块的设计,确保系统的完整性和安全性。在系统登录、系统功能模块、管理员功能模块等方面进行了详细的介绍和展示。最后提供了JAVA毕设帮助、指导、源码分享和调试部署的服务。 ... [详细]
  • Tomcat安装与配置教程及常见问题解决方法
    本文介绍了Tomcat的安装与配置教程,包括jdk版本的选择、域名解析、war文件的部署和访问、常见问题的解决方法等。其中涉及到的问题包括403问题、数据库连接问题、1130错误、2003错误、Java Runtime版本不兼容问题以及502错误等。最后还提到了项目的前后端连接代码的配置。通过本文的指导,读者可以顺利完成Tomcat的安装与配置,并解决常见的问题。 ... [详细]
  • 本文介绍了在开发Android新闻App时,搭建本地服务器的步骤。通过使用XAMPP软件,可以一键式搭建起开发环境,包括Apache、MySQL、PHP、PERL。在本地服务器上新建数据库和表,并设置相应的属性。最后,给出了创建new表的SQL语句。这个教程适合初学者参考。 ... [详细]
  • 本文介绍了Redis的基础数据结构string的应用场景,并以面试的形式进行问答讲解,帮助读者更好地理解和应用Redis。同时,描述了一位面试者的心理状态和面试官的行为。 ... [详细]
  • Metasploit攻击渗透实践
    本文介绍了Metasploit攻击渗透实践的内容和要求,包括主动攻击、针对浏览器和客户端的攻击,以及成功应用辅助模块的实践过程。其中涉及使用Hydra在不知道密码的情况下攻击metsploit2靶机获取密码,以及攻击浏览器中的tomcat服务的具体步骤。同时还讲解了爆破密码的方法和设置攻击目标主机的相关参数。 ... [详细]
  • 在说Hibernate映射前,我们先来了解下对象关系映射ORM。ORM的实现思想就是将关系数据库中表的数据映射成对象,以对象的形式展现。这样开发人员就可以把对数据库的操作转化为对 ... [详细]
  • 本文介绍了在SpringBoot中集成thymeleaf前端模版的配置步骤,包括在application.properties配置文件中添加thymeleaf的配置信息,引入thymeleaf的jar包,以及创建PageController并添加index方法。 ... [详细]
  • 本文介绍了高校天文共享平台的开发过程中的思考和规划。该平台旨在为高校学生提供天象预报、科普知识、观测活动、图片分享等功能。文章分析了项目的技术栈选择、网站前端布局、业务流程、数据库结构等方面,并总结了项目存在的问题,如前后端未分离、代码混乱等。作者表示希望通过记录和规划,能够理清思路,进一步完善该平台。 ... [详细]
  • Linux下部署Symfoy2对app/cache和app/logs目录的权限设置,symfoy2logs
    php教程|php手册xml文件php教程-php手册Linux下部署Symfoy2对appcache和applogs目录的权限设置,symfoy2logs黑色记事本源码,vsco ... [详细]
  • Oracle 和 mysql的9点区别【MySQL】
    数据库|mysql教程oracle,Oracle,money,mysql,coun数据库-mysql教程1.组函数用法规则mysql中组函数在select语句中可以随意使用,但在o ... [详细]
  • 在pom.xml文件下添加9.0.35既可1.8 ... [详细]
  • Django + Ansible 主机管理(有源码)
    本文给大家介绍如何利用DjangoAnsible进行Web项目管理。Django介绍一个可以使Web开发工作愉快并且高效的Web开发框架,能够以最小的代价构建和维护高 ... [详细]
  • (九)Docker常用安装
    一、总体步骤1、搜索镜像2、拉取镜像3、查看镜像4、启动镜像5、停止镜像6、移除镜像二、安装tomcat1、dockerhub上面查找tomcat镜像 dockersearchto ... [详细]
  • ORACLE空间管理实验5:块管理之ASSM下高水位的影响
    数据库|mysql教程ORACLE,空间,管理,实验,ASSM,下高,水位,影响,数据库-mysql教程易语言黑客软件源码,vscode左侧搜索,ubuntu怎么看上一页,ecs搭 ... [详细]
author-avatar
bj_gqdy_342
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有