Dojo
最新
最佳
搜索
订阅
解道Jdon
领域驱动设计
架构设计
热点话题
GitHub开源免费源代码
kafka教程文章排行榜
RUST语言
产品新闻
数据工程
go语言文章排行榜
微服务架构文章排行榜
DDD领域驱动设计
幽默模因
更多话题
GRASP之受保护的变化 - Kamil Grzybek
19-09-05
banq
问题:如何设计对象,子系统和系统,以便这些元素的变化或不稳定性不会对其他元素产生不良影响?
解决方案:确定预测变化或不稳定的点,分配责任以围绕它们创建稳定的接口。
在我看来,这是与其他GRASP原则间接相关的最重要的原则。目前,最重要的软件指标之一是易于更改。作为
架构
师和程序员,我们必须为不断变化的需求做好准备。这是无法选择的,这是必须有的,是我们的职责与责任所在。
幸运的是,我们拥有大量的设计指南,原则,模式和实践,以支持不同抽象层次的变更。我只会提到一些(已经超出GRASP):
- SOLID原则,特别是Open-Close原则(但它们都支持变更)
- Gang of Four(GoF)设计模式
- 封装
- Demeter法则
- 服务发现
- 虚拟化和容器化
-
异步
消息传递,事件驱动架构
- 编排,舞蹈编排
由于今天更适合迭代软件开发过程,因为即使我们被迫改变一次,我们也可以得出结论,并以较低的成本为未来的变化做好准备。
猜你喜欢
本站原创
《复杂软件设计之道:领域驱动设计全面解析与实战》
其他人在看