Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

История. Структурное программирование

Структурное программирование

Только псевдокод

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

· Псевдокод сопровождать проще, чем другие виды проектной документации. При других подходах проектная документация отделена от кода, и внесение в неё изменений (или забывание) порождает несоответствие. Поскольку псевдокод становится комментариями, то внося в них изменения, вы поддерживаете проектную документацию в корректном состоянии.

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

На протяжении 60-х годов попытки создания многих больших программных систем наталкивались на ряд трудностей. Сроки создания программного обеспечения обычно не выполнялись, стоимость проектов превосходила бюджет, а конечный продукт не отличался надёжностью. Люди начали понимать, что создание программного обеспечения – гораздо более сложная задача, чем они себе представляли.

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

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

Например, для реализации следующего алгоритма:

 

использовался код:

S = 0;

i = 1;

начало_цикла:

S = S + i;

i = i + 1;

Если (i<10), то

перейти на «начало_цикла»;

Если (S<100), то

перейти на «действие2»;

Вывод “Сумма больше ста”;

перейти на «конец_условия»;

действие2:

Вывод “Сумма меньше ста”;

конец_условия:

Такой код был нормой для программ того времени. Неправильное и необдуманное использование произвольных переходов в тексте программы приводит к получению запутанных, плохо структурированных программ (т.н. программ-спагетти), по тексту которых практически невозможно понять порядок исполнения и взаимозависимость фрагментов.

Идеи так называемого структурного программирования стали почти синонимами требования «не применять goto». Исследование Бома и Джакопини показало, что программы могут быть написаны без использования оператора goto. В результате для программистов настала эра перехода к стилю программирования «с минимальным использованием goto».

Такого не было до 70-х годов, пока программисты не стали серьёзно применять структурное программирование. Результаты получились впечатляющие: группы разработчиков программного обеспечения сообщали, что время разработок сократилось, производительность труда выросла, и проекты стали чаще укладываться в рамки бюджета. Ключом к успеху явилось, что структурированные программы стали более прозрачными, легче поддавались отладке и модификации и, что самое главное, в них стало меньше ошибок.

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

<== предыдущая лекция | следующая лекция ==>
Выгоды использования блок-схем и псевдокода | Три базовые конструкции
Поделиться с друзьями:


Дата добавления: 2013-12-13; Просмотров: 756; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.009 сек.