Master your Minecraft
 
 

Special Offers see all

Enter to WIN a $100 Credit

Subscribe to PowellsBooks.news
for a chance to win.
Privacy Policy

Tour our stores


    Recently Viewed clear list


    Best Books of the Year | December 10, 2014

    Mary Jo Schimelpfenig: IMG Best Fantasy/Sci-Fi of 2014



    Here are the books that knocked my socks off in 2014. All of them would make great gifts; each of them was truly something that evoked that... Continue »

    spacer
Qualifying orders ship free.
$9.50
Used Trade Paper
Ships in 1 to 3 days
Add to Wishlist
Qty Store Section
1 Local Warehouse Microsoft Windows- Visual Studio

More copies of this ISBN

Domain-Specific Development with Visual Studio DSL Tools (Microsoft .Net Development)

by

Domain-Specific Development with Visual Studio DSL Tools (Microsoft .Net Development) Cover

 

Synopses & Reviews

Publisher Comments:

Domain-Specific Languages (DSLs)--languages geared to specific vertical or horizontal areas of interest--are generating growing excitement from software engineers and architects. DSLs bring new agility to the creation and evolution of software, allowing selected design aspects to be expressed in terms much closer to the system requirements than standard program code, significantly reducing development costs in large-scale projects and product lines. In this breakthrough book, four leading experts reveal exactly how DSLs work, and how you can make the most of them in your environment.

With Domain-Specific Development with Visual Studio DSL Tools , you'll begin by mastering DSL concepts and techniques that apply to all platforms. Next, you'll discover how to create and use DSLs with the powerful new Microsoft DSL Tools--a toolset designed by this book's authors. Learn how the DSL Tools integrate into Visual Studio--and how to define DSLs and generate Visual Designers using Visual Studio's built-in modeling technology.

In-depth coverage includes

  • Determining whether DSLs will work for you
  • Comparing DSLs with other approaches to model-driven development
  • Defining, tuning, and evolving DSLs: models, presentation, creation, updates, serialization, constraints, validation, and more
  • Creating Visual Designers for new DSLs with little or no coding
  • Multiplying productivity by generating application code from your models with easy-to-use text templates
  • Automatically generating configuration files, resources, and other artifacts
  • Deploying Visual Designers across the organization, quickly and easily
  • Customizing Visual Designers for specialized process needs

List of Figures

List of Tables

Foreword

Preface

About the Authors

Chapter 1 Domain-Specific Development

Chapter 2 Creating and Using DSLs

Chapter 3 Domain Model Definition

Chapter 4 Presentation

Chapter 5 Creation, Deletion, and Update Behavior

Chapter 6 Serialization

Chapter 7 Constraints and Validation

Chapter 8 Generating Artifacts

Chapter 9 Deploying a DSL

Chapter 10 Advanced DSL Customization

Chapter 11 Designing a DSL

Index 

Book News Annotation:

Cook, a software architect at Microsoft and one of the main designers of the Microsoft DSL Tools, offers a software developer's and architect's guide to using the tools included in the Software Development Kit for Microsoft Visual Studio 2005 for creating domain specific languages (DSLs). He explains how to create and use DSLs, how to tune them to specific needs, and how to employ them within the context of a project. The first and last chapters of the book discuss general issues of DSLs and their design, and the bulk of the book focuses on building DSLs and code generators using the DSL Tools. Screenshots are included on almost every page. The book will also be of value to readers who are interested in the broader general topic of DSLs, or who wish to compare and contrast different approaches to model-driven development. Annotation ©2007 Book News, Inc., Portland, OR (booknews.com)

Synopsis:

Domain-Specific Languages (DSLs)--languages geared to specific vertical or horizontal areas of interest--are generating growing excitement from software engineers and architects. DSLs bring new agility to the creation and evolution of software, allowing selected design aspects to be expressed in terms much closer to the system requirements than standard program code, significantly reducing development costs in large-scale projects and product lines. In this breakthrough book, four leading experts reveal exactly how DSLs work, and how you can make the most of them in your environment.

With Domain-Specific Development with Visual Studio DSL Tools, you'll begin by mastering DSL concepts and techniques that apply to all platforms. Next, you'll discover how to create and use DSLs with the powerful new Microsoft DSL Tools--a toolset designed by this book's authors. Learn how the DSL Tools integrate into Visual Studio--and how to define DSLs and generate Visual Designers using Visual Studio's built-in modeling technology.

In-depth coverage includes

  • Determining whether DSLs will work for you
  • Comparing DSLs with other approaches to model-driven development
  • Defining, tuning, and evolving DSLs: models, presentation, creation, updates, serialization, constraints, validation, and more
  • Creating Visual Designers for new DSLs with little or no coding
  • Multiplying productivity by generating application code from your models with easy-to-use text templates
  • Automatically generating configuration files, resources, and other artifacts
  • Deploying Visual Designers across the organization, quickly and easily
  • Customizing Visual Designers for specialized process needs

List of Figures

List of Tables

Foreword

Preface

About the Authors

Chapter 1 Domain-Specific Development

Chapter 2 Creating and Using DSLs

Chapter 3 Domain Model Definition

Chapter 4 Presentation

Chapter 5 Creation, Deletion, and Update Behavior

Chapter 6 Serialization

Chapter 7 Constraints and Validation

Chapter 8 Generating Artifacts

Chapter 9 Deploying a DSL

Chapter 10 Advanced DSL Customization

Chapter 11 Designing a DSL

Index 

About the Author

Steve Cook joined Microsoft in 2003 to work on the DSL Tools. Previously, he was a Distinguished Engineer at IBM, which he represented in the UML 2.0 specification process at the OMG. He has worked in the IT industry for 30 years, as architect, programmer, author, consultant, and teacher. He was one of the first people to introduce object-oriented programming into the UK, and has concentrated on languages, methods, and tools for modeling since the early 1990s.

Gareth Jones is a lead developer in the DSL Tools team. He's been at Microsoft since 1997 doing various developer jobs such as building bespoke enterprise solutions, running the development of Microsoft UK's small business portal, and managing a consultancy team. Before joining Microsoft, he spent seven years leading development projects in the intelligence analysis, simulation, and aerospace industries.

Stuart Kent joined Microsoft in 2003 to work on the DSL Tools. Previously, he was an academic and consultant, with a reputation in modeling and model-driven development. He has over 50 publications to his name and made significant contributions to the UML 2.0 and MOF 2.0 specifications. He is a member of the editorial board of the journal Software and Systems Modeling, and on the steering committee for the MoDELS series of conferences. He has a Ph.D. in computing from Imperial College, London.

Alan Cameron Wills was a methodology consultant for almost a decade, and used to get very frustrated when people asked about good tools to support the methods. So he was very pleased to join Microsoft in 2003 to help in the DSL Tools project. He has a Ph.D. in computer science, and was joint creator of the Catalysis approach to component-based development. He gets excited about software factories, photography, sailing, and hills.

Table of Contents

List of Figures xvii

List of Tables xxv

Foreword xxvii

Preface xxix

About the Authors xxxv

Chapter 1 Domain-Specific Development 1

Introduction 1

Domain-Specific Development 2

Examples 4

Benefits 10

Languages 11

Textual DSLs 15

Graphical DSLs 20

Aspects of Graphical DSLs 23

DSLs in Visual Studio 27

The Customization Pit 32

UML 34

Summary 40

Chapter 2 Creating and Using DSLs 41

Introduction 41

Process: Incremental Development of DSLs 41

Creating a DSL in Visual Studio 57

A Second DSL: The Project Definition DSL 77

Architecture of the DSL Tools 78

Summary 85

Chapter 3 Domain Model Definition 87

Introduction 87

The Domain Model Designer 88

The In-Memory Store 89

Domain Classes 92

Domain Relationships 98

Generating a Designer with No Shapes 108

The Generated Code 109

More about Domain Classes 115

More about Domain Properties 119

More on Domain Relationships and Roles 122

More about the Store 129

Summary 131

Chapter 4 Presentation 133

Introduction 133

Graphical Notation--Overview 134

Diagram and Editor 137

Shapes 146

Connectors 164

Decorators 167

Customizing the Graphical Notation in Code 173

Explorer 180

Properties Window 188

Summary 195

Chapter 5 Creation, Deletion, and Update Behavior 197

Introduction 197

Element Creation 197

Connection Builders 216

Element Deletion 229

Summary 234

Chapter 6 Serialization 237

Introduction 237

Saving and Loading Models and Diagrams 238

Model XML File Format 239

Elements and Properties 242

Relationships 243

Cross-Referencing 245

Diagram XML File Format 251

Versioning and Migration 254

The XML Schema 257

Customization 258

Generated Serialization Code 264

Summary 273

Chapter 7 Constraints and Validation 275

Introduction 275

Choosing Hard or Soft Constraints? 277

Soft Constraints in the DSL Tools 280

Hard Constraints in the DSL Tools 295

Rules 296

Putting Together Hard and Soft Constraints 299

Summary 307

Chapter 8 Generating Artifacts 309

Introduction 309

Artifact Generation Styles 311

Complex Relationships and Round-Tripping 321

The Templatization Process 325

Syntax of a Text Template 341

Problems of Large-Scale, Real-World Artifact Generation 349

Advanced Customizations 351

Summary 366

Chapter 9 Deploying a DSL 369

Introduction 369

Files Needed to Install a Designer 370

Getting Started--Creating a Setup Project 373

Setup Project Contents 376

Customizing Setup 377

The .dslsetup Format 378

Refreshing the Installation Files 387

Package Load Key 388

Deploying Text Templates for Code Generation 390

Summary 396

Chapter 10 Advanced DSL Customization 397

Introduction 397

Tools for Customization 397

Responding to Changes 402

DSL Shell Architecture 426

How to Add a Menu Command 429

Building the DSL Diagram into Another Interface 435

Implementing Copy and Paste 437

Shape Containers 442

Summary 453

Chapter 11 Designing a DSL 455

Introduction 455

Identifying Variability 456

Developing the Domain Model 460

Developing the Notation 468

Defining Validation Constraints 475

Developing and Evolving the Framework 479

Testing 484

Evolving a DSL 489

What Makes a Good DSL? 491

Summary 498

Conclusion 499

Index 503

Product Details

ISBN:
9780321398208
Author:
Cook, Steve
Publisher:
Addison-Wesley Professional
Author:
Kent, Stuart
Author:
Will
Author:
Jones, Gareth
Author:
s, Alan Cameron
Author:
Wills, Alan Cameron
Subject:
Programming - Systems Analysis & Design
Subject:
Computer software
Subject:
Development
Subject:
Software Development & Engineering - Systems
Subject:
Computer software -- Development.
Subject:
Software Engineering-Systems Analysis and Design
Copyright:
Edition Description:
Trade paper
Series:
Microsoft Windows Development Series
Publication Date:
June 2007
Binding:
TRADE PAPER
Grade Level:
Professional and scholarly
Language:
English
Illustrations:
Y
Pages:
576
Dimensions:
9 x 7 x 1.3 in 898 gr

Related Subjects

Computers and Internet » Operating Systems » Microsoft Windows » Visual Studio
Computers and Internet » Software Engineering » Systems Analysis and Design

Domain-Specific Development with Visual Studio DSL Tools (Microsoft .Net Development) Used Trade Paper
0 stars - 0 reviews
$9.50 In Stock
Product details 576 pages Addison-Wesley Professional - English 9780321398208 Reviews:
"Synopsis" by ,

Domain-Specific Languages (DSLs)--languages geared to specific vertical or horizontal areas of interest--are generating growing excitement from software engineers and architects. DSLs bring new agility to the creation and evolution of software, allowing selected design aspects to be expressed in terms much closer to the system requirements than standard program code, significantly reducing development costs in large-scale projects and product lines. In this breakthrough book, four leading experts reveal exactly how DSLs work, and how you can make the most of them in your environment.

With Domain-Specific Development with Visual Studio DSL Tools, you'll begin by mastering DSL concepts and techniques that apply to all platforms. Next, you'll discover how to create and use DSLs with the powerful new Microsoft DSL Tools--a toolset designed by this book's authors. Learn how the DSL Tools integrate into Visual Studio--and how to define DSLs and generate Visual Designers using Visual Studio's built-in modeling technology.

In-depth coverage includes

  • Determining whether DSLs will work for you
  • Comparing DSLs with other approaches to model-driven development
  • Defining, tuning, and evolving DSLs: models, presentation, creation, updates, serialization, constraints, validation, and more
  • Creating Visual Designers for new DSLs with little or no coding
  • Multiplying productivity by generating application code from your models with easy-to-use text templates
  • Automatically generating configuration files, resources, and other artifacts
  • Deploying Visual Designers across the organization, quickly and easily
  • Customizing Visual Designers for specialized process needs

List of Figures

List of Tables

Foreword

Preface

About the Authors

Chapter 1 Domain-Specific Development

Chapter 2 Creating and Using DSLs

Chapter 3 Domain Model Definition

Chapter 4 Presentation

Chapter 5 Creation, Deletion, and Update Behavior

Chapter 6 Serialization

Chapter 7 Constraints and Validation

Chapter 8 Generating Artifacts

Chapter 9 Deploying a DSL

Chapter 10 Advanced DSL Customization

Chapter 11 Designing a DSL

Index 

spacer
spacer
  • back to top

FOLLOW US ON...

     
Powell's City of Books is an independent bookstore in Portland, Oregon, that fills a whole city block with more than a million new, used, and out of print books. Shop those shelves — plus literally millions more books, DVDs, and gifts — here at Powells.com.