使用VS2012 Visualization & Modeling SDK为Apworks添加领域模型设计器

随着几个版本的更新,Apworks框架也日趋成熟。为了能够让开发人员更加方便地使用该框架进行企业级应用程序的开发,在维护框架本身的同时,我也致力于与其配套的工具软件和Visual Studio插件的研究和开发。在Apworks的最新版本中,已经添加了分别面向NHibernate和Entity Framework的WCF服务开发项目模板,但这个模板还很不完善,扩展性也不好(比如框架本身还支持MongoDB的实现,但开发模板却没有这个选项),因此我也会在今后进一步完善,并发布在下个版本的Apworks工具集当中。

最近实践了一下Visual Studio 2012 Visualization & Modeling SDK(V&M SDK),它是一个基于Visual Studio 2012 SDK上的软件开发包。通过使用V&M SDK,开发人员可以根据自己的实际需要开发一套领域特定语言(DSL),并在实际项目中使用这种语言进行建模或自动化代码产生。其实我们早已接触过DSL并认识到它的好处,在日常开发中,DSL随处可见:Entity Framework中用于建立模型的设计器、LINQ语句、Fluent Interface、web.config文件等等。在codeplex上还有个很好的项目,它能够帮助你以图形化的方式设计你的配置文件配置节点,并生成一个配置文件的XSD Schema和配置文件样本,遗憾的是,目前它还不支持Visual Studio 2012。

在实践的过程中,我也试着设计了一下面向DDD的DSL,注意,它是面向DDD本身的,而不是面向特定领域的通用语言。在这个DSL中,我们设定:

  1. Type分为:Class和Interface
  2. 关联关系分为:聚合、引用、继承、实现四种
  3. Domain Class分为:Aggregate Root、Entity、Value Object三种
  4. Aggregate Root可以聚合Entity、Value Object
  5. Aggregate Root可以引用Aggregate Root
  6. Entity可以聚合Entity、Value Object
  7. Entity可以引用Aggregate Root

以下是设计器中展现的Domain Classes和Domain Relationships(点击此处下载xps格式全图):

image

以下是在Visual Studio 2012中,使用设计好的DSL进行Domain Model的设计的界面截图。该图展示了Byteart Retail项目的Domain Model设计界面:

image

目前来讲,这些都只是刚刚开始。要让这个DSL能够真正支持Apworks框架的项目开发,还需要做很多工作。今后,开发人员直接使用该DSL,就能够很方便地设计面向DDD的Domain Model,而模型的代码也会在后台自动产生。

转载于:https://www.cnblogs.com/daxnet/archive/2012/11/21/2780407.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
今天需要分析C++代码,希望能生成类图,准备使用VS旗舰版的Visualization and Modeling Feature Pack。 但需要订阅才能下载,在CSDN上找到了下载连接。但安装时出现错误,说是路径太长: 安装错误: System.IO.PathTooLongException: C:\Documents and Settings\Administrator\Local Settings\Application Data\Microsoft\VisualStudio\10.0\Extensions\Microsoft\Visualization and Modeling Feature Pack\1.0\ProjectTemplates\Modeling\Extensibility\1033\LayerValidator.zip: LayerValidator.vstemplate 搜了半天没有找到解决办法,另寻其他软件Rational Rose,要破解而且很大。不愿意折腾,转了一圈回来继续想办法。 终于找出一个解决方案: 1.安装Visualization_and_Modeling_Feature_Pack_Runtime.vsix。这个是运行时,扩展需要需要。 2.新建一个管理员用户0,并用该用户登录 3.安装en_visual_studio_2010_visualization_modeling_feature_pack_x86_x64_535571.vsix 4.复制C:\Documents and Settings\0\Local Settings\Application Data\Microsoft\VisualStudio\10.0\Extensions\Microsoft\Visualization and Modeling Feature Pack目录下的文件夹0,拷贝覆盖到C:\Documents and Settings\0\Local Settings\Application Data\Microsoft\VisualStudio\10.0\Extensions\Microsoft\Visualization and Modeling Feature Pack目录下。其实就是把路径中的0换成Administrator。 5.使用Administrator用户登录 6.打开VS->工具->扩展管理->visualization modeling feature pack->启用 7.重启VS 这里是该扩展的官方博客,里面有开发人员的使用演示: http://blogs.msdn.com/b/almcppcn/
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值