第五篇 创建实用的PHP和MySQL项目

第25章 在大型项目中使用PHP和MySQL

在本书的前几篇中,我们已经讨论了PHP和MySQL各个不同的组件及其应用。尽管我们试图列举出一些有趣且互相联系的例子,但实际上它们非常简单,只包含一两个脚本,每个脚本最多只有100行左右代码。

当创建真正的Web应用程序时,编写代码就不会这么简单了。几年前,“交互式”网站还处于表单邮件的阶段。如今,Web站点已经变成了Web应用程序——也就是说,符合一定规范的软件已经整个分布在Web网站。这种改变清楚地表明了网站规模的改变。网站已经从几行脚本代码发展到如今的成千上万行代码。如此规模的项目需要像一般软件开发那样进行规划和管理。

在我们开始介绍本书这部分将要涉及的项目之前,先浏览一下管理大型Web项目需要使用到的一些技术。这可以说是一门新兴艺术,要正确掌握它非常困难。这一点在软件市场中不难发现。

在本章中,我们将主要介绍以下内容:

■在Web开发中应用软件工程

■规划和运行Web应用程序项目

■重用代码

■编写可维护代码

■实现版本控制

■选择一个开发环境

■项目的文档化

■建立原型

■分离逻辑、内容和外观:PHP、HTML和CSS

■优化代码

25.1 在Web开发中应用软件工程

我们都知道,软件工程是软件开发过程中系统化的、可以量化的开发方法。也就是说,它是工程原则在软件开发中的应用。

很明显,软件工程在当今Web项目中的应用是很少的。这主要有两个原因:

首先,网站开发的管理经常与书面报告的管理方法相同。它是文档结构、图形设计和产品化的运用。它是一个面向文档的模式。这对中小型静态网站来说是很适宜的,也很有效。

但是随着网站动态内容的增加,网站的功能由原来简单地提供文档发展到提供服务,这样的模式就不再适应了。很多人根本就没有想到将软件工程实践应用到Web项目中。

其次,软件项目之所以未能在Web项目中应用,还在于Web应用程序的开发与一般的应用程序的开发存在多方面的区别。对网站的设计,我们没有什么规划时间,但却面临很大压力,要求马上就要建好。对软件项目则要求有计划、有秩序地开发,并且会在规划上花费不少时间。因此,对网站设计来说,通常的感觉是没有时间规划。

当Web项目设计失败的时候,它出现的问题和任何软件设计失败时出现的问题是一样的:错误百出的应用程序、超过时间期限以及源代码晦涩难懂。

然而,关键是寻找适用于这种Web应用程序开发新规则的软件工程部分,而忽略非适用部分。