1 Востаннє редагувалося DOP (29.11.2014 10:37:41)

Тема: Шаблон проектування Little Language(Interpreter). Гранд

Маю завдання по курсовій описати шаблон проектування Little Language та перевести з Java на C# приклад з тої книги.
Знайшов код ось тут. Але там в main методі використовується лише клас LexicalAnalyzer...іншими словами, я не можу допетрикати, що має бути на виході...синтаксичне дерево? масив отих зміщень слів?

Не можу я догнати, як дописати приклад(вже 2-3 рази перечитував той розділ...марно) :(
Тому прошу у Вас помочі, може хтось стикався з таким шаблоном, може хтось зможе пояснити, як то все має бути?

P.S. Судячи з всього, головний клас там - це Parser і метод parse. Але що робити з тим значенням WordCombination(в коді і книзі інші назви, але суть не міняє)?

Client.  Экземпляр класса в этой роли запускает программу малого языка, предоставляет ей  все  необходимые данные  и  использует результаты,  которые  получены в  результате  работы  програм мы.  Он создает экземпляр  класса Parser для  программ си нтаксического разбора,  которые  он  предоставляет  при  помоши объектов  InputStream.  Метод  parse  объекта  Par ser  возвращает экземпляр  класса AbstractNonterminal объекту  Client. Этот  объект является  корневым  в  дереве  синтаксического  разбора.  Объект Client вызывает метод execute объекта  AbstractNonterminal для запуска программы.

[10:34] Прикріпив файл проекту на NetBeans.

Post's attachments

LittleLanguage(Java).rar 32.88 kb, 363 downloads since 2014-11-29 

Гранд. Шаблоны проектирования в Java. 2004.pdf 8.65 mb, 16137 downloads since 2014-11-29 

2

Re: Шаблон проектування Little Language(Interpreter). Гранд

На виході LexicalAnalyzer токени

3

Re: Шаблон проектування Little Language(Interpreter). Гранд

Це у прикладі, що на тому сайті...це я розумію, але там в мейні не юзаються інші класи, такі як wordcombination, and combination та ін. Парсер у прикладі теж не юзається...ось в чому питання..навіщо тоді вони описані?