|
|
(не показаны 4 промежуточные версии 2 участников) |
Строка 1: |
Строка 1: |
| == Аннотация == | | == Аннотация == |
− | ;Докладчик: [mailto:konkov@custis.ru Сева Коньков] <!--Желательно задать ссылку на публичный профиль, ну или на худой конец mailto:-ссылку--> | + | ;Докладчик: [http://www.facebook.com/profile.php?id=100002652492324 Всеволод Коньков] |
| | | |
| <blockquote> | | <blockquote> |
Строка 7: |
Строка 7: |
| '''«Domain Specific Languages: теория и практика»''' | | '''«Domain Specific Languages: теория и практика»''' |
| | | |
− | * Семинар для желающих разрушить завесу тайны над языково-ориентированным программированием.
| + | Данный семинар рассказывает о том, что такое предметно-ориентированные языки и зачем они нужны. Кроме этого, на примере одной из предметных областей достаточно подробно иллюстрируются различные способы создания предметно-ориентированных языков, описываются внутренние механизмы различных реализаций их работы. Показано как, используя возможности языков программирования общего назначения, таких как C# и Ruby можно создавать внутренние предметно-ориентированные языки. И как с помощью дополнительных инструментальных средств можно создавать внешние предметно-ориентированные языки. Среди инструментальных средств рассматриваются: |
− | * Ты не знаешь зачем нужны языки специфичные для предметной области (''Domain Specific Language'', DSL)?
| + | |
− | * Понятия не имеешь, какие задачи позволяет решать внедрение DSL?
| + | |
− | * Тебе покоя не дает вопрос, какие подходы используются для создания DSL?
| + | |
− | * Устал гадать, что за проблемы возникают при внедрении DSL и как эти проблемы разрешать?
| + | |
| | | |
− | На семинаре разобраны примеры создания DSL на динамических языках общего назначения, таких как <tt>Ruby</tt> и <tt>Boo</tt>.
| + | * XML |
− | Для самых бесстрашных будут освещены теоретические вопросы связи языково-ориентированного программирования с ''Domain Driven Development'' (DDD) и ''Model Driven Development'' (MDD).
| + | * XSLT |
| + | * ANTLR |
| + | * Jet Brains Meta Programming System |
| + | * Microsoft SQL Server Modeling (Oslo) |
| | | |
− | Кроме этого Сева будет вещать о реальных практиках внедрения DSL в работающих проектах. Сделает обзор средств для создания DSL, таких как:
| + | Также обсуждается связь предметно-ориентированных языков с такими современными парадигмами как Domain Driven Design (DDD) и Model Driven Development (MDD). |
| | | |
− | * <tt>XML</tt>, <tt>XSLT</tt>
| |
− | * <tt>Microsoft SQL Modeling Services</tt> (в частности язык «<tt>M</tt>»)
| |
− | * <tt>Microsoft Visual Modeling SDK</tt>
| |
− | * <tt>JetBrains Meta Programming System</tt> (MPS)
| |
− | * <tt>ANTLR</tt>
| |
| </blockquote> | | </blockquote> |
| | | |
Строка 34: |
Строка 28: |
| | | |
| --> | | --> |
| + | |
| + | == Презентация == |
| + | [[Файл:SeminarDSL.pdf|center|640px]] |
| + | |
| + | == Исходные коды примеров == |
| + | |
| + | Ссылка: [[Файл:DSL Examples.zip]] |
| + | |
| + | Для работы всех примеров необходимо: |
| + | |
| + | * [http://www.microsoft.com/visualstudio/ru-ru Microsoft Visual Studio 2010] |
| + | |
| + | Для KitchenBot: |
| + | |
| + | * [http://ironruby.codeplex.com/releases/view/60511#DownloadId=217152 IronRuby] |
| + | |
| + | Для VMSDK |
| + | |
| + | * [http://www.microsoft.com/download/en/details.aspx?id=2680 Visual Studio 2010 SDK] |
| + | * [http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=23025 Microsoft Visual Studio 2010 Visualization & Modeling SDK] |
| + | |
| + | Для OSLO |
| + | |
| + | * [http://www.microsoft.com/download/en/details.aspx?id=24113 SQL Server Modeling CTP - Nov 2009 Release 3] |
| | | |
| == Примечания и отзывы == | | == Примечания и отзывы == |
Строка 39: |
Строка 57: |
| ;Domain Specific Languages: | | ;Domain Specific Languages: |
| * [[Language Oriented Programming (LOP) в действии (Максим Мазин, ADD-2011)]] | | * [[Language Oriented Programming (LOP) в действии (Максим Мазин, ADD-2011)]] |
| + | * [http://www.williamspublishing.com/Books/978-5-8459-1738-6.html Книга Фаулера "Предметно-ориентированные языки программирования"] |
| + | * [http://www.antlr.org ANTLR] |
| + | * [http://www.jetbrains.com/mps/ Meta Programming System] |
| + | * [http://archive.msdn.microsoft.com/vsvmsdk Visual Studio Visualization and Modeling SDK] |
| + | * [http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=24113 SQL Server Modeling (OSLO)] |
| | | |
| ;Domain Driven Design: | | ;Domain Driven Design: |
| * [[Тренинг Андрея Бибичева по «DDD» (2010-03-03)]] | | * [[Тренинг Андрея Бибичева по «DDD» (2010-03-03)]] |
| * [[Domain Driven Design — как, почему и зачем? (Николай Гребнев, ADD-2011)]] | | * [[Domain Driven Design — как, почему и зачем? (Николай Гребнев, ADD-2011)]] |
| + | * [http://www.williamspublishing.com/Books/978-5-8459-1597-9.html Книга Эрика Эванса (Библия DDD)] |
| | | |
| <!-- Если будут отзывы — <blockquote>[©]</blockquote> --> | | <!-- Если будут отзывы — <blockquote>[©]</blockquote> --> |
| {{replicate-from-custiswiki-to-lib}} | | {{replicate-from-custiswiki-to-lib}} |
| [[Категория:Семинары для студентов]] | | [[Категория:Семинары для студентов]] |
| + | [[Категория:DSL-языки (доклады)]] |