Task#5系统架构 - Kingtones/WebSystem GitHub Wiki
项目采用MVC架构模式进行开发设计. M(Model):模型,进行数据的存取和处理。 V(view):视图层,由HTML+CSS组成, 是项目视图的代码片段,产生和用户进行交互的页面 C(controller):控制器,用来实现PHP逻辑处理,调用M层和C层,将整个项目按照逻辑展示出来。
因为项目使用PHP进行开发,所以采用了PHP的轻量级MVC框架——CodeIgniter。
在CI框架本身的类库和方法的基础上,完成项目的实现。
下面是项目的一些主要架构设计
在CI框架下System/library 。。 System/helper 两个目录下分别存放 CI框架或者自己定义的 类库和函数,可用于代码重用, 减少不同项目中的重复代码。 如(验证码类,分页展示类等)
Application目录下 存放的是 项目的一些配置,包括对数据库连接,默认控制器等配置 以及 Model controller view 三个子目录存放 对应的代码 Model 采用多个 php 文件,分别是 Article.php 完成对article表的存取操作
Anonymous.php 对匿名表的操作,用来分配用户的匿名
User.php 对USER表的 存取操作,方便完成登陆,注册,密码修改等操作的数据处理。
comment.php 对comment表的存取操作,完成对文章评论的数据处理。
Message.php 对 私信表和 评论表进行查询, 用来完成消息提醒和私信功能 care.php 对care表进行处理,用来完成好友关注 anon_comment.php 对anon_comment表的查询, 用来完成 匿名区中评论的查询 anon_article.php 对 anon_article表进行查询, 用来存储 匿名发表的帖子
Controller 部分 CAW_idnex.php 默认控制器, 展示论坛的首页部分。 User.php 用于完成, 注册,用户空间,密码修改的操作。 Message.php 完成 用户消息,私信功能 Anonymous.php 完成匿名区的功能 Forum.php 完成日常发帖模块。
View 用来存放 网站不同的页面, 因为还未完成不做太过详细的介绍。 view 目录下有几个主要的文件夹, 分别存放几个重要页面的视图文件 因为 在整个网站的展示中, 有部分页面是每个都共有的, 还有 页面的适应性展示(即 页面在不同情况下的不同展示,如是否登陆影响了页面的展示) 所以 将不同的部分拆分到不同的文件里面
应用本身采用B/S 两层架构,