开发软件必须拥有一定开发模式,目前软件开发流行采用OOP模式(Object Oriented Programming,面向对象的程序设计)。面向对象编程(Object Oriented Programming,OOP,面向对象程序设计)是一种计算机编程架构。OOP 的一条基本原则是计算机程序是由单个能够起到子程序作用的单元或对象组合而成。OOP 达到了软件工程的三个主要目标:重用性、灵活性和扩展性。
开发实例我们将采用 SNS (Social Networking Services,社会性网络服务)MINI版本作为演示,为了让大家快速适应PHP开发方法,其中40%以上代码采用oop模式。
SNS:Social Network Software,社会性网络服务软件,依据六度理论,以认识朋友的朋友为基础,扩展自己的人脉。并且无限扩张自己的人脉,在需要的时候,可以随时获取一点,得到该人脉的帮助。
SNS是一个采用分布式技术,通俗地说是采用P2P技术,构建的下一代基于个人的网络基础软件。SNS通过分布式软件编程,将现在分散在每个人的设备上的CPU、硬盘、带宽进行统筹安排,并赋予这些相对服务器来说很渺小的设备更强大的能力。这些能力包括:计算速度,通信速度,存储空间。
社会性网络(社会网络,Social Networking:SN):是指个人之间的关系网络,这种基于社会网络关系系统思想的网站就是社会性网络网站(SNS网站)。现在许多WEB2.0网站都属于SNS网站,如网络聊天(IM)、交友、视频分享、博客、播客、网络社区、音乐共享等。社会性网络的理论基础源于六度理论(六度分隔理论,Six Degrees of Separation)和150法则(Rule Of 150)。另外不仅现在一些大公司网站开始了一些SNS应用,一些垂直领域的行业站点也开始了SNS的尝试,并且效果不错。
SNS的技术起源:在互联网中,PC机、智能手机都没有强大的计算及带宽资源,它们依赖网站服务器,才能浏览发布信息。如果将每个设备的计算及带宽资源进行重新分配与共享,这些设备就有可能具备比那些服务器更为强大的能力。这就是分布计算理论诞生的根源,是SNS技术诞生的理论基础。
开发前我们需要让PHPER知道什么是MVC?
MVC是一个设计模式,它强制性的使应用程序的输入、处理和输出分开。使用MVC应用程序被分成三个核心部件:模型、视图、控制器。它们各自处理自己的任务。
大部分Web应用程序都是用像ASP,PHP,或者CFML这样的过程化语言来创建的。它们将像数据库查询语句这样的数据层代码和像HTML这样的表示层代码混在一起。经验比较丰富的开发者会将数据从表示层分离开来,但这通常不是很容易做到的,它需要精心的计划和不断的尝试。MVC从根本上强制性的将它们分开。尽管构造MVC应用程序需要一些额外的工作,但是它给我们带来的好处是无庸质疑的。
首先,最重要的一点是多个视图能共享一个模型,现在需要用越来越多的方式来访问你的应用程序。对此,其中一个解决之道是使用MVC,无论你的用户想要Flash界面或是 WAP 界面;用一个模型就能处理它们。由于你已经将数据和业务规则从表示层分开,所以你可以最大化的重用你的代码了。
由于模型返回的数据没有进行格式化,所以同样的构件能被不同界面使用。例如,很多数据可能用HTML来表示,但是它们也有可能要用Macromedia Flash和WAP来表示。模型也有状态管理和数据持久性处理的功能,例如,基于会话的购物车和电子商务过程也能被Flash网站或者无线联网的应用程序所重用。
因为模型是自包含的,并且与控制器和视图相分离,所以很容易改变你的应用程序的数据层和业务规则。如果你想把你的数据库从MySQL移植到Oracle,或者改变你的基于RDBMS数据源到LDAP,只需改变你的模型即可。一旦你正确的实现了模型,不管你的数据来自数据库或是LDAP服务器,视图将会正确的显示它们。由于运用MVC的应用程序的三个部件是相互独立,改变其中一个不会影响其它两个,所以依据这种设计思想你能构造良好的松偶合的构件。
对我来说,控制器的也提供了一个好处,就是可以使用控制器来联接不同的模型和视图去完成用户的需求,这样控制器可以为构造应用程序提供强有力的手段。给定一些可重用的模型和视图,控制器可以根据用户的需求选择模型进行处理,然后选择视图将处理结果显示给用户。
MVC流程图:
对于陌生的phper来说似乎一头雾水,不知道如何理解这个图,现在我们简单讲解下。
web程序开发的时候很多时候也要对开发目录进行设计,如果设计的合理后期将会大大节省维护时间、开发与升级都将受益。
我们本次开发采用单入口,就是通过一个控制器来操作整个网站。 架构图:
架构介绍先到这里,下课我们将实例开发。
- 大小: 11.7 KB
- 大小: 36 KB
分享到:
相关推荐
设计模式是大型软件架构设计的基础,恰好能满足这些基本的要求。文中从数字地图制图软件的需求出发,对制图软件设计中常用设计模式(包括MVC模式、OBSERVER模式、COMPOSITE模式、COMMAND模式)的一般原理和结构进行...
计模式通过利用这些设计模式开发人员可以达到标准化和简化应用开发过程目 应用结构和J2EE J2EE是个很成功技术它为些基本任务提供了致标准例如数据库连接、分布式应用等但是使用J2EE并不能保 证开发人员开发出成功...
从第3章开始,结合开发实例,根据现代软件工程的相关理论与方法,详细分析了Visual C++在各种管理系统、图形图像、多媒体、串口通信、网络通信等方面的基本理论、实现原理、项目开发与编程方法。 本书附赠光盘中收录...
h中, 本节主要介绍图形模式的初始化、独立图形程序的建立、基本图形功能、图形窗口以及图形模式下的文本输出等函数。另外, 使用图形函数时要确保有显示器图形驱动程序*BGI, 同时将集成开发环境Options/Linker中的...
基于B/S模式的简化题目测评系统的设计与开发,由于题目自拟,所以原本老师提供的是学生管理系统的表我并没有用上,而是自己拟定的一个题目,是题目测评系统,专门用于学生网上回答问题,并通过管理员可以进行查看...
结合当前软件开发的若干新概念和新技术,如体系结构、设计模式、面向 GUI ( ...通过对应用系统的基本行为分析,建立一个以 GUI为驱动的基本操作行为模式构件库.该数据库可为终端用户的应用程序开发提供一种高效灵
网络五子棋本文主要对五子棋网络游戏技术进行研究,以VB为平台设计并实现了一个基于C/S模式的五子棋网络游戏。包括服务器端和客户端,游戏双方一方先运行服务器端,另一方运行客户端,连接到服务器端,双方通过网络...
2.5 利用素材建立经济有效的规范 2.5.1 通过测试来排除 规范错误 2.5.2 单元测试的缺陷 2.6 小结 第3章 调试和开发过程 3.1 将调试当作科学试验 3.1.1 逐步规范化、整 合并发行软件 3.1.2 在设计上尽可能 ...
从非常基础的基本数据类型和Class(即定义新类)组成的程序块,到建立具有丰富的特性的应用服务器和web框架都有着很多的方法。一方面,可以通过抽象的显著特性让基础的程序块组成在一起成为一个连贯的整体。这样,...
java实用系统开发指南 --无需密码 ...因此,初学者需要配合相关书籍才能阅读本书,这些书籍包括Jsp/Servlet基本概念知识、Struts开发详解、Tomcat配置、J2EE基本概念、JBuilder开发和JBoss配置、GoF设计模式。
从非常基础的基本数据类型和Class(即定义新类)组成的程序块,到建立具有丰富的特性的应用服务器和web框架都有着很多的方法。一方面,可以通过抽象的显著特性让基础的程序块组成在一起成为一个连贯的整体。这样,...
本论文在对南开创元信息技术有限公司充分调研的基础上,针对该公司实际情况,采用Client/Server模式、利用JAVA语言进行系统的开发,以SQL Server 2000作为网络数据库,实现极光办公自动化系统。 系统用网络数据库将...
针对微信小程序开发的技术特点,开展课程设计和课程组织,建立教学模块,改进教学方式,创新有效的教学模式,开展教学评估,鼓励更多专业人才掌握微信小程序开发技术,满足社会需求。文章阐述了创建课程的目标,并运用项目化...
本文向您介绍设计模式的基础,并解释了IBMRationalSoftwareArchitect如何促进基于设计模式的开发。文中还介绍了一些关于设计模式的实例,并告诉您如何快速地建立类图及生成基于这些模式的代码。后继的文章将更详细地...
9.5 delphi 6开发基本多层分布式系统详解 9.5.1 简单应用服务器程序的具体设置 9.5.2 简单客户端程序的具体设置 第10章 midas的高级应用开发 10.1 在 delphi 6开发 midas三层应用程序 10.1.1 在 ...
3.2.4 外部模式的功能 3.3 UF中常见的数据类型 3.3.1 UF函数命名规则 3.3.2 UF中数据结构标识 3.3.3 错误号 3.4 UG系统中对象的基本概念及区别 3.4.1 对象 3.4.2 Object、Body和Feature的区别 ...
采用软件工程的指导方法,选用C/S模式设计的方案,应用SQL Server 2000数据库管理系统,C#程序设计语言,Visual Studio.NET 2003开发工具等开发出来的基于WINDOWS系列的学生学籍管理系统.该系统面向各部门和全体学生...
1、掌握数据库的模式设计及建立; 2、针对给定的实际问题,完成数据库模式的设计,包括各表的结构(属性名、类型、约束等)及表之间的关系,在选定的DBMS上建立数据库表,用SQL命令和可视化环境分别建立数据库表,...
煤矿区煤层气勘查开发既存在煤炭、煤层气(瓦斯)勘探程度高的优势,也存在煤炭与煤层气矿业权大面积重置的劣势,因此进行煤层气与煤炭...建立了煤层气与煤炭勘查开发的时空配置模式,为矿业权重叠问题提供了技术解决方案。
2) 理解和掌握数据库DDL语言,能够熟练地使用SQL DDL语句创建、修改和删除数据库、模式和基本表。 2、实验主要内容 1) 安装SQL Server集成环境。 2) 理解和掌握SQL DDL语句的语法,特别是各种参数的具体含义和使用...