O'Reilly logo

Professional ADO.NET 3.5 with LINQ and the Entity Framework by Roger Jennings

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Chapter 2. Understanding LINQ Architecture and Implementation

Most C# and especially VB developers probably have used many domain-specific programming languages (commonly called domain-specific languages or DSLs) during their careers. DSLs are special-purpose languages dedicated to popular application domains, such as word processing (WordBasic macros), spreadsheets (Excel functions), relational databases (SQL, Embedded Basic, AccessBasic, and Access macros), Web browsers (JavaScript or ECMAScript), music (CSound and hundreds of others), and XML documents (Quilt and XQuery). Visual Basic for Applications (VBA) subsumed WordBasic, AccessBasic, and Excel macros to become the generic DSL for COM-based Windows productivity applications. Microsoft has licensed VBA to hundreds of independent software vendors (ISVs).

DSLs for narrowly specified domains commonly implement code-generating GUIs and wizards. Industry pundits in the late 1990s mistakenly expected DSLs to relieve an impending programmer shortage with automated software factories. VS 2008's LINQ to SQL, Entity Data Model (EDM) Wizard, and EDM Designer, which Chapter 1 introduced, as well as the earlier DataSet designer are special-purpose DSLs that generate C# or VB partial classes from relational databases. Special-purpose DSLs have become so popular that Microsoft offers a set of domain-specific language tools for VS 2005 and later. These tools create custom graphic designers from domain-specific diagram notation and generate ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required