- •Курс лекций
- •Лекция 1. Технология программирования - основа разработки качественных программных средств
- •1.1. Программа как формализованное описание процесса обработки данных. Понятие «программное средство».
- •Определение требований к программному средству.
- •1.3. Спецификация качества программного средства.
- •Технология программирования как технология разработки качественных программных средств.
- •. Этапы развития технологии программирования.
- •2.1. Специфика разработки программных средств.
- •Виды программных продуктов и специализация программистов
- •Лекция 2. Общие принципы разработки программных средств
- •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. Состав проекта
- •Создание дистрибутива программного средства
- •Документирование программных средств
- •Аттестация программного средства.
Функции, создаваемые пользователем
Разработчик программы может создавать и собственные функции, для наиболее часто используемых в программе операций.
Все что надо сделать для создания функции это создать некоторую процедуру с операторами Function и End Function вместо Sub и End Sub. Для создания функции можно использовать диалоговое окно Add Procedure меню Tools и выбрать Function.
Полная синтаксическая форма записи функции включает оператор Function, оператор Sub End и операторы составляющие тело функции. Кроме того тело функции включает оператор, выполняющий присваивание значения функции.
[Public | Private ] [ Static ] Function funcname ([ argument])
<операторы>
funcname = expression
End Function
Ключевые слова Public, Private, Static в операторе Function являются необязательными параметрами, определяющими , откуда может быть выполнено обращение к функции. Имя функции представляет funcname. Как и все другие имена, оно должно быть уникальным. Имя функции должно начинаться с буквы и записываться по тем же правилам, что и имена переменных. Необязательные аргументы arguments представляют величины передаваемые функции для обработки. Этими аргументами являются имена переменных, используемых при записи кода функции. Большинство функций имеют в списке аргументов по крайней мере одну переменную.
Оператор funcname = expression является обязательной частью функции, funcname представляет имя функции, определенное с помощью оператора Function.
Знак равенства является обязательной частью этого оператора; expression представляет величину, которая будет возвращена функцией. Это может быть латеральное значение, переменная, выражение, содержащая операции, или даже другая функция. Тип этого выражения должен совпадать с типом самой функции. Оператор End Function является обязательной частью описания функции, определяя последнюю строку функции. После достижения этого оператора управление передается в вызывающую программу.
Пример:
Pablic Function VarAverage (varavg1, varavg2)
VarAverage = (varavg1 + varavg2)/2
End Function
Вызов функции
Newavg = VarAverage(25,30)
Вызов функции из условного оператора
If VarAverage (varavg1, varavg2) > 25 Then
NunSun = Num1 + num2
End If
Функции как и процедуры, могут работать с массивами. Рассмотрим функцию поиска строки среди элементов входного массива. В качестве аргументов функции передается сам массив , размер массива и искомая строка. Функция возвращает индекс первого элемента , содержащего искомую строку. Если искомой строки нет ни в одном элементе массива, функция возвращает - 1.
Пример
Pablic Function ArraySrch (InputArray ( ),ardim, srchstr)
For i = 1 To ardim
fndstr = InStr ( InputArray ( i ), srchstr, 1 ) ' Функция InStr позволяет найти строку
If fndstr > 0 Then
ArrayStr = i
Exit Function
End If
Next i
ArraySrch = -1
End Function
Модульная конструкция программы. Модули, формы. Стандартные модули, модули класса.
На большом автомобильном заводе на главную сборочную линию поступают завершенные блоки, собранные в другом цехе, на другом заводе или заводах. Каждый узел, изготовленный в соответствии с общим техническим проектом, проверяется отдельно. И только после этого поступает на сборочную линию. Это повышает эффективность производства.
Правильно написанная программа создается по модульному принципу, аналогичному процессу сборки автомобиля. Большинство программ создается из блоков , известных как модули, процедуры и функции.
Модули.
Когда мы открываем в окне проекта форму или окно редактирования кода мы открываем модуль формы Которая содержит не только код записанных процедур, но и код описания самой формы и коды создающие элементы управления. Когда мы сохраняем форму, как файл с расширением .frm, мы сохраняем полный модуль форм, которую как мы знаем можно использовать как самостоятельно, так и присоединять к другим проектам.
Таким образом, можно заключить, что модуль представляет собой относительно самостоятельную программную единицу (самостоятельное программное средство).
Существуют три вида модулей.
Модуль формы – содержит коды процедур событий, коды описания формы и элементов управления, используемых в форме.
Стандартный модуль – содержит процедуры, которые не имеют отношение к формам.
Стандартный модуль может иметь любое имя. В файле проекта приведены имена и расположение всех модульных файлов, используемых в вашей программе. Модульные файлы имеют расширение >bas.
Модуль классов – содержит коды, которые определяют новые классы объектов.
