8
некоторым оценкам, 75% организаций, занимающихся разработкой
программ, делают это на примитивном уровне.
С момента зарождения технология разработки программ испытала
несколько подъемов в своем развитии. Один из них связан с публикацией
письма Эдстера Дийкстры (Edsger Dijkstra) в Ассоциацию
вычислительной техники, озаглавленного так: «О
вреде использования
операторов GOTO» (GOTO statement considered harmful, 1968). В те
времена программы писались с активным использованием операторов
безусловного перехода. Обращая внимание на недостатки таких
программ, Дийкстра предложил
свою концепцию структурного
программирования, позволяющую избежать использования таких
операторов. Концепция Дийкстры основывалась на том наблюдении
Бема и Якоби (Flow Diagrams, Turning Machines and languages with only
two formation rules, 1966), что для записи любой программы в принципе
достаточно только трех конструкций управления – последовательного
выполнения, ветвления и цикла. То есть теоретически необходимость в
использовании операторов перехода отсутствует [24, 25].
Следующий шаг в развитии структурного программирования связан
с
введением аппарата функций, позволяющих разбивать структурную
программу на обозримые по своим размерам части. При таком подходе
программа пишется в терминах вызова функций верхнего уровня,
которые реализуются при помощи функций более низкого уровня.
Нисходящее программирование еще так же называли модульным
программированием.
Структурным программам недоставало одного важного свойства – в
их структуре непосредственно не отображалась
сущность предметной
области. Из-за этого было трудно их модифицировать в условиях
изменяющихся требований. Позднее возникла парадигма объектной
ориентированности. Она основана на использовании объектов,
объединяющих в себе данные и функциональность. На
ОО парадигме
основаны многие современные языки и системы программирования.
Достарыңызбен бөлісу: