Математика | ||||
Струтурный подход к программированию-ДЖ.Хьюз Москва 1980 стр.280 Книга посвящена вопросам структурного подхода к программированию—новому направлению в программировании. Она содержит множество примеров, иллюстраций и рекомендаций руководителям программистских коллективов. Особую ценность имеют конкретные данные по структурному программированию на КОБОЛе, ФОРТРАНе и ПЛ/1, трансляторы с которых имеются на отечественных машинах ЕС ЭВМ. Книга предназначена программистам и их руководителям. Она будет полезна студентам и аспирантам вычислительных специальностей университетов и институтов. | ||||
ПРЕДИСЛОВИЕ РЕДАКТОРА ПЕРЕВОДА Традиционная технология программирования складывалась в условиях, когда основным потребителем программ были научные учреждения, вычислительные ресурсы были ограничены, а проблемы сопровождения программ были по существу неизвестны. Основным критерием качества создаваемой программы считалась ее узко понимаемая эффективность, и мало кого интересовали отрицательные последствия тех ухищрений, которые применялись для ее достижения, К настоящему времени ситуация коренным образом изменилась. Потребителем программ стало по существу все народное хозяйство, и узким местом]ста-ли не столько вычислительные, сколько человеческие ресурсы, необходимые для создания и сопровождения крупных систем программ. Стало ясно, что разумная технология программирования должна обеспечить снижение общих трудозатрат с учетом всего жизненного цикла программы — от замысла до завершения эксплуатации. Она должна учитывать, что сопровождение крупных комплексов программ стоит намного дороже их создания, да и в процессе создания приходится не столько писать программы, сколько читать их. В этих условиях важнейшими критериями качества становятся понятность, надежность и удобство сопровождения программ, а также возможность точно планировать их производство.- Неудовлетворенность традиционной технологией и постепенное осознание новых критериев заставило крупнейших производителей программ интенсивно искать новые технологические принципы. Наиболее впечатляющих успехов в этом деле добилась корпорация ИБМ. Когда в начале семидесятых годов появились первые сообщения о том, что существует технология программирования, позволяющая создавать достаточно крупные программы практически без ошибок и при этом укладываться в запланированные сроки и бюджет, эти сообщения были восприняты с большим недоверием. Ведь большинство программистов привыкли к тому, что отладка, а тем более комплексная отладка — весьма капризный и по существу непредсказуемый процесс, обычно нарушающий все разумные оценки по срокам и затратам. И тем не менее сообщения оказались в целом верными — речь шла о первых применениях разработанных фирмой ИБМ так называемых Усовершенствованных методов программирования. Они оказали революционизирующее влияние практически на все стороны деятельности по созданию программ, соединив в себе лучшие элементы личной технологии классных программистов и Достижения теории программирования с индустриальным характером современного производства программ при тщательном учете изменившихся требований к ним. Перед вами учебное пособие по одной из важнейших компонент Усовершенствованных методов — структурному подходу к программированию (с сущностью Усовершенствованных методов можно познакомиться по книге Ф. Я. Дзержинского и А. И. Тер-Саакова х)). Авторы не претендуют на изложение теоретических основ структурного подхода. Их цель — научить рядового программиста пользоваться этим подходом в повседневной практической деятельности. Особую ценность придают книге конкретные рекомендации по структурному программированию на КОБОЛе, ФОРТРАНе и ПЛ/1, трансляторы с которых имеются на отечественных машинах, а также по организации нисходящей разработки, пошаговой детализации, сквозному структурному контролю и тестированию. Правда, иногда авторы слишком увлекаются упрощенчеством, не сообщая читателю о возможных трудностях при попытках ис-пользовать их рекомендации «в лоб». Это касается, в частности, нисходящей реализации и выделения наборов тестов. Существенно фундаментальнее аналогичные вопросы изложены в монографии Г. Майерса ?). Для советского читателя может оказаться трудным разобраться досконально в некоторых примерах из американской экономики, тем более, что авторы рассматривают лишь фрагменты, а не полные программы. Пугаться этого не следует — как правило, для понимания существа излагаемой технологии достаточно общего представления о назначении рассматриваемого фрагмента. Книга Дж. Хьюз и Дж. Мичтома написана на основе богатого опыта, накопленного ИБМ по внедрению и использованию структурного подхода, она будет полезна как программистам, желающим улучшить методы своей работы, так и руководителям программистских коллективов. Предисловие авторов и главы 1, 5, 8, 9, 10 переведены Э. М. Киуру, главы 2, 3, 4, 6, 7 — А. Л. Александровым. При переводе экономических терминов большую помощь оказал С. А. Овсейчик. В. Ш. Кауфман 1) Дзержинский Ф. Я., Тер-Сааков А. И. Технология программирования — структурный подход.— М.: Цнииатоминформ, 1978. 2) Майерс Г, Надежность программного обеспечения,—М,: Мир, 1980, ОГЛАВЛЕНИЕ Предисловие редактора перевода . . ................ б Предисловие............................ 7 Глава 1. НОВАЯ ДИСЦИПЛИНА ПРОГРАММИРОВАНИЯ .... 9 Пролог.......................... 9 Что такое структурное программирование? ,....... 11 Зачем нужна эта новая дисциплина?............ 12 Что такое структурный подход? ............, 14 Выводы для руководства................. 24 Эпилог.......................... 25 Выводы.......................... 27 Контрольные вопросы и упражнения........., , 28 Глава 2. НИСХОДЯЩАЯ РАЗРАБОТКА: ПРОЕКТИРОВАНИЕ ПРОГРАММЫ...................... 29 Модульность....................... 29 Нисходящее проектирование программ........... 34 Выводы для руководства................. 49 Выводы......................... 49 Контрольные вопросы и упражнения ........... 50 Глава 3. НИСХОДЯЩАЯ РАЗРАБОТКА: ПЛАНИРОВАНИЕ И РЕА- . ЛИЗАЦИЯ........................ 52 Планирование ......... ............. 52 Реализация ...,.,................. 63 Выводы для руководства................. 66 Выводы.......................... 68 Контрольные вопросы и упражнения............ 70 Глава 4. СТРУКТУРНОЕ ПРОГРАММИРОВАНИЕ......... 72 Управляющие структуры................. 73 Псевдокод ........ ........... ..... 82 Выводы для руководства................. пп Контрольные вопросы и упражнения ,......, . . , 89 92 Глава 5. ПОШАГОВАЯ ДЕТАЛИЗАЦИЯ.............. 94 ^ Блок-схемы....................... 98 Правила детализации.................. . 99 Сегментирование ........ ..... i ...... . 115 Выводы........................< 124 Контрольные вопросы и упражнения........... 128 Глава 6. СТРУКТУРНОЕ ПРОГРАММИРОВАНИЕ НА СТАНДАРТ- . НОМ КОБОЛе..................... 130 Модульность....................... 131 Структурирование программ на КОБОЛе......... '41 О стиле программирования ................ 156 Как облегчить чтение программы............. 163 , Выводы......................... 168 Контрольные вопросы и упражнения..........( 177 Глава 7. СТРУКТУРНОЕ ПРОГРАММИРОВАНИЕ НА ФОРТРАНе 178 Организация программ на языке ФОРТРАН........ 179 Структурирование программ на ФОРТРАНе....... 182 О стиле программирования...........,..... 189 Как облегчить чтение программы............, 192 Использование препроцессора с выходом на ФОРТРАН ... 194 Выводы.......................... 203 Контрольные вопросы и упражнения........... 204 Глава 8. СТРУКТУРНОЕ ПРОГРАММИРОВАНИЕ НА ПЛ/1 ... 206 Модульность....................i -. . 206 Структурирование ПЛ/1-программ............. 216 Некоторые приемы программирования на ПЛ/1....., 226 Как облегчить чтение программ............. 228 Пример программы...................-. 231 Выводы........................, 233 Контрольные вопросы и упражнения......, . . . , 240 Глава 9. СКВОЗНОЙ. СТРУКТУРНЫЙ КОНТРОЛЬ .,>>-..,• 241 Кто этим занимается?.................., 243 Атмосфера на контрольной сессии............, 245 Как это все происходит?................. 246 Выводы для руководства................., 249 Выводы......................., , 252 Контрольные вопросы ................. , 252 Глава 10. ТЕСТИРОВАНИЕ.................., 254 Что и как нужно тестировать? ,...,»......., 255 Разработка плана тестирования ............. 263 Прогон тестов....................,, 265 Выводы для руководства . . . . ¦, . . , , . ; ,..... 265 Выводы................., , i . i , s -. 267 Контрольные вопросы и упражнения . . . , i > ,..... 268 Глоссарий...................., . , . , . , . , 269 Цена: 500руб. |
||||