By Steve Cook, Gareth Jones, Stuart Kent, Alan Cameron Wills
Domain-Specific Languages (DSLs)--languages geared to express vertical or horizontal parts of interest--are producing growing to be pleasure from software program engineers and designers. DSLs deliver new agility to the production and evolution of software program, permitting chosen layout points to be expressed in phrases a lot nearer to the method requisites than commonplace software code, considerably decreasing improvement charges in large-scale initiatives and product traces. during this step forward booklet, 4 top specialists show precisely how DSLs paintings, and the way you may make the main of them on your atmosphere.
With Domain-Specific improvement with visible Studio DSL instruments , you are going to start by way of learning DSL techniques and methods that follow to all structures. subsequent, you will discover easy methods to create and use DSLs with the robust new Microsoft DSL Tools--a toolset designed through this book's authors. find out how the DSL instruments combine into visible Studio--and how to outline DSLs and generate visible Designers utilizing visible Studio's integrated modeling know-how.
In-depth insurance comprises
- Determining no matter if DSLs will paintings for you
- Comparing DSLs with different methods to model-driven development
- Defining, tuning, and evolving DSLs: versions, presentation, construction, updates, serialization, constraints, validation, and more
- Creating visible Designers for brand new DSLs with very little coding
- Multiplying productiveness via producing software code out of your types with easy-to-use textual content templates
- Automatically producing configuration documents, assets, and different artifacts
- Deploying visible Designers around the association, speedy and easily
- Customizing visible Designers for specialised approach needs
record of Figures record of Tables Foreword Preface concerning the Authors bankruptcy 1 Domain-Specific improvement bankruptcy 2 developing and utilizing DSLs bankruptcy three area version Definition bankruptcy four Presentation bankruptcy five production, Deletion, and replace habit bankruptcy 6 Serialization bankruptcy 7 Constraints and Validation bankruptcy eight producing Artifacts bankruptcy nine Deploying a DSL bankruptcy 10 complicated DSL Customization bankruptcy eleven Designing a DSL Index
Read or Download Domain-Specific Development with Visual Studio DSL Tools PDF
Best systems analysis & design books
This booklet collects the learn paintings of modern researchers and practitioners within the components of study, synthesis, layout and implementation of real-time structures with functions in numerous commercial fields. Their works are grouped into six components, jointly encompassing twenty chapters. each one half is dedicated to a mainstream topic, the chapters therein constructing one of many significant features of real-time process idea, modeling, layout, and sensible purposes.
The web has created new enterprise parts for the photo arts undefined: info is formatted to be released either on paper and online and new kinds of cooperation with shoppers and co-producers improve. the writer provides a huge evaluation of latest providers and tactics, the net has made attainable.
Measuring computing device functionality units out the basic recommendations utilized in examining and realizing the functionality of desktops. through the booklet, the emphasis is on sensible equipment of dimension, simulation, and analytical modeling. the writer discusses functionality metrics and offers distinctive insurance of the recommendations utilized in benchmark programmes.
Gaining knowledge of software program undertaking standards is a concise step by step consultant to setting up frameworks for the powerful administration and improvement of serious software program requisites. It re-defines the method and illustrates the necessities existence cycle from elicitation to research, and specification to validation.
Extra info for Domain-Specific Development with Visual Studio DSL Tools
Many of these conventions are derived from UML, which we discuss in more depth later. Conventions for Representing Structure See Figure 1-11 for examples of structural conventions, including: • Nested rectangle or rounded rectangles, to represent structural containment • Rectangles with headers, sections, and compartments, to represent objects, classes, entities, devices, and so on • Solid and dashed connectors with multiplicities, names, arrowheads, and other adornments, to represent relationships, associations, connections, and dependencies 21 22 Chapter 1: Domain-Spe cific Development • Connectors with large open triangular arrowheads, to represent generalization, inheritance, and derivation • Ports on the edges of shapes, to represent connectable endpoints Header +x -Compartment 1 Containment Compartments Generalization Connectors Ports Figure 1-11: Structural conventions Conventions for Representing Behavior See Figure 1-12 for examples of behavioral conventions, including: • Lifelines and arrows, to represent sequences of messages or invocations with a temporal axis • Rounded rectangles, arrows, swimlanes, diamonds, transition bars, and so on, to represent activities and flows • Nested ovals and arrows, to represent states and transitions • Ovals and stick people, to represent use cases and actors Using the DSL Tools, it is possible to build your own graphical language that combines conventions like these in a way that matches your particular problem (although version 1 of the Tools does not fully support all of the conventions listed).
But it will also include costs for testing, deployment, documentation, staff training, development process modifications, and so on. When setting out to implement a DSL you must balance these costs against the expected benefits. You’ll get the benefits when the costs can be paid off from the benefits of applying the approach to lots of systems. Hence the approach is particularly attractive to Systems Integrators, who often have to carry out many similar software development engagements for one customer after another.
Just like a compiler that can be used to compile itself, the DSL designer was used to define and generate itself. DSLs in Visual Studio Visual Studio 2005 has several graphical domain-specific languages integrated into it. These are the Distributed System Designers, which come with Visual Studio 2005 Team Edition for Software Architects, and the Class Designer which comes with Visual Studio 2005 Standard Edition and later. These designers are built on an earlier version of the DSL Tools; the current version is based on this earlier version and has evolved separately.
Domain-Specific Development with Visual Studio DSL Tools by Steve Cook, Gareth Jones, Stuart Kent, Alan Cameron Wills