Вопросы экзамена по курсу Романо
Вопросы экзамена по курсу Романова В.Ю.
«Разработка объектно-ориентированных систем программирования интегрированных в среду Eclipse».
-
Архитектура среды Eclipse. Структура подключаемых модулей. Точки расширения модулей. Использование точек расширения. Атрибуты подключаемого модуля.
-
Разработка простейшей точки расширения среды Eclipse. Структура файла-манифеста plugin.xml . Подключение библиотеки модулей. Создание класса для реализации расширения. Меню подключаемого модуля. Редактор модуля в Plug-in Development Environment.
-
Создание новых видов в среде Eclipse. Типы видов в перспективе Java. Точки расширения вида. Категория вида. Описание вида в манифесте. Вхождение вида в перспективы. Разработка простейший вид на основе управляющего элемента интерфейса пользователя Label (Метка).
-
Рабочее пространство среды Eclipse. История изменения файлов рабочего пространства. Маркировка ресурсов рабочего пространства. Виды маркеров для ресурсов. Программирование маркировки ресурсов.
-
Разработка синтаксически ориентированного редактора в среде Eclipse. Структура файла-манифеста для синтаксически ориентированного редактора. Разработка правил для сканера программы. Описание комментария в языке программирования. Описание строк языка программирования. Описание идентификаторов и ключевых слов языка программирования.
-
Разработка визуализатора модели программы в среде Eclipse в виде дерева. Включение визуализатора в перспективу среды Eclipse. Представление узлов дерева программы. Точка расширения для вида-дерева. Компоненты визуализатора программы. Определение структуры дерева. Построение дерева модели программы. Изображение элемента программы в дереве. Сортировка дерева программы.
-
Разработка перспективы среды Eclipse для языка программирования. Открытие перспективы. Представление перспективы в среде Eclipse. Точка расширения для перспективы в файле-манифесте. Программирование перспективы.
-
Разработка распознавателей объектно-ориентированных языков программирования с помощью генератора компиляторов CocoR. Спецификация сканера для генератора компиляторов CocoR. Спецификация множества символов сканера. Спецификация и пример использования пробелов и чувствительности к регистру. Спецификация лексем сканера. Спецификация комментариев.
-
Разработка распознавателей объектно-ориентированных языков программирования с помощью генератора компиляторов CocoR. Спецификация распознавателя для генератора компиляторов CocoR. Спецификация правил грамматики языка. Выражения, термы, сомножители, символы. Формальные и фактические атрибуты правил грамматики. Семантические действия. Использование символа ANY при написании препроцессоров. Использование символа WEAK для минимизации наведенных ошибок. Использование символа SYNC для восстановления распознавателя после диагностики ошибок.
-
Разработка распознавателей объектно-ориентированных языков программирования с помощью генератора компиляторов CocoR. Способы разрешения конфликтов в грамматиках средствами генератора компиляторов CocoR. Факторизация грамматики. Удаление левосторонней рекурсии. Конфликты не разрешимые преобразованиями. Конструкция IF для разрешения конфликтов в грамматике. Просмотр на несколько лексем вперед.
-
Основные понятия Graphical Editing Framework - базового инструмента построения графического интерфейса для систем моделирования. Фигуры, управляющие элементы, планировщики, панели, границы. Обработка событий. Планировщики, уровни. Ребра, декорации и локаторы. Маршрутизаторы ребер.
-
Построение диаграммы классов языка UML средствами Graphical Editing Framework. Структура узла. Создание фигуры – содержимого узла. Создание ребер графа. Создание декорации ребра графа. Создание меток для ребер графа. Сборка UML-диаграммы.