没头没尾--项目开发笔记:分层开发 ≠ 分层

原创 2002年11月28日 09:12:00

标题:没头没尾--项目开发笔记:分层开发 分层

关键词:分布式开发 C# 项目分工 DELPHIC#的混合开发,开发过程,分层开发

1126号:很不开心,公司里面又走了几个同仁,整体环境真是太不景气了 LL

 <?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

有的朋友觉得分层与分模块的开发从概念上不属于同一个概念的范畴。我想在这里做一个澄清。

       我想详细的解释一下我认为的分层开发的概念。也许这个概念定义是我的理解有问题。我脑中的分层开发是这样一个概念:当我们的设计已经采用分层次的概念之后,那么我们可以采用的开发方式可以有两种。分模块开发与分层开发。分层是一个“横向”的概念,可是分层开发是一个“纵向”的概念。分模块开发也是一个“纵向”的概念。以下面的开发过程为例说明这两个概念,假设我们的开发中应用程序的框架是已经分好层次的,如DOBOPOUI以及database层。(如果对DOBOPOUI没有概念请参考以前的笔记。)那么在这种分层设计的情况下我们同样可以采用两种开发方式:

1.         分模板开发

分模板开发中,A可以会负责开发一个销售业务模块,B负责库存模块。那么这样的分配方式下。那么A将会开始去摸索应该怎么去写这个过程(也许是看文档,也许是看demo),然后找出了我认为可以写的过程与方法(比如先写DO,再写BO,再写POUI),开始写。另一个人也是同样的按照这个步骤来开发。这两个人的活动可能开发过程的先后关系并不明显。这种开发方式没有什么好解释的,大家以前应该都有过这样子的开发的经验。

2.         分层开发

分层开发的过程中,与上面的开发方式可能会有很大的区别。AB负责一切数据库以及DOC负责BOD负责PO以及UI。那么开发的过程D去联系需求来做出页面以及PO,发现有需要进行业务判断的时候告诉CC就开发一个BO的组件对支持这个业务判断。当DC需要与数据库进行数据交互时,并不会去写直接得到数据的程序代码,而是将数据交互的描述告诉ABAB提供方法(而不是SQL语句)。这其中的ABCD的关系是互相补允的。也就是这三类人是可以同时开发的。理论上这样开发方式一定是有一个先后的关系。比如数据库与DO没有出来的情况下,D应该是没有办法工作的。但是我们可以找出一些技巧来使D可以一直在进行准备工作(迭代准备)。当然如果针对D的开发过程,他可能还会有分模块的概念,可是对AB的话,他们只有关系数据库的表以及存储过程要进行考虑,他们纯粹没有分模块的概念了。

 

上面的例子可以看出,分模板与分层开发的方式实际是融合在一起的。只要你是使用框架构建你的应用。那么你采用分模块开发的开发方式中一定也会有A开发DOBOPO时的先后顺序,实现对A个人来说,他也会要思索分层开发的问题。那么如果采用分层开发的开发方式,可能会有一部分人淡化了模块的概念,但不可能所有的人都将分模块的概念丢弃。

 

这种分层开发方式我想一定已经有很多的朋友们在不同的行业使用过,我想这种分层开发方式的最大的好处就是可以做到人员的分工。使每个人对应的特长得到充分的发挥。而可能出现的问题是在一个项目的实施中,并不是每一个人都可以接触到这个项目的各个层面,从对开发人员水平的提高有一点阻碍。不过可以通过不同项目之间的人员调配来实现开发人员水平的提升。

 

我想开发方式的变化是技术进步的一种体现。开发方式本身将会对开发的质量,效率以及产品(或项目)价值的产生很多方面的影响。对于一个项目来说也是非常重要的。我认为开发方式这种类型的提升毕将会影响到整个产品的开发过程。比如D对需求的影响,对测试在什么开发阶段就可以加入开发团队中,都会有对应的变化。我们的项目还只是在进行中,有很多的变化我想还需要总结。但是我的感觉是各个部门的联系由于开发过程的变化也产生了变化。变化的好坏无从说起,但是我们必须要提受变化。

iOS开发项目架构浅谈:iOS架构设计与分层

结构设计的层次是否越多越好? 多人都会说,凡事不能走极端,走了极端就过犹不及。所以应该分层,但不能过分分层,应该视具体情况来定。这样的话听起来很有道理,却只是一句废话。当我们遇到问题时,还是摸不着头...
  • HymanYoung
  • HymanYoung
  • 2016年05月04日 10:24
  • 1973

MVC WebAPI 三层分布式框架开发

前言:SOA(面向服务的架构)是目前企业应用开发过程中普遍采用的技术,基于MVC WebAPI三层分布式框架开发,以此适用于企业信息系统的业务处理,是本文论述的重点。此外,插件技术的应用,富客户端JQ...
  • besley
  • besley
  • 2013年01月09日 17:56
  • 27491

winform开发框架常见的分层模式

winform开发框架,常见的分层模式,可以分为UI层、BLL层、DAL层、IDAL层、Entity层、公用类库层等等。 这个分层,在Web项目或者WInform项目(包括WPF项目)这些分层都...
  • hjp1137
  • hjp1137
  • 2015年09月21日 10:27
  • 4048

Cocos2D-X开发学习笔记-游戏数据存储项目实例(上)

  • 2013年09月01日 22:41
  • 198KB
  • 下载

JAVA项目开发笔记(JAVAEE)

  • 2010年05月28日 14:59
  • 2.69MB
  • 下载

Cocos2D-X开发学习笔记-游戏数据存储项目实例(下)

  • 2013年09月02日 21:02
  • 193KB
  • 下载

ssh_crm2016传智播客综合项目开发笔记和源码资料

  • 2017年10月25日 15:36
  • 48B
  • 下载

Thinkphp3.2.3 开发大型商城项目完整笔记

  • 2017年01月06日 20:04
  • 5.37MB
  • 下载

吉林大学,大型管理系统OA项目开发笔记

  • 2009年05月03日 01:49
  • 334KB
  • 下载

React+Redux开发实战项目【美团App】,没你想的那么难

开始学习React的时候,在网上找了一些文章,读了官网的一些文档,后来觉得React上手还是蛮简单的,然后就在网上找了一个React实战的练手项目,个人学完之后觉得这个项目很适合初学者或者进阶的朋友练...
  • Magic_software
  • Magic_software
  • 2017年06月12日 12:53
  • 1254
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:没头没尾--项目开发笔记:分层开发 ≠ 分层
举报原因:
原因补充:

(最多只允许输入30个字)