项目设计的方案及思路

                 一个网站或者其他项目来了,我们可以怎么设计该项目的功能设计和数据库设计呢?


答: 所谓功能设计,就是这个网站需要设计出哪些模块来,比如:登录模块,用户注册模块,购物车模块等等,
而每一个模块,再具体到程序之中就是一个类,也是一个类文件,因为在php中一个类文件有且仅有l一个类,而且类文件是由类名.class.php组成的,那么问题就来了,我们该如何来确定一个项目需要哪些模块呢!答案是:我们必须从网站的页面入手,我们分页每一页面,然后利用头脑风暴的方式在excel表格中写出每个页面所体现的功能:将所有的页面整理完毕之后,我们再excel中向右移动几列,去掉相同的功能,然后将同秩(相似的)功能整合到一个模块当中,比如
登录和退出,可以看作是同一个模块:登录模块;留言显示和提交留言可以看作是留言模块,注册和验证码可以看作是
注册模块;
上述是功能设计,也就是整个项目的类的设计,下面我们来看看数据库是怎么设计的!
        答:
         数据库的设计同样也是从页面出发,我们可以从每页面中提取出数据来,比如,登录页面有:用户名,密码,验证码,文章页面有:文章标题,创建时间,作者,等,可能我们在提取的时候不知道这个数据是否存入数据库,那么我们可以先写出来,类似于头脑风暴的方式。最后去掉一些不需要存在数据库中数据,比如验证码,确认密码,然后这些数据整合到一个几个实体中去,比如,用户名,密码,就对应用户这个实体,文章名,创建时间,对应文章这个实体,
然后找出实体之间的关系是1:n,还是n:1还是n:m的关系,确定之后就可以设计表,其实实体就是对应一个表;

      总结:其实在整个项目的设计中,无论是功能设计还是数据库设计我们可以看出,其实我们都是MVC模式中的V出发,这是为什么呢?因为V最直观,最具体,它是直接体现了用户的需求,那么我们从V出发实际上就是用户的需求出发,然后用具体的事物中抽出抽象的东西来,至于抽象什么东西,这就是我们学习的必要,因为前人为我们总结了到底需要抽象什么东西,什么东西是核心,什么东西起着承接用户需要粘合程序设计的知识的联合剂,所以这个粘合剂的选择是很高明的,是很费脑筋,是需要创造力的,但是任何一个行业,先辈们,都我们准备好了。

       在网站开发或者项目开发过程中,这个粘合剂就是功能----类模块,数据----实体表;这才是我们需要学习的东西!

你可能感兴趣的:(php思想类)