Предметно-ориентированные языки (серия Addison-Wesley Signature (Fowler)) на русском
Domain-Specific Languages (Addison-Wesley Signature Series (Fowler)) (978-0131392809)
Купить и скачать электронную книгу в форматах PDF, EPUB, FB2, MOBI
Martin Fowler | #2173: Языки программирования
При тщательном выборе и использовании предметно-ориентированные языки (DSL) могут упростить сложный код, способствовать эффективному общению с клиентами, повысить производительность и устранить узкие места в процессе разработки. В книге «Предметно-ориентированные языки» известный эксперт по разработке программного обеспечения Мартин Фаулер сначала предоставляет информацию, необходимую специалистам в области программного обеспечения для принятия решения о целесообразности и целесообразности использования DSL. Затем, в тех случаях, когда DSL оказываются подходящими, Фаулер представляет эффективные методы их создания и помогает инженерам-программистам выбрать правильные подходы для своих приложений.
Методы, описанные в этой книге, могут быть использованы с большинством современных объектно-ориентированных языков; автор приводит многочисленные примеры на Java и C#, а также отдельные примеры на Ruby. По возможности, главы организованы таким образом, чтобы быть самодостаточными, а большинство справочных тем представлены в привычном формате шаблонов.
Вооружившись этой всеобъемлющей книгой, разработчики получат необходимые знания для принятия важных решений относительно DSL (предметно-ориентированных языков программирования) и, при необходимости, смогут извлечь значительные технические и коммерческие выгоды из их использования.
В число рассматриваемых тем входят:
- Сравнение DSL с фреймворками и библиотеками, и когда эти альтернативы являются достаточными.
- Использование парсеров и генераторов парсеров, а также разбор внешних DSL.
- Понимание, сравнение и выбор языковых конструкций DSL (дополнительных предметов языка).
- Определение целесообразности использования генерации кода и сравнение стратегий генерации кода.
- Предварительный обзор новых инструментов для создания DSL-дисплеев в среде разработки языковых приложений.