Domain-Specific Languages (Addison-Wesley Signature Series (Fowler))

November 18, 2013 - Comment

When carefully selected and used, Domain-Specific Languages (DSLs) may simplify complex code, promote effective communication with customers, improve productivity, and unclog development bottlenecks. In Domain-Specific Languages , noted software development expert Martin Fowler first provides the information software professionals need to decide if and when to utilize DSLs. Then, where DSLs prove suitable, Fowler presents

Buy Now! $47.13Amazon.com Price
(as of November 19, 2017 6:47 pm UTC - Details)

When carefully selected and used, Domain-Specific Languages (DSLs) may simplify complex code, promote effective communication with customers, improve productivity, and unclog development bottlenecks. In Domain-Specific Languages , noted software development expert Martin Fowler first provides the information software professionals need to decide if and when to utilize DSLs. Then, where DSLs prove suitable, Fowler presents effective techniques for building them, and guides software engineers in choosing the right approaches for their applications.

This book’s techniques may be utilized with most modern object-oriented languages; the author provides numerous examples in Java and C#, as well as selected examples in Ruby. Wherever possible, chapters are organized to be self-standing, and most reference topics are presented in a familiar patterns format.

Armed with this wide-ranging book, developers will have the knowledge they need to make important decisions about DSLs—and, where appropriate, gain the significant technical and business benefits they offer.

 

The topics covered include:

•      How DSLs compare to frameworks and libraries, and when those alternatives are sufficient

•      Using parsers and parser generators, and parsing external DSLs

•      Understanding, comparing, and choosing DSL language constructs

•      Determining whether to use code generation, and comparing code generation strategies

•      Previewing new language workbench tools for creating DSLs

Comments

Holygrail says:

Well written but not comprehensive As usual, Fowler delivers a very well structured book, easy to both read and use as reference material. He is a very able and pragmatic writer and that shows in this book.However, I can’t consider this book a good text because of the things it omits. This is a book about designing DSLs and this task is one of the things functional languages excel at, but Fowler establishes in the introduction that he is going to happily ignore all things related to functional programming and never looks back. Anyone interested in designing DSLs owes it to himself to research Haskell, Scala and F# as they are vastly superior to Java in this respect.Fowler has been one of the best at writing about OO design and approaches this book in the same way, sadly he hasn’t upgraded his knowledge to include other paradigms that in this case address the problem at hand better.

David Spencer says:

Bad kindle conversion This excellent information in the book is locked behind a lazy kindle conversion. References within the book are not hyper-lined, and, much worse, reference page numbers of the physical edition instead of kindle “locations,” making them extra useless. All for a price approaching the physical edition.

mobiusklien "mobiusklien" says:

Linking implicit ideas that are in the back of our mind. I no longer write programs, I help people design systems, through sensible design and architecture, but I have never forgotten my assembler roots. The author has produced an important book, as significant as when he created the refactoring book and analysis patterns, and for the same reason.Fowler took concepts that good professionals understand almost implicitly by working through these difficult ideas and places them in context that can be used as a communication tool. He has put a name and a face to a set of memes.Fowlers critical examination of the importance of the semantic model and the way it needs to be constructed apart from syntax, the separation of the state machine model, and the illustrative programming ideas as exemplified by spreadsheets, provide PERSPECTIVE that is so sorely needed. He links these concepts together in a way that is vital for architects and programmers.

Write a comment