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

简介:

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

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

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

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

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

待续.....


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


目录
相关文章
|
关系型数据库 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
928 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!
730 0
|
消息中间件 物联网 网络性能优化
MQTT常见问题之MQTT的topic超出上限25个如何解决
MQTT(Message Queuing Telemetry Transport)是一个轻量级的、基于发布/订阅模式的消息协议,广泛用于物联网(IoT)中设备间的通信。以下是MQTT使用过程中可能遇到的一些常见问题及其答案的汇总:
IDEA中找不到程序包和找不到符号
大多是编码有问题,解决方案:file->setting->File Encoding 什么?还不对? 打开项目根目录.idea->encoding.
3351 0
|
2天前
|
弹性计算 关系型数据库 微服务
基于 Docker 与 Kubernetes(K3s)的微服务:阿里云生产环境扩容实践
在微服务架构中,如何实现“稳定扩容”与“成本可控”是企业面临的核心挑战。本文结合 Python FastAPI 微服务实战,详解如何基于阿里云基础设施,利用 Docker 封装服务、K3s 实现容器编排,构建生产级微服务架构。内容涵盖容器构建、集群部署、自动扩缩容、可观测性等关键环节,适配阿里云资源特性与服务生态,助力企业打造低成本、高可靠、易扩展的微服务解决方案。
1081 0
|
11天前
|
人工智能 运维 安全
|
10天前
|
人工智能 测试技术 API
智能体(AI Agent)搭建全攻略:从概念到实践的终极指南
在人工智能浪潮中,智能体(AI Agent)正成为变革性技术。它们具备自主决策、环境感知、任务执行等能力,广泛应用于日常任务与商业流程。本文详解智能体概念、架构及七步搭建指南,助你打造专属智能体,迎接智能自动化新时代。
|
2天前
|
弹性计算 Kubernetes jenkins
如何在 ECS/EKS 集群中有效使用 Jenkins
本文探讨了如何将 Jenkins 与 AWS ECS 和 EKS 集群集成,以构建高效、灵活且具备自动扩缩容能力的 CI/CD 流水线,提升软件交付效率并优化资源成本。
267 0