SF
软件模式
软件模式
注册登录
关注博客
注册登录
主页
关于
RSS
第十一天-《企业应用架构模式》-对象-关系行为模式
wuxiumu
2019-02-03
阅读 2 分钟
1.5k
是提交时,决定要做什么。它打开一个事务,做所有的并发检查(使用悲观离线锁或乐观离线锁)并向数据库写入所做的修改。(开发人员根本不用显示调用数据库更新方法)
第十天-《企业应用架构模式》-数据源架构模式
wuxiumu
2019-02-01
阅读 2 分钟
1.9k
表数据入口包含了用于访问单个表或试图的所有SQL,如选择、插入、更新、删除等。其他代码调用它的方法来实现所有与数据库的交互。 表数据入口可以和表模块一起使用,它产生一个记录集数据结构由表模块处理
第九天-《企业应用架构模式》-领域逻辑模式
wuxiumu
2019-01-31
阅读 2 分钟
1.5k
1. 事务脚本 1)调用数据库: 事务脚本将所有逻辑组成单个过程,在过程中直接调用数据库,或者只通过一个简单的数据库封存器。 2)脚本处理: 每个事务都有自己的事务脚本,尽管事务间的公共子任务可以被分解成多个子程序。 3)运行机制: a.事务脚本应该置于与其他处理表现层和数据源层的类相独立的类中,把事务脚本组...
第八天-《企业应用架构模式》-通盘考虑
wuxiumu
2019-01-30
阅读 1 分钟
1.7k
1)事务脚本模式最简单,适合于在关系数据库之上构建;领域模型需要非常专业的技术,还有鱼数据库的连接;表模块模式折中,在.Net这类有非常强大记录集支持的环境非常合适
第七天-《企业应用架构模式》-分布策略
wuxiumu
2019-01-29
阅读 1 分钟
1.4k
1. 分布对象的诱惑: 中间件的对象分布对上层透明崔然非常有用,但跨进程、跨机器(还有网络)调用,影响性能! 2. 远程接口和本地接口: 1)远程访问的对象需要使用粗粒度接口,而本地访问的对象需要使用细粒度接口(优化性能时,本地接扣可以提供粗粒度对象) 2)基于1),就不能把在单进程中设计的类原封不动...
第六天-《企业应用架构模式》-会话状态
wuxiumu
2019-01-29
阅读 1 分钟
1.5k
1. 无状态的价值: 无状态可以仅用很少的对象就可以处理很多的用户,空闲状态的用户越多,无状态服务器就越有用 2. 会话状态: 相关性:会话状态只与当前会话有关,它存在于业务事务中,与其他会话及他们的业务事务是分开的; 与记录数据信息的区别:记录数据时长期保存在数据库中的持久化数据,它对所有会话可见,会话...
第五天-《企业应用架构模式》-并发
wuxiumu
2019-01-27
阅读 2 分钟
1.6k
离线并发:多个数据库事务中支持多线程的各种应用服务器 1. 并发问题: 1)丢失更新(同时编辑文件,相继保存,最终丢失先保存者更新的内容) 2)不一致性(读取期间,数据有更新) 2. 执行语境: 1)从与外界交互角度看的2个语境: 请求: 对应于软件工作的外部环境发出的单个调用,处理请求的软件会决定是否返回一个应...
第四天-《企业应用架构模式》-WEB表现层
wuxiumu
2019-01-26
阅读 1 分钟
1.6k
构建web服务器上应用程序的2种方法: 1)使用脚本: CGI、Java Servlet,通过write stream操作输出字符串;适合于解释请求消息 2)使用服务器页面: 把程序和返回文本也组合在一起,在html中编写返回页面(Asp、php、jsp等);适合于格式化应答消息 1. 视图模式: 1)转换视图: 特点:使用程序的一种转换风格(如XSLT) ...
第三天-《企业应用架构模式》-映射到关系数据库
wuxiumu
2019-01-25
阅读 2 分钟
1.8k
把SQL访问从领域逻辑中分离出来,并把它放到独立的类中(让它们以数据库中的表结构为基础,每一个数据表对应一个类),这些类为数据库建立了一个入口;
第二天-《企业应用架构模式》-组织领域逻辑
wuxiumu
2019-01-24
阅读 1 分钟
2.7k
1. 模型抉择: 1)领域逻辑复杂度: 2)抉择: 领域逻辑复杂度较低时,选择事物脚本; 如果开发环境拥有大量基于记录集的工具(.Net和VS),可以选择表模块; 开发小组经验丰富时,选择领域模型; 3种模式并不互相排斥,可以同时使用 2. 服务层: 1)服务层是从领域层分离出来...
第一天-《企业应用架构模式》-分层
wuxiumu
2019-01-23
阅读 1 分钟
2.3k
1. 分层优缺点: 1)优点: 在无需过多了解其他层次的基础上,可以将某一层作为一个有机整体来理解; 可以替换某层的具体实现,只要前后提供的服务相同即可; 可以将层次间的依赖性减到最低; 分层有利于标准化工作; 一旦构建好了某一层次,就可以用它为很多上层服务提供支持 2)缺点: 层次并不能封装所有东西,有时会...