|
|||
Вопросы к экзамену по дисциплине «Технология программирования», гр. А-4, 7, 8, 9, 12 - 11
1. Понятие технологии программирования (ТП). Основные этапы развития ТП. Стихийное программирование. Структурный подход. Объектный подход. Компонентный подход и CASE-технологии. 2. Качество программного обеспечения. Показатели качества программ. 3. Жизненный цикл (ЖЦ) и этапы разработки программного продукта. Эволюция моделей ЖЦ. 4. Модули, их свойства. Сцепление модулей. Связность модулей. 5. Нисходящая и восходящая разработка ПО. Структурное и «неструктурное» программирование. Средства описания структурных алгоритмов. 6. Техническое задание. Основные этапы разработки ТЗ. 7. Структурный подход к разработке ПО. Определение спецификаций. Основные модели проектирования ПО при структурном подходе. 8. Проектирование ПО при структурном подходе. Разработка структурной и функциональной схем. 9. Объектно-ориентированный подход к программированию. Основные принципы ООП. Понятие инкапсуляции, полиморфизма, наследования, модульности и абстракции объектов. 10. Понятие класса и объекта. Основные характеристики класса и объектов. 11. С++. Функции, пример использования. Локальные и глобальные переменные. Локальные статические переменные. Время жизни и область действия переменных. Аргументы функций. 12. Функции. Аргументы со значениями и по умолчанию. Функции с переменным числом аргументов. Правила передачи аргументов при обращении к функциям. 13. Структура оперативной памяти. Указатели, виды указателей. Инициализация указателей. 14. Указатели. Объявление, основные действия с указателями. 15. Присваивание указателей. Операция разадресации. Операция получения адреса &. Ссылки. 16. Указатели и массивы. 17. Классы памяти. Область видимости. Область действия. Пространство имен. 18. Классы и структуры в С++. Описание. Сравнение классов и структур. Данные-члены (свойства) и функции-члены (методы). 19. Описание объектов в С++. Указатель this. 20. Доступ к членам класса: открытые, закрытые и защищенные члены класса. Дружественные классы и функции. 21. Основные члены класса: конструктор, деструктор, конструктор копий, операция присваивания. 22. Конструкторы. Виды конструкторов. Основные свойства. Особенности, порядок вызова конструкторов. Конструктор по умолчанию. Параметры конструкторов. Конструктор преобразования. 23. Деструктор. Свойства деструктора. Вызов деструктора. Виртуальный деструктор. 24. Указатель this. Оператор присваивания. Проверка на присваивание самому себе. 25. Наследование. Базовый и производный классы. Правила наследования. Режимы доступа к членам базового класса. 26. Конструкторы и деструкторы производных классов. Правила наследования конструкторов и деструкторов. 27. Полиморфизм. Виртуальные методы. 28. Перегрузка функций. Правила описания перегруженных функций. 29. Перегрузка операторов. Перегрузка унарного и бинарного операторов. Перегружаемые оператор присваивания и индексированные операторы. Пример. 30. Перегруженные операции - функции-члены и дружественные функции. Перегруженные операции new delete, ->. Пример. 31. Проверка математического выражения на правильность расстановки скобок с использованием стека. Пример. 32. Вычисление выражения в постфиксной форме с помощью стека. Пример. 33. Преобразование выражения из инфиксной формы в постфиксную с использованием стека. Пример.
к. т. н. доц. каф. ВМСиС /М. В. Раскатова/
|
|||
|