HarmonyOS开发者限时福利来啦!最高10w+现金激励等你拿~ 了解详情
写点什么

行为驱动开发关注点从数据库转向领域模型

  • 2013-08-06
  • 本文字数:757 字

    阅读完需:约 2 分钟

Julie Lerman 在 MSDN 杂志中建议,设计应用的时候应开始使用行为驱动开发(BDD),并着重关注在领域模型而不是数据库。

Julie Lerman,这位自 2003 年以来的一直都是微软 MVP、同时担任顾问和.NET 平台的导师说,BDD 让开发者在构建逻辑和测试的时候关注用例和行为,并用作在和客户讨论问题时定义验收的标准。对于BDD 的初学者,Julie 使用Visual Studio、C#和SpecFlow 实现了一个例子。

SpecFlow 是一个在.NET 平台上开源的工具,作为 Cucumber 家族中的一员,它也支持其他平台的集成。他们使用 Gherkin ,一种基于关键字的语言去描述一个用户故事场景,其中最重要的是 Given,When 和 then。Julie 给出了场景中的一个小例子:

Given(对于)指定的某个用户输入了用户的信息,

When(当) 她完成输入了更多的信息

then(那么) 这个用户的信息应该保存在系统中

SpecFlow 整合了 Visual Studio 并能为指定场景生成和执行测试。从一个简单的用例故事开始,Julie 使用这些工具创建了测试项目并且执行了需要为描述用户故事场景所创建和运行的测试的步骤。

Julies 认为自己是一名数据极客,她十分关注和客户的协作和对其业务的理解。因此她相信领域驱动开发 (DDD) 和行为驱动开发是需要遵守的重要原则。

用户可以在 SpecFlow 的网站上找到更多的导学手册文档

BDD 是在大约 2006 年由 Dan North 创立的,他还写了一篇介绍和关于从BDD 角度去看用例故事的文章。

《实例化需求》一书介绍的是一种跟BDD 关系密切的需求定义方法。

查看英文原文: Get Started With Behaviour-Driven Development Focusing on the Domain Instead of on the Database


感谢杨赛对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ )或者腾讯微博( @InfoQ )关注我们,并与我们的编辑和其他读者朋友交流。

2013-08-06 01:581574
用户头像

发布了 81 篇内容, 共 24.1 次阅读, 收获喜欢 5 次。

关注

评论

发布
暂无评论
发现更多内容

Final Cut Pro for Mac(fcp专业视频后期制作)v10.8.0中文版

iMac小白

SecureCRT for mac(终端SSH工具)v9.3.2激活版

iMac小白

IntelliJ IDEA 2024 for Mac(Java语言开发集成环境)

iMac小白

macOS Sequoia 15(Macos15系统)v15.0 Beta 3测试版本

iMac小白

跨境电商物流解决方案供应商,专业为您服务

api开发

完美匹配你的需求:项目排期进度软件选型指南

爱吃小舅的鱼

项目管理 项目排期 项目进度

【XIAOJUSURVEY&北大】Java后端单元测试实践记录

XIAOJUSURVEY

Java maven 单元测试 覆盖率

Final Cut Pro for Mac(fcpx视频剪辑)v10.7.1 中文版

iMac小白

Illustrator 2024 for Mac(AI2024领先的矢量图形软件)v28.1中文激活版

iMac小白

直播预约丨《袋鼠云大数据实操指南》No.4:数据服务API实战解读,助力企业数字化跃迁

袋鼠云数栈

大数据 直播 API 数据服务 数据服务平台

MobPush HarmonyOS NEXT集成指南

MobTech袤博科技

Java 开发者 产品动态

SaaS应用加速解决方案

Ogcloud

网络加速 SaaS 产品 海外网络加速 SaaS应用加速

Termius for Mac(SSH客户端)v8.4.0激活版

iMac小白

Navicat Premium 15 for Mac(数据库开发工具)v15.0.36中文激活版

iMac小白

PDF Reader Pro for mac(全能pdf编辑阅读软件)激活版

iMac小白

什么原因让你想当程序员?

源字节1号

小程序 开源 前端 后端

聚焦智慧出行,TDengine 与路特斯科技再度携手

TDengine

MobPush REST API的推送 API之创建推送

MobTech袤博科技

Java 开发者 产品动态

行为驱动开发关注点从数据库转向领域模型_语言 & 开发_Jan Stenberg_InfoQ精选文章