Основы информатики и вычислительной техники. III семестр. (вопросы)

  Объектно-ориентированное программирование 
1.    Объектно-ориентированное программирование. Абстракция, Полиморфизм, Инкапсуляция 
2.    Наследование и переопределение функций при наследовании. Таблицы виртуальных методов классов и множественных интерфейсов.
3.    Объектно-ориентированное проектирование. Модель незавасимых актеров. АТД. Интерфейсы  
4.    Java: классы, объекты, generics, методы, поля, конструкторы, this, super.
5.    Java: Inner classes, lambda, exceptions 
6.    Многопоточное программирование: Thread, synchronized 
  Паттерны проектирования 
7.    Singleton, AbstractFactory, Prototype, Builder 
8.    Iterator, Visitor, Chain of Responsobilty 
9.    Strategy, Observer, State 
10.   Proxy, Bridge, Flyweight 
11.   MVC модель. Трех уровневая модель приложения 
12    Программы управляемые событиями 
 Функциональный стиль программирования
13.   Лямбда исчисление. Альфа, бетта, гамма приоброзования. Свободные и связанные переменные 
14.   Чистые функции. Замыкание. Функции высших порядков.   
15.   Stream, Functional, lambda в Java
16.   Ленивые вычисления. Предсатавления бесконечных множеств
 Компиляторы 
17.   Компиляция и интерпретация. 
18.   Фазы работы компилятора и их взаимодействие. 
19.   Лексический анализ и конечные автоматы разбора.
20.   Регулярные выражения, построение автомата по регулярному выражению.
21.   Преобразование недетерминированного автомата в детерминированный. 
22.   Контекстно-свободные грамматики для описания синтаксиса языка. 
23.   Абстрактного синтаксическое дерево (Дерево разбора). 
24.   Анализ программы и построение синтаксического дерева с помощью рекурсивного спуска 
25.   LL(1) грамматика, предиктивный анализ.
26.   Функции FIRST и FOLLOW 
27.   Семантический анализ, контроль типов 
28.   Генерация кода, синтаксически управляемая трансляция, схемы трансляции. 
29.   Подходы к оптимизация кода
30.   Сборка модулей, динамическая, статическая.

Hosted by uCoz