Существуют только структурная и объектная парадигмы программирования. Структурный подход в программировании Структурный подход к программированию представляет собой

Структурный подход к программированию представляет собой совокупность рекомендуемых

технологических приемов, охватывающих выполнение всех этапов разработки программного

обеспечения. В основе структурного подхода лежит декомпозиция (разбиение на части) сложных

систем с целью последующей реализации в виде отдельных небольших (до 40 - 50 операторов)

подпрограмм. С появлением других принципов декомпозиции (объектного, логического и т. д.)

данный способ получил название процедурной декомпозиции.

В отличие от используемого ранее процедурного подхода к декомпозиции, структурный

подход требовал представления задачи в виде иерархии подзадач простейшей структуры.

Проектирование, таким образом, осуществлялось «сверху вниз» и подразумевало реализацию

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

также специальный метод проектирования алгоритмов - метод пошаговой детализации.

Поддержка принципов структурного программирования была заложена в основу так

называемых процедурных языков программирования. Как правило, они включали основные

«структурные» операторы передачи управления, поддерживали вложение подпрограмм,

локализацию и ограничение области «видимости» данных. Среди наиболее известных языков этой

группы стоит назвать PL/1, ALGOL-68, Pascal, С.

Одновременно со структурным программированием появилось огромное количество языков,

базирующихся на других концепциях, но большинство из них не выдержало конкуренции. Какие-

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

версиях развиваемых языков.

Дальнейший рост сложности и размеров разрабатываемого программного обеспечения

потребовал развития структурирования данных . Как следствие этого в языках появляется

возможность определения пользовательских типов данных. Одновременно усилилось стремление

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

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

технология модульного программирования.

Модульное программирование предполагает выделение групп подпрограмм, использующих

одни и те же глобальные данные в отдельно компилируемые модули (библиотеки подпрограмм),

например, модуль графических ресурсов, модуль подпрограмм вывода на принтер (рис. 1.5). Связи

между модулями при использовании данной технологии осуществляются через специальный

интерфейс, в то время как доступ к реализации модуля (телам подпрограмм и некоторым



«внутренним» переменным) запрещен. Эту технологию поддерживают современные версии

языков Pascal и С (C++), языки Ада и Modula.

Использование модульного программирования существенно упростило разработку

программного обеспечения несколькими программистами. Теперь каждый из них мог

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

Практика показала, что структурный подход в сочетании с модульным программированием

позволяет получать достаточно надежные программы, размер которых не превышает 100 000

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

интерфейсе при вызове подпрограммы выявляется только при выполнении программы (из-за

раздельной компиляции модулей обнаружить эти ошибки раньше невозможно). При увеличении

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

момента предусмотреть взаимовлияние отдельных частей программы становится практически

невозможно. Для разработки программного обеспечения большого объема было предложено

использовать объектный подход .

Что же такое алгоритм? Понятию алгоритма можно дать несколько определений. Например, Алгоритм - это описание метода решения задачи. Можно дать и более строгое определение - Алгоритм - это метод (способ) решения задачи, записанный по определенным правилам, обеспечивающим однозначность его понимания и исполнения при всех допустимых значениях исходных данных. В толковом словаре по Информатике (1991г.) дано еще одно общепринятое определение этого понятия - алгоритм - точное предписание, определяющее вычислительный процесс, ведущий от варьируемых начальных данных к искомому результату.

1.2. Основные свойства алгоритма.

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

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

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

  5. Результативность и конечность алгоритма.
  6. Свойство алгоритма, означающее, что алгоритм должен всегда приводить к результату через конечное число шагов.

  7. Массовость алгоритма
  8. . Это свойство заключается в том, что каждый алгоритм, разработанный для решения некоторой частной задачи, может быть применен для решения всех задач этого же типа при всех допустимых значениях исходных данных.

1.3 Базовые алгоритмические структуры.

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

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

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

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

1.4 Правила построения алгоритма задачи.

Можно сформулировать общие правила построения алгоритма задачи:

  1. Выявить исходные данные, результаты, назначить им имена.
  2. Выбрать метод (порядок) решения задачи.
  3. Разбить метод решения задачи на отдельные этапы.
  4. Составить алгоритм выполнения каждого этапа.
  5. Обеспечить выдачу результатов или сообщение об их отсутствии и предусмотреть возможность после любой операции выхода из задачи.

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

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

1. Обеспечить проверку выполнения всех операций алгоритма;
2. Свести количество вычислений к минимуму.

2.1 Нисходящее пошаговое проектирование

Составление алгоритмов сложных задач требует специального подхода. Этот подход известен в литературе как структурный. Основополагающим принципом структурного подхода к программированию является нисходящее пошаговое проектирование. этот принцип предполагает разбиение задачи на отдельные этапы (подзадачи) , причем каждая такая подзадача в дальнейшем рассматривается как отдельная независимая задача. Каждая такая подзадача может быть в свою очередь разбита на отдельные этапы (блоки) и ее схема может иметь различную степень детализации. Напомним,что составление алгоритма задачи является промежуточным шагом процесса ее решения. Алгоритм в дальнейшем должен будет переведен на какой либо из языков программирования. Каждому блоку алгоритма будет соответствовать более или менее сложный фрагмент программы. Будем называть блок алгоритма

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

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

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

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

Опыт применения методов структурного программирования при разработке, например, ряда сложных операционных систем показывает, что правильность логической структуры системы в этом случае легко поддается доказательству, а сама система допускает достаточно полное тестирование. Уменьшение трудностей отладки и тестирования программ приводит к увеличению производительности труда программистов, поскольку на тестирование программы тратится от трети до половины времени ее разработки. Производительность труда программиста обычно измеряется числом отлаженных операторов, которые он может написать за день. Приближенные оценки показывают, что применение методов структурного программирования позволяет увеличить это число в 5-6 раз. Также нужно сказать, что структурное программирование предполагает определенную организацию самого процесса программирования и определенную технологию проектирования программ, что также положительно влияет на производительность труда программистов.

Основы структурного программирования. Теоретическим фундаментом структурного программирования является теорема о структурировании , из которой следует, что алгоритм (программа) решения любой практически вычислимой задачи может быть представлен с использованием трех элементарных базисных управляющих структур: структуры следования (последовательности); структуры ветвления, структуры цикла, изображенных на рис. 6.5-6.7 соответственно, где Р - условие, S - оператор.

Структура следования представляет собой естественный ход выполнения алгоритма - любую последовательность операторов, выполняющихся друг за другом (см. рис. 6.5). В языке программирования это соответствует последовательности операторов ввода, вывода и операторов присваивания.

Представляет фактор принятия решения, включает проверку некоторого логического условия Р и, в зависимости от результатов этой проверки, выполнение оператора S1 либо оператора S2. В языках программирования (например, Pascal) реализуется оператором if Р then SI else S2 (см. рис. 6.6).

Структура цикла (цикла с предусловием) представляет фактор повторяемости вычислений, обеспечивает многократное повторение выполнения оператора S, пока выполняется (истинно) логическое

Рис. 6.5. Структура следования

Рис. 6.6.

условие Р. В языках программирования (например, Pascal) реализуется оператором while Р do S (см. рис. 6.7).

Базисный набор управляющих структур является функционально полным, т.е. с его помощью можно создать любой сколь угодно сложный алгоритм, однако с целью создания более компактных и наглядных алгоритмов и программ используются дополнительные управляющие структуры: структура сокращенного ветвления; структура варианта или многоальтернативного выбора; структура цикла с параметром; структура цикла с постусловием. В разных языках программирования реализация базовых управляющих структур может быть различной, например в языке Pascal реализованы все предлагаемые структуры.

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

Каждая из структур может рассматриваться как один функциональный блок с одним входом и одним выходом. Блоки S, SI, S2, входящие в состав базисных управляющих структур, сами могут быть одной из них, поэтому возможны вложенные конструкции. Однако, какова бы ни была степень и глубина «вложенности», важно, что любая конструкция в конечном итоге имеет один вход и один выход. Следовательно, любую сложную структуру можно рассматривать как «черный ящик» с одним входом и одним выходом. Таким образом, можно ввести преобразование любой структуры в функциональный блок. Тогда всякий алгоритм, составленный из стандартных структур, поддается последовательному преобразованию к единственному функциональному блоку, и эта последовательность преобразований может быть использована как средство понимания алгоритма и доказательства его правильности. Обратная последовательность преобразований может быть использована в процессе проектирования алгоритма с постепенным раскрытием единственного функционального блока в сложную структуру основных элементов.

Для структурирования и понимания больших по объему программ используются также дополнительные структурные средства, которые поддерживают модульный принцип разработки ПС: это подпрограммы и модули. Использование аппарата подпрограмм (процедур и функций) - это возможность выделять в самостоятельные программные единицы со своими входными и выходными данными отдельные (часто повторяющиеся) участки кода для последующего многократного вызова их из различных точек программы и других подпрограмм. Модуль представляет собой автономно компилируемую библиотеку описаний типов, данных, процедур и функций, что позволяет группировать описания данных и подпрограмм по их функциям и назначению согласно одному из основных принципов структурного программирования - разбиения больших задач на подзадачи.

Методика разработки программ. Распространены две методики (стратегии) разработки программ, относящиеся к структурному программированию: программирование «сверху вниз»; программирование «снизу вверх».

Программирование «сверху вниз», или нисходящее проектирование программ , - это методика разработки программ, при которой разработка начинается с определения целей решения проблемы, после чего идет последовательная детализация, заканчивающаяся детальной программой. Сначала выделяется несколько самых глобальных задач, решение которых может быть представлено в общей структуре функционально независимыми блоками. Разработку логической структуры каждого такого блока и ее модификацию можно осуществлять независимо от остальных блоков. На этом первом этапе проекта раскрываются наиболее важные и существенные связи, определяется функциональное назначение каждого блока, его входные и выходные данные. На последующих этапах проектирования уточняется (детализируется) логическая структура отдельных функциональных блоков общей схемы, что также может осуществляться в несколько этапов детализации вплоть до простейших инструкций. На каждом этапе проекта выполняются многократные проверки и исправления.

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

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

Общие принципы разработки программных проектов. Использование технологии структурного программирования при разработке серьезных программных проектов основано на следующих принципах:

  • программирование должно осуществляться «сверху вниз»;
  • весь проект должен быть разбит на модули/подпрограммы с одним входом и одним выходом;
  • любая подпрограмма должна допускать только три основные структуры: последовательное выполнение операторов, ветвление и цикл;
  • недопустим оператор безусловной передачи управления goto;
  • документация должна создаваться одновременно с программированием, частично в виде комментариев к программе. Применение принципов и методов структурного программирования позволяет повысить надежность программ (благодаря хорошему структурированию при проектировании программа легко поддается тестированию и отладке) и их эффективность (структурирование программы позволяет легко находить и корректировать ошибки, а отдельные подпрограммы можно переделывать/модифицировать независимо от других), уменьшить время и стоимость программной разработки, улучшить читабельность программ.

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

Основные принципы структурного программирования заключаются в следующем. Любая программа может быть легко синтезирована на базе элементарных конструкций трех основных типов:

Простой последовательности;

Условий или альтернатив;

Повторений, то есть циклов и итераций.

Использоваться может один или два любых вида одновременно. Каждой структуре присуща единая черта - единственная точка передачи управления в структуру и единственная точка входа в структуру. Такой вид конструкции имеет дисциплинирующее и систематизирующее значение.

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

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

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

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

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

  • Структурная
    • Разделение ответственности :
  • Шаблон: программного обеспечения, в основе которой лежит представление программы в виде иерархической структуры блоков . Предложена в 70-х годах XX века Э. Дейкстрой , разработана и дополнена Н. Виртом .

    В соответствии с данной методологией

    1. Любая программа представляет собой структуру, построенную из трёх типов базовых конструкций:
      • последовательное исполнение - однократное выполнение операций в том порядке, в котором они записаны в тексте программы;
      • ветвление - однократное выполнение одной из двух или более операций, в зависимости от выполнения некоторого заданного условия;
      • цикл - многократное исполнение одной и той же операции до тех пор, пока выполняется некоторое заданное условие (условие продолжения цикла).
      В программе базовые конструкции могут быть вложены друг в друга произвольным образом, но никаких других средств управления последовательностью выполнения операций не предусматривается.
    2. Повторяющиеся фрагменты программы (либо не повторяющиеся, но представляющие собой логически целостные вычислительные блоки) могут оформляться в виде т. н. подпрограмм (процедур или функций). В этом случае в тексте основной программы, вместо помещённого в подпрограмму фрагмента, вставляется инструкция вызова подпрограммы . При выполнении такой инструкции выполняется вызванная подпрограмма, после чего исполнение программы продолжается с инструкции, следующей за командой вызова подпрограммы.
    3. Разработка программы ведётся пошагово, методом «сверху вниз».

    Сначала пишется текст основной программы, в котором, вместо каждого связного логического фрагмента текста, вставляется вызов подпрограммы, которая будет выполнять этот фрагмент. Вместо настоящих, работающих подпрограмм, в программу вставляются «заглушки», которые ничего не делают. Полученная программа проверяется и отлаживается. После того, как программист убедится, что подпрограммы вызываются в правильной последовательности (то есть общая структура программы верна), подпрограммы-заглушки последовательно заменяются на реально работающие, причём разработка каждой подпрограммы ведётся тем же методом, что и основной программы. Разработка заканчивается тогда, когда не останется ни одной «затычки», которая не была бы удалена. Такая последовательность гарантирует, что на каждом этапе разработки программист одновременно имеет дело с обозримым и понятным ему множеством фрагментов, и может быть уверен, что общая структура всех более высоких уровней программы верна. При сопровождении и внесении изменений в программу выясняется, в какие именно процедуры нужно внести изменения, и они вносятся, не затрагивая части программы, непосредственно не связанные с ними. Это позволяет гарантировать, что при внесении изменений и исправлении ошибок не выйдет из строя какая-то часть программы, находящаяся в данный момент вне зоны внимания программиста.

    Теорема о структурном программировании:

    Основная статья: Теорема Бома-Якопини

    Любую схему алгоритма можно представить в виде композиции вложенных блоков begin и end, условных операторов if, then, else, циклов с предусловием (while) и может быть дополнительных логических переменных (флагов).
    Эта теорема была сформулирована итальянскими математиками К. Бомом и Дж. Якопини в 1966 году и говорит нам о том, как можно избежать использования оператора перехода goto .

    История

    Методология структурного программирования появилась как следствие возрастания сложности решаемых на компьютерах задач, и соответственного усложнения программного обеспечения. В 70-е годы XX века объёмы и сложность программ достигли такого уровня, что «интуитивная» (неструктурированная, или «рефлекторная») разработка программ, которая была нормой в более раннее время, перестала удовлетворять потребностям практики. Программы становились слишком сложными, чтобы их можно было нормально сопровождать, поэтому потребовалась какая-то систематизация процесса разработки и структуры программ.

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

    Следование принципам структурного программирования сделало тексты программ, даже довольно крупных, нормально читаемыми. Серьёзно облегчилось понимание программ, появилась возможность разработки программ в нормальном промышленном режиме, когда программу может без особых затруднений понять не только её автор, но и другие программисты. Это позволило разрабатывать достаточно крупные для того времени программные комплексы силами коллективов разработчиков, и сопровождать эти комплексы в течение многих лет, даже в условиях неизбежных изменений в составе персонала.

    Методология структурной разработки программного обеспечения была признана «самой сильной формализацией 70-х годов». После этого слово «структурный» стало модным в отрасли, и его начали использовать везде, где надо и где не надо. Появились работы по «структурному проектированию», «структурному тестированию», «структурному дизайну» и так далее. В общем, произошло примерно то же самое, что происходило в 90-х годах и происходит в настоящее время с терминами «объектный», «объектно-ориентированный» и «электронный».

    Перечислим некоторые достоинства структурного программирования:

    1. Структурное программирование позволяет значительно сократить число вариантов построения программы по одной и той же спецификации, что значительно снижает сложность программы и, что ещё важнее, облегчает понимание её другими разработчиками.
    2. В структурированных программах логически связанные операторы находятся визуально ближе, а слабо связанные - дальше, что позволяет обходиться без блок-схем и других графических форм изображения алгоритмов (по сути, сама программа является собственной блок-схемой).
    3. Сильно упрощается процесс тестирования и отладки структурированных программ.

    См. также

    Ссылки


    Wikimedia Foundation . 2010 .

    • Махаджанапады
    • Camel

    Смотреть что такое "Структурное программирование" в других словарях:

      Структурное программирование - методология и технология разработки программных комплексов, основанная на принципах: программирования сверху вниз; модульного программирования. При этом логика алгоритма и программы должны использовать три основные структуры: последовательное… … Финансовый словарь

      структурное программирование - struktūrinis programavimas statusas T sritis automatika atitikmenys: angl. structured coding; structured programming vok. strukturelle Programmierung, f rus. структурированное программирование, n; структурное программирование, n pranc.… … Automatikos terminų žodynas

      Структурное программирование - 46. Структурное программирование Structured programming Источник: ГОСТ 19781 90: Обеспечение систем обработки информации программное. Термины и определения … Словарь-справочник терминов нормативно-технической документации

      Программирование - Эта статья должна быть полностью переписана. На странице обсуждения могут быть пояснения. У этого термина существуют и другие значения, см. Программи … Википедия

      ПРОГРАММИРОВАНИЕ - 1) процесс составления программы, плана действий. 2) Раздел информатики, изучающий методы и приёмы составления программ. С долей условности П. как дисциплина разделяется на: теоретическое, изучающее матем. абстракции программ (как объектов с… … Физическая энциклопедия

      Программирование основанное на прототипах - Прототипное программирование стиль объектно ориентированного программирования, при котором отсутствует понятие класса, а повторное использование (наследование) производится путём клонирования существующего экземпляра объекта прототипа.… … Википедия

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

      Компьютерное программирование - Разработка программного обеспечения Процесс разработки ПО Шаги процесса Анализ | Проектирование | Реализация | Тестирование | Внедрение | Сопровождение Модели / методы Agile | Cleanroom | Итеративная | Scrum | RUP | MSF | Спиральная | … Википедия

      Неструктурированное программирование - Структурное программирование методология разработки программного обеспечения, в основе которой лежит представление программы в виде иерархической структуры блоков. Предложена в 70 х годах XX века Э. Дейкстрой, разработана и дополнена Н. Виртом. В … Википедия

      Компонентно-ориентированное программирование - Парадигмы программирования Агентно ориентированная Компонентно ориентированная Конкатенативная Декларативная (контрастирует с Императивной) Ограничениями Функциональная Потоком данных Таблично ориентированная (электронные таблицы) Реактивная … Википедия

    Книги

    • Дисциплина программирования , Дейкстра Э.. Книга написана одним из крупнейших зарубежных специалистов в области программирования, известным советскому читателю по переводам его книг на русский язык (например, «Структурное…
    Поделиться