
- •Вопрос 1: Программные продукты и их основные характеристики
- •Вопрос 2: Классификация программных продуктов;
- •Вопрос 3: Жизненный цикл программного обеспечения;
- •Вопрос 4: Стадии разработки программ и программной документации;
- •Вопрос 5: Методы проектирования программных продуктов (нисходящее, восходящее проектирование, метод расширения ядра, достоинства и недостатки);
- •Вопрос 6: Структурное проектирование;
- •Вопрос 7: Проектирование интерфейса пользователя;
- •Вопрос 8: умл
- •Вопрос 9: Стиль программирования
- •Вопрос 10: Языки программирования
- •Вопрос 11: Модульное программирование
- •Вопрос 12: Объектно-ориентированное программирование
- •Вопрос 13: Ошибки программного обеспечения
- •Вопрос 14: Отладка программ
- •Вопрос 15: Тестирование структурной программы
- •Вопрос 16: Объектно-ориентированное тестирование
- •Вопрос 17: Защита от программ
- •Вопрос 18: Применение кейс – средств
- •Вопрос 19: Организация работ при коллективной разработке
Вопрос 12: Объектно-ориентированное программирование
Объектно-ориентированное программирование — парадигма программирования, в которой основными концепциями являются понятия объектов и классов.
Класс — это тип, описывающий устройство объектов.
Объект — сущность в адресном пространстве вычислительной системы, появляющаяся при создании экземпляра класса.
Инкапсуляция — объединение данных и программ и передача данных через входные и выходные параметры функций. В результате появляется новый элемент программирования — объект.
Наследование — возможность создания родительских объектов и новых дочерних объектов, наследующих свойства родительских объектов.
Полиморфизм — присвоение некоторому действию одного имени, которое в дальнейшем используется по всей цепочке создаваемых объектов сверху донизу, причем каждый объект выполняет это действие присущим ему способом.
Объект ООП – это совокупность свойств, методов и событий:
- Свойства – это переменные, которые влияют на состояние объекта (ширина, высота, длина);
- Методы – это те же процедуры и функции, то есть это то, что объект умеет делать (вычислять);
- События – это те же процедуры и функции, которые вызываются при наступлении определенного события.
Вопрос 13: Ошибки программного обеспечения
Общими ошибками вычислений являются:
- неправильный или непонятный приоритет арифметических операций;
- смешанная форма операций;
- некорректная инициализация;
- несогласованность представлений точности;
Классификация ошибок:
- технологические ошибки (выявляется автоматически формализованными методами);
- программные ошибки по количеству и типам в первую очередь определяются степенью автоматизации программирования и глубиной формализованного контроля текстов программ. Количество программных ошибок зависит от квалификации разработчика и от общего объема программного комплекса, от глубины логического и информационного взаимодействия модулей;
- алгоритмические ошибки (обусловлены некорректной постановкой функциональных задач);
- системные ошибки – сложных комплексов программ определяются прежде всего неполной информацией о реальных процессах происходящих в источниках и потребителях информации.
Вопрос 14: Отладка программ
Отладка – локализация и устранение ошибок. Отладка является средством успешного тестирования, если тестовый вариант обнаружит ошибку, то процесс отладки устранит ее.
2 исхода процесса отладки: причина найдена, исправлена, уничтожена; не найдена (отладчик предполагает причину).
2 группы методов отладки: - аналитические методы базируются на анализе входных данных для тестовых прогонов; - экспериментальные методы базируются на использовании вспомогательных средств отладки.
Общая стратегии отладки – обратное прохождение от замеченного симптома ошибки к исходящей аномалии, месту, где ошибка совершена.
Цель отладки – найти оператор программы при исполнении которого правильные аргументы приводят к неправильным результатам.
Аналитический метод: плюс состоит в том, что исходящая программа остается без изменений;
Экспериментальный метод: плюс в том, что основная рутинная работа по анализу вычислений перекладывается на компилятор; минус в том, что в программе вносятся изменения при исключении которых могут появиться ошибки.