定义应用程序的基础--模式(Bridge-桥接,Factory-工厂)

简介:

这两种模式为所有的应用提供了基础.打个比方,如果把程序想像成一座房子,这两种模式就是为这座房子提供的地基和墙壁.

实现Bridge模式:Bridge模式是将现实与意图(当以某种方式创建类时称为定义意图)分离开来.软件工业中最大的问题之一是变化,不是说变化是很糟糕,而是说变化是现实生活中的一种现实.

许多架构师和开发者都试图尽量减少变化,或者通过能适应未来的应用或者设计来降低破坏性.能适应未来是指给应用添加一些能够避免其过早过时的特征.通长在适应未来的讨论中,我们经常会听到像平台无并,互用性,语言无关,位置透明以及灵活的应用环境等.

适应未来字面意思是对未来的把握,但这是不可能的.我们应该把术语适应未来改成适应可选择的前景:尽量少的关闭未来之门,使软件适应未来是不可能的.因为必须做出决定.而这一些决定最终会使某些可能排除在外.

适应未来的目标是以合理的方式保持可能多的门开着.

待续.....


本文转自左正博客园博客,原文链接:http://www.cnblogs.com/soundcode/archive/2010/12/19/1910593.html,如需转载请自行联系原作者


目录
相关文章
|
2月前
|
机器学习/深度学习 人工智能 自然语言处理
B站开源IndexTTS2,用极致表现力颠覆听觉体验
在语音合成技术不断演进的背景下,早期版本的IndexTTS虽然在多场景应用中展现出良好的表现,但在情感表达的细腻度与时长控制的精准性方面仍存在提升空间。为了解决这些问题,并进一步推动零样本语音合成在实际场景中的落地能力,B站语音团队对模型架构与训练策略进行了深度优化,推出了全新一代语音合成模型——IndexTTS2 。
1846 62
|
人工智能 数据可视化 数据挖掘
阿里云 DataV
阿里云 DataV
|
关系型数据库 MySQL
解决MySQL insert出现Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘xxx‘ at row 1
解决MySQL insert出现Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘xxx‘ at row 1
1094 2
|
关系型数据库 MySQL 数据库
java.sql.SQLException: Connections could not be acquired from the underlying database!
java.sql.SQLException: Connections could not be acquired from the underlying database!
764 0
|
消息中间件 物联网 网络性能优化
MQTT常见问题之MQTT的topic超出上限25个如何解决
MQTT(Message Queuing Telemetry Transport)是一个轻量级的、基于发布/订阅模式的消息协议,广泛用于物联网(IoT)中设备间的通信。以下是MQTT使用过程中可能遇到的一些常见问题及其答案的汇总:
IDEA中找不到程序包和找不到符号
大多是编码有问题,解决方案:file->setting->File Encoding 什么?还不对? 打开项目根目录.idea->encoding.
3381 0
|
3天前
|
云安全 人工智能 自然语言处理
AI说的每一句话,都靠谱吗?
阿里云提供AI全栈安全能力,其中针对AI输入与输出环节的安全合规挑战,我们构建了“开箱即用”与“按需增强”相结合的多层次、可配置的内容安全机制。