Czas trwania
1-2 dni
Abstrakt
Podczas szkolenie uczestnicy zapoznają się z tematyką tworzenia i używania języków dziedzinowych. Jeden z najbardziej elastycznej i oferujących największe możliwości metodzie konfiguracji systemu. W ręce użytkownika (wdrożeniowca, specjalny zespół po stronie klienta) będziemy oddawać prosty język, który pomoże mu zmienić określone reguły biznesowe rządzące systemem w niespotykanym do tej porze czasie.
Przykładowe problemy, które zostaną zaprezentowane na szkoleniu to:
“Szkolenie było bardzo ciekawe, konkretne z licznymi przykładami”
- Reguły biznesowe i walidayjne.
- Język matematyczny.
- System rabatowy.
- System liczenia zdolności kredytowej.
- Walidator zapytań SQL.
Zagadnienia
| Po co nam DSL? |
| Problemy konfigurowalności aplikacji |
| Często zmieniające się wymagania biznesowe |
| Bezpieczeństwo – chcemy by użytkownik mógł wykonać tylko to na co mu pozwolimy |
| Wydajność – chcemy by techika była szybka i wydajna |
| Prostota – chcemy by użytkownik mógł bardzo szybko nauczyć się naszego DSLa. |
| Szybki czas reakcji – chcemy skrócić do minimum czas wymaganie – zaimplementowana funkcjonalność. |
| Czym jest DSL? |
| Alternatywne rozwiązania |
| Przykładowe rozwiązania |
| Praktyczne informacje o kompilatorach |
| Drzewo wyrażenia, drzewa AST |
| Użycie ANTLR do budowy składni języka |
| Projektowanie składni wyrażeń DSL |
| Budowa drzewa AST |
| Sprawdzanie poprawności fizycznej i logicznej danego zapytania |
| Wykonywanie wyrażenia |
| Interpretacja |
| Wzorzec Visitor |
| Generacja kodu |
| Techniki |
| Expression |
| Reflection.Emit |
| Cele |
| Generacja kodu |
| Generacja klas |
| Przydatne techniki |
| Lambda expression |
| C# dynamic: expando object |
| Techniki cross-platformowe: |
| .Net |
| Silverlight |
| Windows Phone |
