- •Курс лекций
- •Лекция 1. Технология программирования - основа разработки качественных программных средств
- •1.1. Программа как формализованное описание процесса обработки данных. Понятие «программное средство».
- •Определение требований к программному средству.
- •1.3. Спецификация качества программного средства.
- •Технология программирования как технология разработки качественных программных средств.
- •. Этапы развития технологии программирования.
- •Виды программных продуктов и специализация программистов
- •Лекция 2. Общие принципы разработки программных средств
- •2.1. Специфика разработки программных средств.
- •2.2. Основные этапы решения задач на эвм и их характеристика.
- •Основные этапы решения задач на эвм и их характеристика
- •Постановка задачи.
- •Формализация задачи.
- •Построения алгоритма
- •Составление программы на языке программирования.
- •Отладка и тестирование программы
- •Разработка документации.
- •Сопровождение опытной эксплуатации.
- •2.3. .Источники ошибок в программных средствах
- •2.3.1. Интеллектуальные возможности человека
- •2.3.2. Неправильный перевод как причина ошибок в программных средствах.
- •Модель перевода.
- •Основные пути борьбы с ошибками.
- •Лекция 3. Разработка структуры программы и модульное программирование.
- •3.1. Основные классы архитектур программных средств.
- •Структура программы. Методы разработки структуры программы. Блок - схема программы
- •Модульное программирование. Основные характеристики модуля.
- •Основные характеристики программного модуля.
- •Спецификация программного модуля содержит,
- •Порядок разработки программного модуля.
- •Контроль структуры программы.
- •Лекция 5. Представление основных структур программы в языках высокого уровня
- •Основные языки программирования и их характеристика.
- •Структура данных в языках программирования высокого уровня
- •Типы данных
- •6. Лекция 6. Стандартные типы данных в языках программирования Visual Basic.
- •Простые целые и вещественные типы переменных. И операции с ними
- •Логические типы данных и операции с ними.
- •7. Лекция 7. Представление строковых типов данных, типы данных Date и Variant.
- •Строковые типы данных и функции работы сними.
- •7.1.1. Операции со строковым типом данных.
- •Переменные типа Data и стандартные функции работы с ними.
- •Лекция 8. Структуры ветвления (операторы условного перехода) и повторения ( циклы) и особенности их использования в программах.
- •Операторы ветвления
- •8.2. Структуры повторения (Циклы).
- •Лекция 9. Структурированные типы данных. Массивы и пользовательские типы данных, их использование в программах
- •Типы данных, определяемые пользователем.
- •9.1. Массивы. Статические массивы.
- •9.2. Динамические массивы
- •9.3. Функции, предназначенные для работы с массивами.
- •9.4. Типы данных, определяемые пользователем.
- •Лекция 10. Основные строительные блоки программы, процедуры и функции.
- •Процедуры, назначение, написание, размещение.
- •10.2. Процедуры обработки событий.
- •Процедуры общего назначения.
- •Вызов процедуры.
- •Выход из процедуры до ее завершения.
- •Лекция 11. Функции . Области видимости переменных, функций и процедур
- •Функции. Стандартные функции
- •Функции, создаваемые пользователем
- •Модульная конструкция программы. Модули, формы. Стандартные модули, модули класса.
- •Области видимости переменных, процедур и функций
- •Лекция 12. Хранение информации в файлах.
- •12.1. Файлы с последовательным доступом.
- •12.1. Открытие файла с последовательным доступом.
- •12.3. Чтение данных из файла с последовательным доступом.
- •12.3. Запись информации в файл с последовательным доступом.
- •12.4. Работа с файлами произвольного доступа.
- •12.5. Ввод и вывод информации записями
- •Лекция 13. Операции с файлами.
- •13.1. Операции работы с файлами
- •13.2. Установка атрибутов файлов
- •Стандартные объекты для работы с файлами.
- •13.4. Вывод информации на печать
- •Лекция 14. Методы структурного программирования. Методы доказательства и отладки программ. Вопросы:
- •Методы структурного программирования
- •14.2. Пошаговая детализация и понятие о псевдокоде.
- •Пример пошагового составления программы
- •Доказательство свойств программы.
- •14.3.1. Обоснования программ. Формализация свойств программ.
- •Свойства простых операторов.
- •Свойства основных конструкций структурного программирования.
- •14.4.4. Завершимость выполнения программы.
- •Пример доказательства свойства программы.
- •Лекция 15 Отладка программы
- •15.1. Типы ошибок в программе
- •15.2. Программные средства для обнаружения ошибок.
- •Ошибки в структуре программы.
- •Перехват и устранение ошибок
- •15.5. Инструменты отладки
- •6. Отображение значений переменных и функций.
- •Лекция 16. Обьекто - ориентированное программирование.
- •16.1. Основные понятия объекто – ориентированного программирования.
- •16.2. Стандартные объекты управления, свойства, методы, события
- •16.3. . Пользовательские элементы управления
- •Лекция 17. Применение технологии ole в программировании и завершение проекта.
- •17.1.. Применение технологии ole в программировании на языках высокого уровня
- •Объект управления ole Container
- •Технология ole Automation.
- •17.4. Состав проекта
- •Создание дистрибутива программного средства
- •Документирование программных средств
- •Аттестация программного средства.
Лекция 15 Отладка программы
Вопросы:
1.Типы ошибок в программе
2. Программные средства для обнаружения ошибок
3.Ошибки в структуре программы их исправление
4. Перехват и устранение ошибок
5. Инструменты отладки
15.1. Типы ошибок в программе
Английский термин “Debugging” (отладка) связывают с инцидентом, произошедшим в Министерстве обороны США. Когда в одной из первых вычислительных машин Пентагона возникла ошибка при вычислениях, был проведен тест программы, однако ошибка не была выявлена. Причина была обнаружена при проверке самой вычислительной машины. Между контактами одного из реле был зажат жучек (насекомое) – по английски bug, что и послужило причиной ошибки. После удаления жучка (debugging) ошибка была устранена. Даже если этой истории не было на самом деле, ее стоило выдумать , так как оно довольно удачно разъясняет возникновение термина “debugging”.
При разработке программы могут возникать ошибки четырех типов:
Синтаксические. Ошибки, связанные с неправильным, объявлением и описанием переменных, синтаксисом операторов ( например, ошибки в именах переменных, несовпадение типов переменных и тому подобное).
Ошибки в структуре программы. Ошибки такого рода появляются в результате некорректного написания многострочных операторов (например, For без Next).
Ошибки, возникающие во время выполнения программы. Это ошибки, проявляющиеся во время работы программы (например, ошибка деления на ноль).
Логические ошибки. Ошибки такого типа самые каверзные. Программа выполняет вычисления, но выдает неправильный результат.
В первую очередь вы сами можете оказать себе огромную услугу и избежать многих подвохов, а также облегчить диагностику и исправление ошибок в вашей программе соблюдая следующие правила программировании, полученные на основе практического опыта.
Необходимо использовать стандарт при присвоении имен переменным:
При задании имен действуют следующие соглашения:
имя должно начинаться с буквы;
имя может содержать только буквы, числа и символ подчеркивания. Избегайте непонятных сокращений имен.
максимальная длина имен форм и элементов управления – 40 символов, имена переменных и типов могут иметь длину 255 символов;
в качестве имен нельзя использовать зарезервированные слова;
тип, объявляемой переменной должен отображаться в имени переменной. Как правило, используются префикс из трехзначной комбинации символов, определяющих тип переменной (например, bin Val – булевская перепенная, lngSize – вещественная переменная и т.д.
область действия переменной также должна отражаться в имени переменной. Для этого рекомендуется использовать следующие префиксы: g – глобальные, m – модуль, форма, класс ( пример, mlngRecord – переменная модуля типа Long с базовым именем Record );
имена форм и объектов должны быть уникальными и содержать префиксы характеризующие назначение объектов (например, lblHelp, txtFamily и т.д.
Рекомендуемые префиксы приводятся в руководстве по VB –6;
рекомендуется использовать явное объявление переменных . Для того, чтобы не забыть объявить переменную, используйте опцию Option Explicit, добавляя её в раздел <General> < Declarations> модуля, формы ,контейнера. Для того, чтобы не делать это самим и не забыть это сделать установите опцию Require Variable Declaration вкладки Editor диалогового окна Tools\Option.
при написании кода операторы следует располагать по определенным правилам. Правильно структурированный код не просто легче воспринимается, но и может помочь при обнаружении ошибок. VB позволяет легко выполнять форматирование кода, автоматически устанавливая после перевода строки текстовый курсор в том же столбце, в котором начиналась предыдущая строка. Настройка этой опчии осуществляется во вкладке Editor диалогового окна настройки Tools\ Option.
не работайте одновременно над несколькими свойствами или функциями. Перед тем как добавить следующую часть программы проведите отладку и протестируйте уже имеющиеся. Как правило число операторов, введенных в программу без отладки и тестирования не должно быть более двадцати.
тестируйте программу любым способом. для различных вариантов исходных данных, вводите заведомо неправильные данные, перезагружайтесь. т.п.
точно представляйте ожидаемый результат . Не давайте за неё слово программиста – программа мажет оказаться неверной.
