- •Курс лекций
- •Лекция 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. Состав проекта
- •Создание дистрибутива программного средства
- •Документирование программных средств
- •Аттестация программного средства.
2.2. Основные этапы решения задач на эвм и их характеристика.
Работа по решению любой задачи с использованием компьютера делится на следующие этапы:
Постановка задачи.
Формализация задачи.
Построение алгоритма.
Составление программы на языке программирования.
Отладка и тестирование программы.
Разработка документации
Сопровождение опытной эксплуатации.
Часто эту последовательность называют Технологической цепочкой решения задачи на ЭВМ или жизненным циклом программного средства. Непосредственно к программированию в этом списке относятся пункты 3,4,5.
Основные этапы решения задач на эвм и их характеристика
Постановка задачи.
На этапе постановки задачи проводится внешнее описание программного средства с точки зрения внешнего по отношению к нему наблюдателя с фиксацией требований относительно его качества. Внешнее описание ПС начинается с определения требований к ПС со стороны пользователей (заказчика). Как обеспечить, чтобы ПС выполняла то, что пользователю разумно ожидать от нее? Для этого необходимо правильно понять, во-первых, чего хочет пользователь, и, во-вторых, его уровень подготовки и окружающую его обстановку. Поэтому следует - привлекать пользователя в процессы принятия решений при разработке ПС, - тщательно освоить особенности его работы (лучше всего - побывать в его "шкуре").
На этом этапе должны быть определены назначение программного средства, исходные данные и результаты решения задачи, формы их представления, условия эксплуатации программного средства и требования к показателям качества программного средства. На данном этапе определяются возможный метод решения поставленной задачи. Работа этапе постановки задачи ведется в форме диалога заказчика и разработчика, так как заказчик не представляет себе в полной мере возможностей вычислительной техники, а разработчик - физического содержания и особенностей задачи. Этап постановки задачи завершается разработкой технического задания на разработку программного средства.
Формализация задачи.
Второй этап формализации задачи состоит в выборе математических методов решения задачи. Производится если возможно декомпозиция общей задачи на частные задачи для их относительно самостоятельной разработки. Задача переводится на язык математических формул, уравнений, отношений. Если решение требует математического описания какого–то реального объекта, явления или процесса, то формализация равносильна разработке соответствующей модели. формализованная постановка задачи так же согласовываются с заказчиком.
Построения алгоритма
Третий этап – построения алгоритма. Алгоритм – это последовательность операций и команд управления процессом обработки данных в ЭВМ. Построение алгоритма состоит в разработке на основе возможностей синтаксиса и семантики выбранного языка программирования и базовых алгоритмических структур и функций языка последовательности операций и команд управления для решения задачи, выделяются отдельные блоки, необходимые стандартные функции и функции и процедуры подлежащие дальнейшей разработке. Определяется структура программы.
Алгоритм может быть представлен в словесной либо графической форме .
Для представления алгоритма в словесной форме может использоваться неформальный язык с использованием отдельных элементов языка программиро -вания. Словесная форма представления алгоритма имеет ряд недостатков. Для достаточно сложных алгоритмов описание становится слишком громоздкими ненаглядным. Эта форма представления используется лишь на начальных стадиях разработки алгоритма.
Графическая форма представления алгоритмов является более компактной и наглядной, Алгоритм изображается в виде последовательности связанных между собой блоков , каждый из которых соответствует выполнению одного или нескольких операторов. Такое графическое представление называется блок – схемой. Условные графические обозначения символов , используемых для составления блок схемы алгоритма , стандартизированы ГОСТ. Некоторые, часто используемые, обозначения приведены в таблице 2.1
Отдельные блоки алгоритмов соединяются между собой линиями потоков информации, которые проводятся параллельно внешней рамки чертежа. Направления линий потока сверху вниз и слева направо принимаются за основные и, если линии потоков не имеют изломов , стрелками не обозначаются. Этап вычисления изображается прямоугольником, внутри которого записывается выполняемые операции. Проверка условий изображается ромбом. Ввод исходных данных и вывод результатов изображается в параллелограмме, внутри которого пишутся слова «ввод» и «вывод» и перечисляются переменные. подлежащие вводу или выводу. Представление алгоритма в виде блок – схемы является важным и в большинстве случаев необходимым этапом решения задачи на ЭВМ, значительно облегчает процесс составления программы и возможную ее доработку. На рис 2.1 представлена блок схема алгоритма решения квадратного уравнения.
