Neil Green: Writing Custom DSLs [JSConf2014 ]

preview_player
Показать описание
When writing complex business logic, it is critically important to maintain clean code though the judicious applications of Test Driven Development and Domain Driven Design. However, even these powerful techniques fall short of solving the problem at the heart of building complex software: building what the customer actually wants.

Domain Specific Languages (DSLs) allow us to capture complex business requirements in code written in the language of the customer. Once an ubiquitous language between you and your customer is defined and implemented as a DSL, the code can quite literally be given back to the customer to edit and refine. This is not a theory, or a myth. I have done this under real-world constraints and deadlines, and you can as well.

JavaScript's ability to blend Object Oriented and Functional Programming paradigms makes it an ideal language for authoring custom DSLs. Unfortunately, too often developers are unclear on how to identify when a custom DSL is an appropriate solution, and when it is, how to go about writing one. I will take you through the process of developing a few different custom DSLs from planning to implementation, as well as how to performance tune and debug your new custom language. My hope is that you will gain a powerful tool for managing complex software that will keep you sane, and your customers happy.
Рекомендации по теме
Комментарии
Автор

Yeah that was really good -- interesting talk. Wish he posted the final DSL code somewhere so that I could read it to understand a bit more how he ended up structuring things

kylesuss
Автор

Neil keep it up. I felt a deep sense of pride watching this.

Will definitely be checking out your other presentations.

rwells
Автор

Great speaker! I actually don't have much interest in this topic, but the speaker was awesome and made this really interesting. Thanks!

HartleySan
Автор

19:20
Transcribing cost 80$ ten years ago?

NitsanAvni
Автор

"Is hot!" she wispered around the 26:57

icexiro
Автор

thanks for this interesting subject, my question is about syntaxical tree, we dont need it to construct a DSL ?

zyadelkhadir