zoukankan      html  css  js  c++  java
  • 接触软件体系架构设计(二)

    步入工作,截止2005年,大部分采用面向过程或面向对象快速解决些问题,局部采用面向对象设计实现软件功能。

    在2005年到2008年期间,采用三层架构完成外包项目。

    现在回顾下三层架构/多层架构:

    从垂直角度来看,划分如下:

    A、表示层,又称表现层UI,位于三层构架的最上层,与用户直接接触的界面。在B/S信息系统中, Web浏览页面作为表示层,承载实现用户界面功能,将用户的请求上传到服务器,确保用户的优质体验。

    B、业务逻辑层BLL,实现了软件的主要业务逻辑,对表示层提供展示数据支撑依据,对数据访问层提供数据效验和持久化操作。

    C、数据访问层DAL,常规是针对数据库进行操控,实现数据的增加、删除、修改、查询等操作,并将操作结果反馈到业务逻辑层BLL。不仅限于数据库。


     


    分层技术,目的是“高内聚低耦合”,其下每层:

    表示层目的:展示和体验

    业务逻辑层目的:业务处理

    数据访问层目的:存储

    多层架构是基于三层架构的衍生,更加细分了层次关系。一般根据需要,将业务逻辑层BLL和数据访问层DAL进行再次分解,达到解耦以及提高后期的可维护性。

    实施规则:

    1、各级层次开发明确工作内容,不要跨层设计。特别是表示层

    2、设计的出发点,从业务逻辑层开始,要明确业务的输入输出

    特别注意:

    在表示层中是否包含前置判断逻辑,这个是体验优化的范畴,或者说:在产品效果设计时,对其定义。这类定义可能和业务逻辑的前置限定有部分重复或完全重复,不能因为业务逻辑层完成,就不需要实现。

    这一点,在设计中必要的明确。

    分层优劣:

    优点:层次分明,减低依赖,结构清晰,易于维护、扩展、复用。

    缺点:开发工作量大,从单条性能效率低下。容易出现级联修改。


    随聊:

    在SX外包团队,人员紧张,基本上一个人多个项目穿插或一个人抗一个项目,由经理把控进度,相互合作开发,以文档或QQ方式协定,相互帮助完成

    外包团队的效率在于团队以及每人的能力体现。项目主程,在分层架构,无论三层还是多层,在细分的过程中,宏观上把控层级的划分,同时也需要注意细节的控制。

    外包的失败,有诸多原因,最大的原因,还是人。

    思考越多,做得越快。

  • 相关阅读:
    oracle 导入数据时提示只有 DBA 才能导入由其他 DBA 导出的文件
    oracle 常用语句
    android udp 无法收到数据 (模拟器中)
    android DatagramSocket send 发送数据出错
    AtCoder ABC 128E Roadwork
    AtCoder ABC 128D equeue
    AtCoder ABC 127F Absolute Minima
    AtCoder ABC 127E Cell Distance
    CodeForces 1166E The LCMs Must be Large
    CodeForces 1166D Cute Sequences
  • 原文地址:https://www.cnblogs.com/GoGoagg/p/12795552.html
Copyright © 2011-2022 走看看