软件分层设计 | 学习笔记

简介: 简介:快速学习软件分层设计

开发者学堂课程【DAO 开发实战业务分析:程序开发准备(定义 VO 类)】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/399/detail/5159


软件分层设计

 

内容介绍:

一、基本内容

二、分层的基本模式

三、软件分层设计

四、总结


一、基本内容

在以后任何的数据库的开发过程之中,客户端程序类一定不要出现任何的JDBC代码。

从数据库的开发开始就已经开始进入到了实际的项目开发环节,随着技术的不断发展与完善,开发之中所使用的技术在不断的更新,但是其核心的本质思想永远不会发生改变。


二、分层的基本模式

所谓的软件的分层设计与生活中的这种状态是完全一样的,那么唯一的区别在于,软件的分层还需要考虑到各个数据的安全性问题

记忆中枢→语言组织→语言、文字、手语→客户

image.png

 

三、软件分层设计

image.png

在任何的软件系统之中,所有的数据一定要保存在数据库之中,所有真正要显示的数据都会保存在关系型数据库里面。但是对于现在开发已经不再属于单数据库的时代,以后还要接触到许多的 No-SQL 数据库。

在数据库之中所有被保存的数据都属于原子数据。但是不管数据库存放的是什么,最终都需要通过程序将数据库中的数据读取进来,这个时候一定会使用 JDBC 实现。在整个的 JDBC 读取数据的过程之中执行的都是原子性操作,因为每一次不管是查询还是更新,几乎都只会操作一次 SQL。

所有的数据整合处理都在业务层之中完成。相当于将所有的JDBC原子性的操作控制进行一个整合处理。

控制层的主要目的是进行数据的接收与处理,以及调用业务层控制,而显示层的功能是进行页面的展示效果。

例如:以黄同学想睡觉为因素进行分析。

image.png

所谓的业务设计指的是功能的设计,而每一个业务操作的背后都要进行一系列的数据操作(原始支撑)。

以上的操作实质上只是进行了单业务的设计,这种设计的使用往往也是比较多的,可是在一些大型的项目之中还能存在有一堆的子业务设计。

清楚了相关的概念之后,那么下面来关注一下具体的名词:

l 数据层,数据访问层,而数据访问层(持久层、Persistent)往往是需要一个对象来控制的,所以会将其称为“Data Access Object”(DAO)

l 业务层(商业对象层、Business Object、BO),或者将其称为服务层(Service)。

image.png


四、总结

1、任何的系统开发一定要首先确定好业务;

2、数据库的设计需要根据业务展开,就相当于确定好了所有的持久层的操作。

相关文章
|
5月前
|
存储 Java 数据库连接
成为工程师 - 系统分层的设计原则
成为工程师 - 系统分层的设计原则
|
8月前
|
存储 运维 安全
软件体系结构 - 信息系统架构
【4月更文挑战第20天】软件体系结构 - 信息系统架构
209 13
|
8月前
深入.net平台的分层开发
深入.net平台的分层开发
架构:第九章:架构设计(为什么要这么设计,解决了什么问题)
架构:第九章:架构设计(为什么要这么设计,解决了什么问题)
274 0
|
XML 设计模式 JSON
领域驱动设计总结——如何设计大型系统
本文为领域驱动设计系列总结的第五篇,主要对领域驱动设计概念做个介绍,本系列领域驱动设计总结主要是在Eric Evans 所编写的《领域驱动设计》 一书的基础上进行归纳和总结。本文主要介绍在领域驱动设计中如何设计大型系统。
203 0
|
JSON 缓存 监控
代码分层设计
在搭建一个项目之前,除了要进行架构和业务方面的设计和分析,往往还需要对代码的结构进行规范化设计。而分层思想,是应用系统最常见的一种架构模式。
629 0
|
设计模式 敏捷开发 架构师
软件架构模式之分层架构
没有进行架构设计的应用程序通常是紧耦合的,难以维护和扩展。如果不理解应用的各个组件的内部工作方式的话很难看清它的架构特征。
软件架构模式之分层架构
|
缓存 Ubuntu 关系型数据库
体系结构之部署设计|学习笔记
快速学习体系结构之部署设计
152 0
|
前端开发 架构师 数据库
系统架构师-基础到企业应用架构-分层[上篇]
一、前言       大家好,接近一年的时间没有怎么书写博客了,一方面是工作上比较忙,同时生活上也步入正轨,事情比较繁多,目前总算是趋于稳定,可以有时间来完善以前没有写完的系列,也算是对自己这段时间工作和生活上总结,同时也加深下自己对架构和 设计方面的理解,由于本人的写作水平有限,所以在书写的深度和书写的格式上还有很多的缺点,还希望大家多多指出。
1329 0