Комплексная отладка. Система собирается полностью. Все модули начинаю тестироваться на правильность работы друг с другом. Зачастую программные продукты умирают раньше, чем выявлена последняя ошибка.
(Ответ по рисунку)
6. Каскадная модель разработки пакетов программ. Опытно- промышленная эксплуатация и снятие с эксплуатации.
(Ответ по рисунку)
7. Тестирование и отладка пакетов программ.
Способы тестирования:
1) Формирование системы тестов
2) Команда тестировщиков. Задача: найти максимально возможное число ошибок
3) Beta – тестирование. Практически готовый программный продукт отдаётся потенциальным пользователям (почти бесплатно), которые обязаны посылать результаты тестирования разработчикам. За это они имеют возможность ознакомиться с программой.
Отладку выполняет сам программист для того, чтобы убедиться, что его программа работает правильно.
Способы:
1) Использование точек останова:
Writeln (‘ э’,A,B,C);
Readln;
2) Отладчик:
a. Программа по шагам (в просмотрщике можно задать список переменных значений, которые вы желаете контролировать)
b. Устанавливать точки останова, на которых останавливается процесс вычисления
3) Методы отладки, которые пришли и практики:
a. Настройка программы для «дурака». Нужно найти еще одного человека и ему рассказать, как работает эта программа (ошибку вы найдете сами);
b. Использовать вместо «дурака» самого себя.
Удачным вариантом при отладке является запись протокола выпуска программы для дальнейшего анализа.
8. Оптимизация пакетов программ по быстродействию и по использованию памяти.
Критерии:
1) Оптимизация по объему используемой памяти
2) По быстродействию
Оптимизация:
1) Выбор алгоритмов влияет и на быстродействие, и на объем.
Кнут (r Том сортировка и поиск)
Vопер < «Шелла» < Quick сорт. (строится дерево).
2) Выбор языка реализации
VB, VC, BC, Delphi, Assembler.
Чем выше уровень и чем больше возможностей, тем больше привлекается обязательных стандартных средств работы. Пример, включение функций работы с окнами.
Рекомендации: задача определяет язык, на котором она будет решена. Для экономических программ подходит VB и Delphi. Управляющие программы АСУ: VC, BC. Технический процесс с управлением аппаратной частью: ассемблер.
Современные оболочки агрегируют многие языки (studio.net), где в рамках 1 проекта можно использовать разные языковые среды.
3) Использование операторов (конкретные приёмы программирования)
For i:=1 to 20 do
Инициализация цикла
For j:=1 to 1000 do
Некоторые операторы имеют побочные эффекты (С++)
4) Использование глобальных и локальных переменных. Глобальные находятся в общих областях и доступны всем
Глобальные |
Локальные |
Vозу |
↓ Vозу |
быстродействие |
быстродействие |
Сама переменная + дальний вызов
If (func(m,k)).
5) Использование типов переменных:
Real, double – 8 байт
Integer – 2, 4 байт
Char – 1 байт
Рекомендация: Если есть возможность без ущерба для решения задачи, то необходимо спускаться до самого нижнего предела хранения данных
6) Использование overlay-ных структур динамических массивов.
SWP – файл, к который перекачивается информация ОЗУ, в случае ее нехватки
BSOD – гол. Экран.
Динамические массивы – временно создаваемые области данных для решения каких-либо задач. В динамический массив можно грузить данные, но после окончания работы их необходимо где-то сохранить (например, в файле)
Этот прием экономит ОЗУ, но увеличивает код программы для выделения и освобождения памяти.
Mcb –memory control block, таблица занятой оперативной памяти.
Overlay структуры – механизм такой же, но смысл другой. Практически не используется. Он преобразовался в динамические библиотеки (.dll), т.е. бибилиотеки, которые используются только во время выполнения программы.
7) Использование API – функций
API – applyet program interface – интерфейс, как надо взаимодействовать с программой
Множество API – функций, которое потенциально может потребоваться при решении задач
MFC – Microsoft foundation class, которое реализует концепцию ООП, не требует дополнительных описаний для стандартных классов.
Замечание: ООП уменьшает тексты программ, но в результате компиляции и сборки программ код будет больше.
9. Стиль программирования. Комментарии, имена переменных, отладочные операторы, понятные алгоритмы.
Программы пишутся для людей, а не для машин.
1) Наличие комментариев в программе. Записки самому себе или тому, кто будет читать программу. Вся программа должна входить на лист А4. Программа должна быть обозрима.
DECus
1.1. Общие (пишутся в головном модуле):
- Название
- Назначение
- Автор
- Описание или ссылка на реализацию алгоритма
- Дата создания
- Номер реализованной версии
1.2. В теле программы, в процедурах и функциях:
- Описание переменных;
- Описание входных и выходных параметров;
- Описание алгоритмов.
Комментарии в теле программы должны нести смысл (что делает данный оператор? Оператор показывает, как это делается?)
c:=0 } задание начальных знаний.
2) Имена переменных нужно давать осмысленно, т.е. имя переменной должно отражать суть хранимых данных. Такое именование сокращает комментарии в программе. При этом объектный код не увеличивается.
3) Вставка отладочных операторов. Например, writeln (‘___’,A,profit);
4) Пиши проще – не нужно придумывать заумные алгоритмы. Чем проще алгоритм, тем выше вероятность правильной реализации программы.
10. Стиль программирования. Явные описания переменных, использование оверлеев, динамических массивов и API-функций.
5) Явное описание переменных. Языки Pascal, C – требуют явное описание. VB не требует, а не описанным переменным присваивается тип Variant. Для включения явного описания перед программой нужно записать option explicit
Использование overlay-ных структур, динамических массивов и API-функций (Вопрос 9).
11. Стиль программирования. Объектно-ориентированное программирование и неправильные (порочные) приемы программирования.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.