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 ...
随机推荐
- Linux mint 安装踩坑记录
记得之前电脑上的那个Ubuntu是去年寒假的时候安装的,算下来自己用Linux也快一年了.虽然在去年暑假的时候我也曾经想过要把Ubuntu升级到18.04可是当时安装了几次都没有成功,自己也就放弃了. ...
- 【Oracle 12c】最新CUUG OCP-071考试题库(53题)
53.(12-14) choose the best answer: Examine the command to create the BOOKS table. SQL>CREATE TABL ...
- [agc006f] Blackout 神题
Description 给你一个NN行NN列的网格,第ii行第jj列的格子用(i,j)(i,j)表示 一开始的时候有MM个格子被涂成黑色,其他的格子都是白色,具体一点,涂成黑色的格子为(a1,b1 ...
- 【bzoj 2716】[Violet 3]天使玩偶 (CDQ+树状数组)
题目描述 Ayu 在七年前曾经收到过一个天使玩偶,当时她把它当作时间囊埋在了地下.而七年后 的今天,Ayu 却忘了她把天使玩偶埋在了哪里,所以她决定仅凭一点模糊的记忆来寻找它. 我们把 Ayu 生活的 ...
- 序列化库MessagePack应用(C++)
介绍 MessagePack(简称msgpack)是一个小巧而高效的序列化/反序列化库,支持多种开发语言.官方网站:http://msgpack.org/ . 下面是官方的一个简介: It's lik ...
- 爬虫实战1:使用requests和正则爬取电影信息
代码如下 # coding=utf-8 import requests from requests.exceptions import RequestException import re impor ...
- Antd 初识
mark 参考 antd - 官网:Ant Design Pro: Ant Design - github:Ant Design pro - github:
- Eclipse署动态web项目方法
和MyEclipse不一样,在Eclipse中做的Web项目默认是不支持将项目发布到Web服务器上的,会发布到工作空间的某个目录,因此无法在外部启动Tomcat来运行Web项目,只有打开Eclipse ...
- day 12 课后作业
# -*- coding: utf-8 -*-# @Time : 2019/1/4 20:49# @Author : Endless-cloud# @Site : # @File : day 12 课 ...
- 通过CGI实现在Html页面上执行shell命令
在mac上配置cgi(不用系统自带的apache cgi.) 安装cgi 1. brew update 2. brew install httpd24 安装完后,会有如下提示 DocumentRoot ...