Languages

Вопросы экзамена по курсу Романова В.Ю.



Вопросы экзамена по курсу Романо

Вопросы экзамена по курсу Романова В.Ю.

«Разработка объектно-ориентированных систем программирования интегрированных в среду Eclipse».

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