打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
Web开发之划分层次

Web开发之划分层次

分类: Web开发 6人阅读 评论(0) 收藏 举报

        对于Web应用开发项目的程序,为了便于开发、维护等要求,需要对程序逻辑划分层次。一般都采用经典的MVC框架来分层次,也有些项目划分出更多的层次,目的都是为方便项目的开发、维护等。划分层次都有一些原则或规范,划分原则、规范的是否合理,程序员是否都能按照这种约定的原则、规范来实行到具体的程序中,就是一个值得探讨的课题。比如:由于划分原则、规范并没有成文的约定,只是作为一种约定俗成的约束,有时有些概念也很含糊,程序员就可能误解了划分原则、规范,按照自己的方式来进行程序的开发,没有人及时给予指导,这样程序的开发不可控,或者并没有发挥好分层次开发的优势。

        我们先来看一下MVC框架划分的层次。M为模型层,主要包含业务分析总结的实体对象,涉及数据库持久化的程序,ORM(对象关系映射)生成的实体对象也应该属于此层次的程序;C为控制层,主要包含业务逻辑的程序,根据业务请求参数,经过业务逻辑处理,产生出相应的响应数据返回给V视图层,V为视图层,体现为界面展现,主要是提供界面的输入,调用控制层,经过控制层的处理后,返回给界面数据。主要原理基本上是这样。实际的Web应用中经常会划分为其他层次,特别是C控制层会划分出更多层次,比较常见的如Spring-MVC划分为Controller层、Service层、DAO持久化层、Model资源层、视图层,其中Controller层作为一个处理中心,主要负责将请求数据解析、转换成合适的业务对象,再调用Service层的业务方法进行业务逻辑处理,处理完后,将结果数据提供给视图层;Service层主要提供业务方法接口,主要的业务逻辑处理都在这里,它可以调用DAO持久化层,访问资源层方法,获得并处理相应的业务数据;DAO持久化层主要与资源层交互,访问处理相应的资源数据;视图层是个输入输出的交互终端,可以改变不同方式的视图来输入输出数据,如jsp,html,velocity等。还有struts的MVC,主要是C控制层不同,Action层取代Controller层,这里就不多讲了。

       分层次开发有个好处是可以多人协作分工开发,提高开发效率。比如对同一个功能模块,由不同的人开发不同的层次,如果层次划分得当,层次接口清晰明确,可以大大方便开发,按照面向对象思想接口隔离原则,不同层次可以是相对独立来开发的,如果层次被设计或者程序员编码弄得耦合度很高,使多人协作开发不能很好的配合,反而效率降低,有时甚至还不如一个人开发一个完整的功能模块效率高,这样我们就要考虑是否需要改善层次划分的设计原则、规范,或者对程序员进行培训,明确各层次的职责功能等各种措施,来提高开发程序的质量和效率。
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
MVC引入SERVICE层 提高代码重用性 沟通CONTROL和MODEL
portlet的分类与开发
GoFrame代码分层设计
G4Studio开源平台简介
ECTouch
架构设计:"4+1"视图
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服