Web开发 学习积累20161018
项目
一、项目做的是什么
业务逻辑 -> 增删改查
二、什么是面向对象编程,它有哪些好处
oop:object oriented programming
<>核心思想:使用人类思考问题、解决问题的方式来编程。
<>oop的三大特征
封装:第一层意思,将属性和方法封装到一起,形成对象。
第二层意思,隐藏内部的实现细节,对外提供可操作的接口(public)
继承:子类可以通过继承,直接使用父类定义好的属性和方法(非私有的)extend代码可重用。
多态:在不同的上下文中(语境),其表现形态不一样。Php本身就是多态。
<>为什么说php是多态
PHP是弱类型语言
$a='php';$a是一个字符串类型的数据
$a=100;$a是一个整型的数据
<>oop的好处
可重用
可维护
可扩展
灵活性比较高
三、MVC模式
结合单一入口 index.php?p=admin&c=goods&a=insert (完成后台的商品添加,C对应控制器(类),a对应方法)
四、我对MVC的认识和理解
<>MVC是什么?
它是一种设计模式
M:model,模型,完成具体的业务逻辑
V:view,视图,负责展示信息
C:controller,控制器,负责发号施令,扮演了交通警察的角色
<>MVC的核心思想
将业务逻辑和显示相分离
<>具体的描述MVC的细节

注意:对模型的理解,有两种描述方式
1、广义上的模型:数据库模型和工具模型
2、狭义上的模型:数据库模型
<>MVC的优缺点
优点:分层明确,便于交流,便于团队开发,便于维护
缺点:学习成本高,对于小项目反而比较麻烦
<>oop和MVC直接有什么关系
并没有直接的关系,但是使用oop来实现MVC,就是完美的方案
四、项目结构说明
每一个优秀的项目都有一个良好的项目结构。
五、搭建过程
Web开发 学习积累20161018的更多相关文章
- 【前端】移动端Web开发学习笔记【2】 & flex布局
上一篇:移动端Web开发学习笔记[1] meta标签 width设置的是layout viewport 的宽度 initial-scale=1.0 自带 width=device-width 最佳实践 ...
- 【前端】移动端Web开发学习笔记【1】
下一篇:移动端Web开发学习笔记[2] Part 1: 两篇重要的博客 有两篇翻译过来的博客值得一看: 两个viewport的故事(第一部分) 两个viewport的故事(第二部分) 这两篇博客探讨了 ...
- ASP.NET Core Web开发学习笔记-1介绍篇
ASP.NET Core Web开发学习笔记-1介绍篇 给大家说声报歉,从2012年个人情感破裂的那一天,本人的51CTO,CnBlogs,Csdn,QQ,Weboo就再也没有更新过.踏实的生活(曾辞 ...
- ios开发 学习积累20161027~20161031
前言 学习ios这几天来,总结下,函数的定义,调用.跟其他语言都有一定的区别: 几个特别重要的就是对象的迭代的使用和判断.取随机数.动画的实现及数组的深入研究等等 之前的总结地址 ios开发 学习积累 ...
- 【Java Web开发学习】跨域请求
[Java Web开发学习]跨域请求 ================================================= 1.使用jsonp ===================== ...
- 【Java Web开发学习】Spring MVC 使用HTTP信息转换器
[Java Web开发学习]Spring MVC 使用HTTP信息转换器 转载:https://www.cnblogs.com/yangchongxing/p/10186429.html @Respo ...
- 【Java Web开发学习】Spring JPA
[Java Web开发学习]Spring JPA 转载:https://www.cnblogs.com/yangchongxing/p/10082864.html 1.使用容器管理类型的JPA JND ...
- 【Java Web开发学习】Spring MVC添加自定义Servlet、Filter、Listener
[Java Web开发学习]Spring MVC添加自定义Servlet.Filter.Listener 转载:https://www.cnblogs.com/yangchongxing/p/9968 ...
- 【Java Web开发学习】Spring MVC 拦截器HandlerInterceptor
[Java Web开发学习]Spring MVC 拦截器HandlerInterceptor 转载:https://www.cnblogs.com/yangchongxing/p/9324119.ht ...
随机推荐
- jquery改造轮播图1
g改造轮播图1:https://www.cnblogs.com/huanghuali/p/8677338.html <!DOCTYPE html> <html lang=" ...
- 使用wblockCloneObjects从后台读取dwg文件复制实体到当前数据库
AcDbDatabase *pNewDb=new AcDbDatabase(Adesk::kFalse); if (pNewDb == NULL) { return; } Acad::ErrorSta ...
- IT男装逼利器:如何像黑客一样聊天 Mojo-Webqq
电影里的黑客们聊天不想我们生活中的一样,用QQ.微信的客户端,都是通过命令行来进行聊天交流的,大概是为了提升逼格吧.(文末有福利~) 本文作者:KevinSVIP 今天发现一个有趣的项目:使用mojo ...
- AngularJS源码解析2:注入器的详解
上一课,没有讲createInjector方法,只是讲了它的主要作用,这一课,详细来讲一下这个方法.此方法,最终返回的注册器实例对象有以下几个方法: invoke, instantiate, get, ...
- Microsoft Visual C++ 14.0 is required
building 'twisted.test.raiser' extensionerror: Microsoft Visual C++ 14.0 is required. Get it with &q ...
- 静态网页、动态网页、apache和tomcat之间区别和联系
1.静态网页 静态网页:在网站设计中, 纯粹的HTML(标准通用标志语言下的一个应用)格式的网页通常被称为"静态网页",静态网页是标准的HTML文件,它的拓拓展名是.html或者. ...
- ES6之新增let命令使用方法
let命令的用法 let是es6中的声明一个变量的命令,只在它声明的代码块中有效,出了这个代码块就会报错.也非常适合for循环,在循环中i的值只在循环语句中生效,在外边取不到的. var命令声明的是一 ...
- springcloud应用思考
1 springcloud注册中心eureka和zookeeper注册中心的区别: eureka注册中心,在服务选主的时候服务还是可以用的,zookeeper注册中心在选举的时候整个服务瘫痪了,是不可 ...
- P3440 [POI2006]SZK-Schools
传送门 应该是很显然的费用流模型吧... $S$ 向所有学校连边,流量为 $1$,费用为 $0$(表示每个学校要选一个编号) 学校向范围内的数字连边,流量为 $1$,费用为 $c|m-m'|$(表示学 ...
- dp--最大区间和变形-cf-1155D
dp--最大区间和变形-cf-1155D D. Beautiful Array time limit per test 2 seconds memory limit per test 256 mega ...