przejście do zawartości
zpr c++ quick reference
Narzędzia użytkownika
Zarejestruj się!
Zaloguj
Narzędzia witryny
Narzędzia
Pokaż stronę
Poprzednie wersje
Odnośniki
Ostatnie zmiany
Menadżer multimediów
Indeks
Zaloguj
Zarejestruj się!
Ostatnie zmiany
Menadżer multimediów
Indeks
Ślad:
interpreter
Ta strona jest tylko do odczytu. Możesz wyświetlić źródła tej strony ale nie możesz ich zmienić.
====== Wzorzec projektowy interpreter ====== Wzorzec projektowy **interpretera** korzysta z reprezentacji gramatyki analizowanego języka formalnego w celu interpretacji wyrażeń w tym języku. Wykorzystywany jest, gdy możliwe jest zapisanie zadań (problemów) w prostym, sformalizowanym języku. Rozwiązanie problemu polega wtedy na odpowiedniej interpretacji wyrażenia tego języka. Typowe możliwości wykorzystania: * interpretacja języków (programowania, matematycznych) w kompilatorach, interpreterach * dopasowywanie wzorców, np. opisanych za pomocą wyrażeń regularnych * inne, dające się formalnie opisać problemy, np. walidacja/interpretacja protokołów komunikacyjnych ===== Struktura ===== {{:interpreter.jpg|}} === AbstractExpression === wyrażenie abstrakcyjne, z nich składa się wyrażenie w analizowanym języku === TerminalExpression === Wyrażenie (symbol) terminalne w danej gramatyce, czyli wyrażenie, które nie składa się z podwyrażeń. Przykładowo, dla gramatyki wyrażeń arytmetycznych liczby są terminalami. === NonterminalExpression === Wyrażenie składające się (dające się podzielić) na podwyrażenia (terminalne lub nie). Na przykład dla gramatyki wyrażeń arytmetycznych takim wyrażeniem jest "3 + 5". === Context === Aktualny kontekst, który przechowuje stan, w którym znajduje się w danym momencie interpreter, co dla gramatyk kontekstowych pozwala m.in. decydować jak na danym etapie należy interpretować dalsze elementy ciągu wejściowego. Kontekst jest globalnym elementem interpretera. Na przykład analizując kolejne cyfry liczby dziesiętnej kontekst może reprezentować miejsce dziesiętne, np. dziesiątki, setki itd. === Client === Tworzy drzewo, reprezentujące konkretne zdanie wejściowe w języku zdefiniowanym przez gramatykę. Drzewo to jest budowane z konkretnych instancji wyrażeń terminalnych i nieterminalnych. Następnie wywołuje operację interpretacji na korzeniu tego drzewa.
interpreter.1228641292.txt.gz
· ostatnio zmienione: 2008/12/07 10:14 przez
posciak
Narzędzia strony
Pokaż stronę
Poprzednie wersje
Odnośniki
Do góry