Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
вопросы к экзамену по программированию.doc
Скачиваний:
4
Добавлен:
01.03.2025
Размер:
106.5 Кб
Скачать

Тема 1. Структурное программирование

Вопрос 1. Предпосылки структурного программирования. Проблемы неструктурированных программ. Структурный подход к программированию.

Слайд 1-02. На заре программирования...

Слайд 1-03. Что такое хорошая программа?

Слайд 1-04. Проблема "блюда спагетти"

Слайд 1-05. Разработка программ подчиняется законам Мэрфи

Слайд 1-06. Предпосылки структурного программирования

Слайд 1-07. Структурный подход к программированию

Вопрос 2. Нисходящая разработка. Модульность. Заглушки. Свойства модуля. Модульность в среде Borland C++ Builder.

Слайд 1-08. Нисходящая разработка

Слайд 1-09. Свойства модуля

Слайд 1-10. Модульность в среде Borland C++ Builder

Слайд 1-11. Пример нисходящей разработки приложения

Вопрос 3. Структурное программирование. Базовые конструкции. Вложенность конструкций. Принцип модульности. Псевдокод.

Слайд 1-12. Структурное программирование

Слайд 1-13. Комбинирование трёх конструкций

Слайд 1-14. Псевдокод

Слайд 1-15. Использование псевдокода

Вопрос 4. Пошаговая детализация. Использование псевдокода. Реализация программы на С++.

Слайд 1-16. Пошаговая детализация

Слайд 1-17. От пошаговой детализации к псевдокоду

Слайд 1-18. От псевдокода к программе на С++

Слайд 1-19. Оптимизация кода С++

Слайд 1-20. Некоторые приемы структурного программирования на С++

Слайд 1-21. Некоторые приемы структурного программирования на С++

Слайд 1-22. Некоторые приемы структурного программирования на С++

Слайд 1-23. Некоторые приемы структурного программирования на С++

Вопрос 5. Принципы сквозного структурного контроля. Верификация программного обеспечения. Тестирование. Проверка кода (peer review).

Слайд 1-24. Сквозной структурный контроль

Слайд 1-25. Верификация программного обеспечения

Тема 2. Разработка ПО. Модели процессов

Вопрос 6. Этапы разработки программного обеспечение. Постановка задачи. Описание процессов и объектов предметной области. Моделирование процессов.

Слайд 02-02. Этапы разработки программного обеспечения

Слайд 02-03. Постановка задачи

Слайд 02-04. Описание процессов и объектов предметной области

Слайд 02-05. Моделирование процессов предметной области

Вопрос 7. Понятие процесса. Контекстная модель процесса. Входы. Выход. Взаимодействие процессов. Декомпозиция процесса. Композиция процесса.

Слайд 02-06. Понятие процесса

Слайд 02-07. Контекстная модель процесса

Слайд 02-08. Взаимодействие процессов

Слайд 02-09. Декомпозиция процесса (анализ)

Слайд 02-10. Композиция процесса (синтез)

Слайд 02-11. Пример описания процесса

Слайд 02-12. Контекстная модель процесса

Слайд 02-13. Взаимодействие процессов

Слайд 02-14. Декомпозиция процесса

Слайд 02-15. Декомпозиция процесса (продолжение)

Слайд 02-16. Понятие информационного объекта

Слайд 02-17. Связь процессов с элементами программного обеспечения

Тема 3. Модели информационных объектов

Вопрос 8. Модель информационных объектов (ER-модель). Сущности и их атрибуты. Простые и сложные атрибуты. Экземпляры сущностей. Преобразование атрибута в сущность.

Слайд 03-02. Модель информационных объектов (ER-модель)

Слайд 03-03. Сущности и их атрибуты

Слайд 03-04. Простые и сложные атрибуты

Слайд 03-05. Экземпляры сущностей

Слайд 03-06. Атрибуты как потенциальные сущности

Вопрос 9. Связи. Кардинальность связи. Многозначные связи. Преобразование связи в сущность. Однозначные связи. Связь с моделью процессов.

Слайд 03-07. Связи между сущностями. Кардинальность связи

Слайд 03-08. Смысл понятий "один" и "много"

Слайд 03-09. Многозначные связи. Преобразование связи в сущность

Слайд 03-10. Однозначные связи. Связь с моделью процессов

Вопрос 10. Уникальные и неуникальные атрибуты. ER-модель и модель данных. Независимые и зависимые атрибуты. Атрибуты постоянные и темпоральные.

Слайд 03-11. Уникальные и неуникальные атрибуты

Слайд 03-12. ER-модель и модель данных

Слайд 03-13. Независимые и зависимые атрибуты

Слайд 03-14. Атрибуты постоянные и темпоральные

Вопрос 11. Зависимые атрибуты. Дублирование значений. Виртуальные атрибуты. Агрегативные атрибуты. Способы агрегации.

Слайд 03-15. Зависимые атрибуты. Дублирование значений

Слайд 03-16. Зависимые атрибуты. Виртуальные атрибуты

Слайд 03-17. Зависимые атрибуты. Агрегативные атрибуты

Слайд 03-18. Агрегативные атрибуты. Способы агрегации

Слайд 03-19. Выделение информационных объектов

Тема 4. Проектирование пользовательского интерфейса

Вопрос 12. Роль пользовательского интерфейса. Эволюция пользовательских интерфейсов. Способы организации человеко-машинного диалога.

Слайд 04-02. Роль пользовательского интерфейса

Слайд 04-03. Эволюция пользовательских интерфейсов

Слайд 04-04. Способы организации человеко-машинного диалога

Слайд 04-05. Способы организации человеко-машинного диалога

Вопрос 13. Современные пользовательские интерфейсы. Уровни пользовательского интерфейса. Внешний уровень интерфейса – метафора. Внешний уровень интерфейса – стиль.

Слайд 04-06. Современные пользовательские интерфейсы

Слайд 04-07. Уровни пользовательского интерфейса

Слайд 04-08. Внешний уровень интерфейса – метафора

Слайд 04-09. Внешний уровень интерфейса – стиль

Вопрос 14. Концептуальный уровень пользовательского интерфейса. Элементы для представления данных. Декоративные элементы. Управляющие элементы. Композиционные элементы.

Слайд 04-10. Концептуальный уровень пользовательского интерфейса

Слайд 04-11. Элементы для представления данных

Слайд 04-12. Элементы для представления данных (продолжение)

Слайд 04-13. Декоративные элементы

Слайд 04-14. Управляющие элементы

Слайд 04-15. Композиционные элементы

Вопрос 15. Геометрия элементов пользовательского интерфейса. Реакция элементов интерфейса на изменение размера. Выравнивание элементов. Использование выравнивания при компоновке экранов.

Слайд 04-16. Геометрия элементов пользовательского интерфейса

Слайд 04-17. Реакция элементов интерфейса на изменение размера

Слайд 04-18. Пример изменения размеров элементов

Слайд 04-19. Выравнивание элементов

Слайд 04-20. Использование выравнивания при компоновке экранов

Вопрос 16. Свойства элементов интерфейса. Видимость. Чувствительность. Реализация событийного принципа. Сценарии.

Слайд 04-21. Видимость элементов

Слайд 04-22. Чувствительность элементов

Слайд 04-23. Реализация событийного принципа. Сценарии

Тема 5. Объектно-ориентированное программирование

Вопрос 17. Принципы объектно-ориентированного программирования. Языки объектно-ориентированного программирования. Сравнение С и С++. Эквивалентные понятия С и C++.

Слайд 05-02. Объектно-ориентированное программирование

Слайд 05-03. Объектно-ориентированное программирование и C++

Слайд 05-04. Отличительные особенности С и C++

Слайд 05-05. Эквивалентные понятия С и C++

Вопрос 18. Инкапсуляция. Понятие класса в С++. Доступ к элементам класса. Определение методов класса.

Слайд 05-06. Инкапсуляция

Слайд 05-07. Понятие класса в С++

Слайд 05-08. Ограничение доступа к элементам класса

Слайд 05-09. Определение методов класса

Слайд 05-10. Доступ к элементам класса

Слайд 05-11. Пример ограничения доступа к элементам класса

Вопрос 19. Конструкторы и деструкторы, их свойства. Перегрузка конструктора. Конструктор копирования. Создание и разрушение объектов класса.

Слайд 05-12. Специальный метод класса - конструктор

Слайд 05-13. Свойства конструктора

Слайд 05-14. Перегрузка конструктора

Слайд 05-15. Конструктор копирования

Слайд 05-16. Создание объектов класса

Слайд 05-17. Специальный метод класса - деструктор

Слайд 05-18. Свойства деструктора

Слайд 05-19. Разрушение объектов класса

Слайд 05-20. Работа с памятью в конструкторах и деструкторах

Вопрос 20. Статические данные класса. Статические методы класса. Указатель на текущий объект класса.

Слайд 05-21. Статические элементы класса

Слайд 05-22. Использование статических элементов в методах класса

Слайд 05-23. Использование статических элементов класса

Слайд 05-24. Указатель на текущий объект класса

Слайд 05-25. Указатель на текущий объект класса

Тема 6. Объектно-ориентированное программирование (продолжение)

Вопрос 21. Абстракция. Классификация объектов. Иерархия абстрактного и конкретного. Понятие наследования. Простое и множественное наследования. Критерии «хорошей» иерархии классов.

Слайд 06-02. Понятие абстракции

Слайд 06-03. Классификация объектов по различным признакам

Слайд 06-04. Иерархия абстрактного и конкретного

Слайд 06-05. Понятие наследования

Слайд 06-06. Простое и множественное наследования

Слайд 06-07. Критерии «хорошей» иерархии классов

Вопрос 22. Наследование в С++. Ограничение доступа при наследовании. Наследование и конструкторы. Наследование и деструкторы.

Слайд 06-08. Наследование в С++

Слайд 06-09. Ограничение доступа при наследовании

Слайд 06-10. Наследование и конструкторы

Слайд 06-11. Пример наследования и использования конструкторов

Слайд 06-12. Пример наследования (продолжение)

Слайд 06-13. Пример наследования (продолжение)

Вопрос 23. Полиморфизм. Переопределение методов в С++. Раннее связывание. Позднее связывание.

Слайд 06-14. Полиморфизм

Слайд 06-15. Пример переопределения методов в С++

Слайд 06-16. Пример раннего связывания

Слайд 06-17. Пример раннего связывания

Слайд 06-18. Пример позднего связывания

Слайд 06-19. Пример позднего связывания