- •Курс лекций
- •Лекция 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. Состав проекта
- •Создание дистрибутива программного средства
- •Документирование программных средств
- •Аттестация программного средства.
12.4. Работа с файлами произвольного доступа.
Использование последовательных файлов не вызывает сложностей, если вы читаете весь файл или большие блоки смежных данных. Однако, в случае необходимости извлечения отдельных элементов данных, расположенных в различных местах файла, использование таких файлов становится не эффективным. В этом случае гораздо более полезным оказываются использование файлов с произвольным доступом.
В VB работа с файлами с произвольным доступом несколько отличается от работы с последовательными файлами. При работе с последовательными файлами достаточно определить переменную, в которой будут сохранены элементы данных. нет необходимости интересоваться , сколько символов содержит элемент. С другой стороны, в файле с произвольным доступом данные хранятся в виде набора записей постоянной длины, Таким образом, переменная, которую вы используете при считывании данных, должна иметь ту же длину , что и читаемая запись.
Первый шаг при организации чтения информации из файла с произвольным доступом состоит в описании переменной, в которую будут считаны данные. Для этого следует использовать не оператор Dim, а оператор Type , после которого вы должны определить тип переменной, которая описывается этим оператором.
Для создания типа переменной, следует написать блок, начинающейся с оператора Type и заканчивающийся оператором End Type, как это делается при объявлении переменных пользовательского типа. Этот блок записывается в секции <General> < Declarations>.
Type typename
elemenname1 As vartype
elemenname2 As vartype
End Type
typename – имя, которое вы желаете дать определяемому вами типу данных;
elemenname1 - имя элемента записи;
elemenname2
vartype – имя типа элемента записи.
Типы элементов записи – это стандартные типы данных. Следует учесть, что описания с помощью оператора Type не могут содержать строк переменной длины. Таким образом, любая строка в операторе Type должна записываться с помощью синтаксической формы, включающей указание длины строки. После определения типа переменной с помощью оператора (Type –End Type)можно объявлять переменные такого типа в программе с помощью оператора Dim.
Пример:
Type Costomer
Last Name As String * 30
FirstName As String * 25
Amount As Single
End Type
Dim NewVar As Costumer
Открытие файла с произвольным доступом.
Синтаксис оператора для открытия файла с произвольным доступом
имеют следующий вид:
Open filename For Random[Acsess - Доступ][ Lock - Блокировка] As #filenum Len = reglen
В этой синтаксической форме filename и filenum имеют тот же смысл что и в форме, используемой для последовательных файлов. Режим доступа к файлу должен быть определен как Random.
Acsess – позволяет задать права доступа к файлу.
Виды доступа и параметры приведены в таблице 1.
Таблица 12.1..
Доступ |
Параметр, подставляемый вместо Acsess |
Пример |
Без указания |
пусто |
Open “Date Dat” For Random As intFH |
Чтение |
Read |
Open “Date Dat” For Random Read As intFH |
Запись |
Write |
Open “Date Dat” For Random Write As intFH |
Чтение и запись |
(Read Write) |
Open “Date Dat” For Random Read Write As intFH |
Если права доступа не указаны, то по умолчанию используется Read Write.
Так как этот тип доступа обычно предназначен для работы с файлами, которые могут использоваться многими пользователями или приложениями, то следует обеспечить целостность данных при коллективном использовании. Для этого следует установить параметр Lock. Этот параметр т может принимать следующие значения:
Shared - файл может использоваться всеми процессами для считывания и записи;
Lock Read – никакой другой процесс не может считывать данные из файла;
Lock Write – никакой другой процесс не может осуществлять запись в файл.
Lock Read Write – никакой другой процесс не может считывать и записывать информацию в файл.
Данные параметры могут устанавливаться , если в данный момент не выполняются операции с эим файлом.
Выражение Len является новым по сравнению с ранее использовавшейся формой. Оно определяет длину одной записи в файле.Длина определяется значением аргумента reglen. Этот аргумент представляется в виде числового выражения целого типа, значение которого больше или равно нулю. Кроме того, значение reglen должно совпадать с длиной переменной пользовательского типа, используемой для чтения информации из файла.
Для определения размера переменной пользовательского типа можно использовать функцию Len. Затем используйте это значение в качесиве параметра reclen для файла с произвольным доступом.
