Технологии программирования

Камаев В А

Костерин В В

В книге изложены технологии структурного программирования, объектно-ориентированного проектирования, визуального программирования, технология, основанная на абстракции данных Дейкстеры. Рассмотрено использование средств автоматизации проведения программных разработок.

Второе издание (1-е — 2005 г.) дополнено главами по структуре данных и основам инженерии создания программ.

Для студентов вузов, обучающихся по направлению «Информатика».

ПРЕДИСЛОВИЕ

В настоящее время программирование трансформировалось в целую индустрию производства программных изделий. Поэтому уже мало знать только язык программирования и операционный подход к составлению алгоритмов. Профессиональный разработчик программных изделий должен владеть теорией проектирования, методами активизации мышления. Ему необходимо умение оперирования моделями, методами генерации решений и выбора их оптимальных вариантов. Создание программных изделий коллективом разработчиков предопределило необходимость умения планирования работ и их распределения между отдельными участниками проекта.

В современном программировании требуется активное владение дедуктивным мышлением, что не достигается школьным, а зачастую и вузовским образованием.

Данная книга ориентирована именно на решение данных проблем.

Материалы книги были использованы в более чем двадцатилетней педагогической практике авторов по подготовке такой массовой профессии, как программист. Практика показала, что большая часть студентов второго курса способна коллективно выполнять проекты программных систем средней сложности и их успешно реализовывать при достигнутом уровне производительности реализации 100–200 отлаженных строк в день. При этом достигается самодокументированность текстов программ.

Данная книга содержит теоретические знания, необходимые как программистам-кодировщикам программ, так и системным аналитикам. В ней излагаются методики овладения дедуктивным мышлением.

ВВЕДЕНИЕ

На ранних этапах развития программирования, когда программы писались в виде последовательностей машинных команд, какая-либо технология программирования отсутствовала. По достижении сначала кажущегося непреодолимого уровня сложности возникла инженерия программирования.

До конца 70-х годов программирование, как правило, было работой отдельных одаренных людей. Из-за несовершенства первых методик программирования даже относительно короткие программы (длиной около 600 строк) создавались в течение нескольких месяцев.

Начало 80-х годов соответствовало широкому внедрению в практику программирования методов проектирования, заимствованных из техники. Например, по примеру техники, внедряется ГОСТ 19.102—77, регламентирующий стадии и этапы программных разработок. Данный стандарт входит в группу стандартов единой системы программной документации (ЕСПД). ЕСПД сыграла значимую положительную роль в практике отечественного программирования и пережила без значительных изменений уже несколько новых технологий программирования, например, технологию структурного программирования и технологию объектно-ориентированного программирования.

Технология программирования — это научная и практически апробированная стратегия разработки программ, содержащая описание совокупности методов и средств разработки программ, а также порядок применения этих методов и средств.

К настоящему времени понятия процесса программирования качественно изменились. Производство программ приобрело массовый характер, существенно увеличился их объем и сложность. Разработка программных комплексов потребовала значительных усилий больших коллективов специалистов. Программы перестали быть только вычислительными и начали выполнять важнейшие функции по управлению и обработке информации в различных отраслях науки, техники, в экономике и др.