前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >职责驱动设计和"驱动"概念的起源

职责驱动设计和"驱动"概念的起源

作者头像
运维开发王义杰
发布2023-08-10 17:38:32
3030
发布2023-08-10 17:38:32
举报

亲爱的读者们,你们好!在许多的软件开发概念中,我们经常看到"驱动"这个词,例如测试驱动开发(TDD)、行为驱动开发(BDD)、领域驱动设计(DDD)等。今天,我想给大家介绍一个我最近研究的主题:职责驱动设计(Responsibility-Driven Design, RDD)。同时,我也会尝试为大家揭示"驱动"这一词在软件开发中的起源。

职责驱动设计

职责驱动设计是一种面向对象设计的策略,它把重点放在了系统中的各个对象及其职责上。这种设计策略主张从系统行为的角度出发,而非仅从数据模型的角度来进行设计。它强调将职责分配给软件对象,从而促使各个对象之间形成协同的关系来完成任务。

在职责驱动设计中,我们首先识别出系统中的对象,然后根据系统需求,为每个对象分配具体的职责。对象不仅包含数据,更重要的是它们的行为,即它们需要做什么。一旦定义了对象和职责,对象间就可以通过发送和接收消息来交互,完成系统的功能。

职责驱动设计的优点在于,它将对象看作是能够执行任务、解决问题和做出决策的实体,而不仅仅是被动的数据容器。这样可以使得软件设计更加符合真实世界的工作方式,提高软件的可维护性和可扩展性。

"驱动"概念的起源

在软件开发中,"驱动"这个词的使用其实表达了一种理念:以某种特定的因素作为主导,推动整个开发过程。这通常意味着我们把某个特定的目标或原则放在首位,并根据这个目标或原则来指导我们的设计和决策。

比如说,在测试驱动开发中,我们先写测试,然后再写能通过这些测试的代码,测试在这里起到了"驱动"的作用;在职责驱动设计中,是对象的职责在"驱动"我们的设计决策。通过这样的方式,我们可以确保我们的焦点始终保持在最重要的事情上,从而提高我们工作的效率和质量。

总结,职责驱动设计是一种有效的面向对象设计策略,它强调对象的职责和行为,而非仅仅关注数据。"驱动"这个词在软件开发中的使用,体现了我们以某种特定的原则或目标来指导我们的工作的理念。我希望这篇文章能帮助你更好地理解职责驱动设计以及"驱动"概念的意义。欢迎分享你的想法和经验!

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2023-07-09,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 运维开发王义杰 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 亲爱的读者们,你们好!在许多的软件开发概念中,我们经常看到"驱动"这个词,例如测试驱动开发(TDD)、行为驱动开发(BDD)、领域驱动设计(DDD)等。今天,我想给大家介绍一个我最近研究的主题:职责驱动设计(Responsibility-Driven Design, RDD)。同时,我也会尝试为大家揭示"驱动"这一词在软件开发中的起源。
    • 职责驱动设计
      • "驱动"概念的起源
      相关产品与服务
      腾讯云服务器利旧
      云服务器(Cloud Virtual Machine,CVM)提供安全可靠的弹性计算服务。 您可以实时扩展或缩减计算资源,适应变化的业务需求,并只需按实际使用的资源计费。使用 CVM 可以极大降低您的软硬件采购成本,简化 IT 运维工作。
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档