- •Первый семестр
- •Дальнейшее обучение программированию (по семестрам)
- •Рекомендуемая литература
- •I семестр Лекция 1
- •1.1 Алгоритм. Понятие алгоритма
- •1.2 Алгоритмические языки
- •1.3 Запись алгоритма
- •1.4 Элементарные структуры
- •Лекция 2
- •2.1. Договоренности о синтаксисе
- •2.2. Текст программы на Turbo Pascal
- •2.3 Элементарные операции
- •2.4. Таблица перевода для структур
- •Алгоритм:
- •Текст программы
- •2.5 Практические рекомендации по решению задач
- •3.2. Частные случаи для структуры цикла
- •3.3 Массивы
- •Лекция 4
- •4.0 Требования к защите бальных задач
- •4.1 Начало систематического изложения Turbo Pascal (tp)
- •Лекция 5
- •5.1 Простые типы данных
- •5.1.1 Перечислимый тип
- •5.1.2 Интервальный тип
- •5.1.3 Целочисленные типы
- •5.1.4 Данные типа char
- •5.1.6 Вещественные типы данных
- •Лекция 6
- •6.1 Структура программы на Паскале
- •6.2 Процедуры для стандартного ввода/вывода
- •6.3 Массивы. Регулярный тип
- •6.4 Для работы с массивами – шаблоны
- •Лекция 7
- •7.1 Строки
- •7.2 Записи
- •Лекция 8
- •8.1 Множества
- •8.2 Файлы
- •8.3 Процедуры открытия и закрытия файлов:
- •8.4 Процедуры ввода/вывода:
- •Лекция 9
- •9.1 Текстовые файлы.
- •9.2 Проект программы:
- •9.3 Простейший сканер.
- •9.4 Копия любого файла
- •Лекция 10
- •10.1 Процедуры и функции
- •10.2 Передача параметров в процедуры и функции
- •10.3 Глобальные переменные. Перекрытие (экранирование)
- •10.4 Процедурные типы
- •10.6 Рекурсия. Косвенная рекурсия
- •Лекция 11
- •11.1 Статическая и динамическая память программы
- •11.2 Динамическая память (куча, heap) с точки зрения тр
- •11.3 Операции над указателями
- •11.4 Пояснения с помощью картинки
- •11.5 Динамическая цепочка
- •Лекция 12
- •12.1 Цикл жизни программы. Проект программы
- •12.2 Характеристики качества программ
- •12.3 Программное окружение
- •12.4 Модули
- •Пример Печать данного перечислимого типа. Вот простой пример модуля (пусть имя файла с представленным ниже текстом My_Unit.Pas):
- •12.5 Обзор модуля System
- •12.5.1 Процедуры и функции, обслуживающие файловую систему
- •Лекция 13
- •13.1 Модуль crt - средства работы с экраном, клавиатурой и др.
- •13.2 Обзор примеров программ
- •13.3 Процедуры и функции модуля Crt
- •Лекция 14
- •14.1 Модуль dos - работа с файловой системой.
- •14.1.1 Прерывания.
- •14.1.2 Процедуры и функции модуля Dos
- •Лекция 15
- •15.1 Модуль Graph.
- •15.1.1 Общие сведения:
Лекция 12
12.1 Цикл жизни программы. Проект программы
Программа, как и живой организм, рождается, развивается и умирает. Продолжительность жизни программы и ее судьба определяется назначением программы и ее качеством. Жизненный цикл программы можно описать так:
Проектирование Кодирование ОтладкаТестирование Сопровождение
Проектирование программы – это основной этап зарождения программы. Именно на этом этапе закладывается качество будущей программы.
Проектирование = типы данных + структуры данных + процедуры и функции + алгоритмы
На этапе проектирования программы определяется язык (или языки) программирования для реализации проекта.
Кодирование – воплощение проекта в коды на выбранном алгоритмическом языке. Творческая составляющая этапа кодирования ограничена рамками проекта. От кодировщика во многом зависит читабельность текста программы.
Хорошо спроектированная и закодированная программа не требует отладки. Однако, разработчики проекта и кодировщики могут ошибаться. Поэтому еще на этапе проектирования программы предусматриваются средства тестирования. Тестирование – контроль правильности работы программы. В случае обнаружения ошибок и недочетов исправления делаются и в проекте программы и в ее коде.
При использовании отлаженной программы могут выявляться не замеченные ранее ошибки, может появиться необходимость модификации программы. Поэтому на этапе ведения программы разработчикам приходится заниматься усовершенствованиями или исправлениями проекта, кодированием и отладкой.
12.2 Характеристики качества программ
Существует очень много различных характеристик качества программы. Значимость их в критериях качества программы в целом зависит от назначения и условий функционирования программы. Невозможно разработать единый критерий качества для всех программ. Вот некоторые из характеристик качества программы:
Целесообразность. Программа выполняет функцию, для которой она предназначена.
Эффективность. Программа соответствует требованиям и ограничениям к условиям выполнения, оговоренным в техническом задании на разработку программы.
Модифицируемость (или открытость). Доступность исходного кода программы. Иногда под модифицируемостью понимают предусмотренные в проекте программы возможные изменения.
Читабельность + внутренняя документированность. Очень важные свойства на этапе ведения программы. Помогают разобраться в программе программисту, не участвовавшему в создании программы.
Мобильность (переносимость). Без каких либо изменений, или с небольшими изменениями программа может быть оттранслирована другими версиями языка той же операционной системы (локальная мобильность) или других операционных систем и компьютерных платформ (глобальная мобильность).
Надежность. Эффективное функционирование в условиях воздействия различных отрицательных факторов.
Защищенность. Программа должна быть защищена от неосторожных или несанкционированных действий пользователя, от нежелательного воздействия внешних факторов, от дурного глаза.
12.3 Программное окружение
Эффективность работы программиста определяется его квалификацией и опытом работы. В профессиональной деятельности программиста его опыт материализуется в программном окружении. Программное окружение программиста – библиотека программных продуктов (процедур, функций, объектов, компонент программных сред и т.п.), используемых программистом как дополнительные средства языка. В эту библиотеку могут входить как программные продукты, разработанные самим программистом, так и средства общего назначения (библиотеки процедур и функций общего назначения, редакторы, трансляторы, кросс-трансляторы, редакторы связей и тому подобное), называемые инструментальными средствами (или утилитами).
Для создания и поддержки программного окружения в языках программирования разработаны свои средства. В языке ТР это модули.