Search Wiki:

What is new in the Visual Studio Visualization and Modeling SDK

What is the Visual Studio 2012 RC Visualization and Modeling SDK?

In addition to all the content of the Visual Studio 11 Beta Visualization and Modeling SDK, the Visual Studio 2012 RC Visualization and Modeling SDK brings a new loader for the code index, that indexes the PDB files

What is the Visual Studio 11 Beta Visualization and Modeling SDK?

In addition to all the content of the Visual Studio 2010 Visualization and Modeling SDK, the Visual Studio 11 Visualization and Modeling SDK brings build rules to bulk index assemblies in the code index used by Visual Studio Ultimate to improve the performance and the scalability of the Dependency graphs. To use them, please read the instructions in the .targets file found in %ProgramFiles(x86)%\MSBuild\Microsoft\VisualStudio\v11.0\Repository\

What is the Visual Studio 2010 Visualization and Modeling SDK?

The Visual Studio Visualization and Modeling SDK was originally the Domain Specific Language (DSL) Tools which enable architects and developers to rapidly create and distribute their own custom model editors with a forms-based or graphical (using boxes and lines) user experience. The editors (sometimes called designers) are hosted in Visual Studio. T4 technology (Text Templating Text Transformation) can be used to generate textual artefacts from models.
The RC release of Visual Studio 2010 adds to the original DSL SDK a new feature enabling customers to add menus to the Visual Studio 2010 Ultimate Architecture tools (UML designers, Layer designer, and DGML viewer)

The Architecture tools extensibility

%Program Files%\Microsoft Visual Studio 2010 SDK\VisualStudioIntegration\Common\Inc now contains a new file: ArchToolsCommandIDs.h, which contains the command IDs of the architecture tools (in the same way DslTools.h has been containing the command IDs for the DSLs)

The DSL Tools runtime and the DSL SDK

Visual Studio 2010 ships with the DSL Tools and T4 runtime in the box in every SKU since it is used by other tools in Visual Studio, such as the Linq to SQL designer. A DSL Tools authoring experience is shipped separately and depends on and exploits features in the Visual Studio SDK. This is the DSL SDK. This is a slight departure from Visual Studio 2008 where DSL Tools authoring shipped inside the VS SDK. Shipping separately gives us more flexibility on when we ship, in particular allows us to make more frequent improvements. The DSL SDK part of the Visualization and Modeling SDK can be accessed, once installed from %Program Files%\Microsoft Visual Studio 2010 SDK\VisualStudioIntegration\Tools\DSLTools

What is new in DSL Tools for Visual Studio 2010?

In Visual Studio 2010, the F5 experience is improved, and deployment of a DSL considerably simplified, exploiting the extension manager in the Visual Studio platform and the new facilities in the Visual Studio SDK top create a VSIX package which is a simple zip archive that unpacks itself into the User’s extensions folder.

Visual Studio 2010 Visualization and Modeling SDK also brings 11 new DSL features:
  1. Different models can now interact with each other, (and with Visual Studio Team System Architecture UML designers), using the ModelBus. A DSL author can choose to generate a ModelBus adapter, that will expose his model to other models or tools.
  2. Databinding support has been added, allowing Windows.Forms and WPF form-based designers to be created by binding a standard winform or WPF-based UI directly to DSL models. This enables developers to quickly create designers such as the .ResX or .settings designers in Visual Studio.
  3. It is now possible to have completely or partially read only models, which can be used for instance by reviewing and commenting tools.
  4. A number of UI enhancements have been added, including :
    1. moveable decorator for connectors,
    2. sticky toolbox items (when the user double-clicks on an item in the toolbox,it’s not necessary to return to the toolbox for repeated applications of the tool),
    3. quick navigation and editing of compartments with the keyboard
    4. Copy and paste of diagram elements to images (in Bitmap and .wmf/emf)
    5. Copy and paste of model elements in or between diagrams. This was also applied to the Dsl Designer so that you can easily refactor your models!
  5. The notion of DslLibrary has been introduced. This enables factorizing and componentizing DSLs (for instance having several domain models have the same base-domain class). (New in Beta2): There is a new Dsl template for this and we can dynamically import libraries into a language during language authoring time. The authoring experience includes: loading libraries through dsl explorer, unload libraries through dsl explorer, validation warnings for circular dependencies between dsl libraries and language, validation warnings Detects broken imports)
  6. The Domain Model Extensibility enables third parties to extend a DSL after deployment (See a sample's documentation and source code)
  7. The DslDesigner itself can be extended both using the Domain Model Extensibility, and using a simpler MEF extensibilty. You can thus add domain properties, rules, but also now commands, gestures, validation to the Dsl designer if you wish.
  8. T4 is now independant on the DSL Tools (you have T4 in Visual Studio and do not need to install the DSL Tools any longer to benefit from it). However, the DslSdk contains msbuild rules and tasks for T4 code-generation at build time
A migration tool is included to help DSL authors migrate their existing DSLs from Visual Studio 2008 and the associated VSSDK. (For more details, see the documentation and a video)

Last edited Jun 2 2012 at 12:43 AM  by jmprieur, version 6
Page view tracker