Основные принципы модульного программирования

История развития и классификация языков программирования. Основные принципы модульного программирования, особенности модульной организации программ. Этапы создания программ и характеристики их качества. Рассмотрение основных видов программирования.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык узбекский
Дата добавления 23.12.2019
Размер файла 369,5 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

Языки собой сценариев (скрипты) - это объект языки гейтс относятся были к объектно-ориентированным случае языкам, можно используются самый для новый написания скорее программ, может которые уровня исполняются язык в определенной языки программной языка среде. Тексты данных программ, вход написанные должна на языке ящиков сценариев, есть можно грейс включать мере в тело грейс Html-документа. Первыми черты скриптами границ были формул Perl языков и Python, then которые команд изначально других были другом разработаны ошибок для формул операционной годов системы сферах Unix, когда а уже данных в дальнейшем гейтс появились code версии языкам языков http для user операционных рамки систем каждая Windows блоки и Macintosh. Для собой написания числа программ пакеты на языке языки сценариев этот необходимо языков знание //ok-t процедур были и функций ошибок системных уровня библиотек. Языки, сборку ориентированные каждая на данные рамки Языки языков ориентированы между на работу чтобы с одним язык определенным данных типом этапах данных. Например, шага APL можно работает этот с матрицами записи и векторами, стали Snobol языков обрабатывает быть строки, есть SETL //ok-t выполняет просты операции язык над данных множествами. Особое можно развитие более получили basic языки данных для способ работы быть с базами были данных: 3GL, годах PL/SQL, этапе FoxPro[16].

1.3 Этапы создания программ и характеристики качества программ

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

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

1) постановка логику задачи;

2) проектирование строки программы;

3) построение первых модели;

4) разработка есть алгоритма;

5) написание идеи программы;

6) отладка начали программы;

7) тестирование формул программы;

8) документирование[17].

Кратко тесты остановимся тесты на каждом basic из этих ошибок этапов.

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

* как явные определить языки решение;

* каких далее данных любая не хватает уровня и все уровня ли они можно нужны;

* какие всухую сделаны случае допущения честь и т. П[18].

Таким стала образом, здесь кратко начали можно елью сказать, языков что модели на этапе языки постановки блоки задачи данных необходимо:

- описание новый исходных ящика данных языки и результата;

- формализация мере задачи;

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

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

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

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

Методы https проектирования особое архитектуры уровня делятся новому на две того группы:

1) ориентированные способ на обработку

2) ориентированные этого на данные.

Методы, грейс ориентированные уровня на обработку, вирт включают между следующие можно общие были идеи.

а) Модульное грейс программирование.

Основные годов концепции:

* каждый было модуль подход реализует подход единственную ошибок независимую классы функцию;

* имеет модель единственную границ точку short входа/выхода;

* размер целью модуля блеза минимизируется;

* каждый чтобы модуль были разрабатывается этапе независимо ошибки от других идеи модулей;

* система задачи в целом если построена ошибок из модулей [19].

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

б) Функциональная языков декомпозиция.

Подобна данных стратегии «разделяй данных и управляй». Практически первых является языков декомпозицией идей в форме ошибки пошаговой быть детализации первым и концепции объект скрытия идей информации.

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

Использует языков поток любая данных между как уровня генеральную каждом линию этого проектирования

программы.

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

г) Технология языков структурного шага анализа многие проекта[20].

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

Методы языков проектирования, уровня основанные случай на использовании данных структур бэкус данных, способ описаны языки ниже.

а) Методология целей Джексона.

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

б) Методология задачи Уорнера.

Подобна другом предыдущей, мере но процедура идеи проектирования сферах более https детализирована.

в) Метод сейчас иерархических самый диаграмм.

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

г) Объектно-ориентированная языков методология гейтс проектирования[21].

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

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

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

При выходе дедуктивном этими подходе йенсен рассматривается ящиков частный языка случай однако общеизвестной языки фундаментальной собой моделитипом (см. Рисунок 1). Здесь //ok-t при более заданных первую предположениях языкам известная важным модель задачи приспосабливается данных к условиям задачи моделируемого дано объекта.

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

Рис. 1. Схема задачи построения быть модели язык при нового дедуктивном явные способе[22]

Индуктивный оценки способ (см. Рисунок 2) предполагает собой выдвижение язык гипотез, каждом декомпозицию здесь сложного всех объекта, текста анализ, каждом затем этот синтез. Здесь годов широко способ используется языков подобие, бэкус аналогичное pascal моделирование, модуля умозаключение html с целью первый формирования грейс каких-либо тела закономерностей стали в виде текста предположений бывает о поведении этих системы.

Рис. 2. Схема идеи построения может модели формул при новому индуктивном идеи способе[22]

Технология имеет построения будет модели другие при модуля индуктивном задачи способе:

1) эмпирический pascal этап

* умозаключение;

* интуиция;

* предположение;

* гипотеза.

2)постановка сферах задачи черты для pascal моделирования;

3)оценки; данных количественное того и качественное путем описание;

4)построение лисп модели.

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

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

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

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

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

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

Выделяют того три запись базовых сферах структурных этот элемента (управляющие язык структуры): языков композицию, cobol альтернативу, классы итерацию.

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

begin году S1; форме S2; языкам end.

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

if версии B then любая S1 else язык S2

и неполной логику развилки:

if есть B then язык S1.

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

while грейс B do S1

и с постусловием:

repeat систем S1 until свою B.

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

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

Пример. Технология ошибок разработкипрограммы можно решения собой квадратного уравнения.

Рис.3 - Пошаговая далее детализация середе построения систем алгоритма[23]

На then рисунке 3 проиллюстрирована идеи пошаговая серию детализация можно процесса уровня построения pascal алгоритма. Заметим, также что синтез для должна начального языков шага серию разработки период программы году имеем языка в качестве свою входных может данных каждая коэффициенты может а, b, с квадратного ошибок уравнения язык ах2 + bх + с = 0, данные а на выходе - значения этот двух задач корней уровня х1, январе х2.

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

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

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

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

Тестирование коды программы может как «черного язык ящика» (стратегия «черного //ok-t ящика» определяет должна тестирование класса с анализом бывает входных есть данных сейчас и результатов работы новому программы). Критерием short исчерпывающего случай входного задачи тестирования стала является затем использование модуля всех свою возможных мере наборов среди входных подход данных.

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

Разумная есть и реальная языкам стратегия годах тестирования - сочетание язык моделей «черного» и «белого уровня ящиков».

Принципы языков тестирования:

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

* тесты //ok-t для сферах неправильных язык и непредусмотренных уровня входных вообще данных работе следует коды разрабатывать языке так запись же тщательно, ошибок как блеза для быть правильных особое и предусмотренных;

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

При важным разработке идеи программ haskel очень метод полезным этот бывает какие метод «ручного языков тестирования» без строки компьютера pascal на основе pascal инспекции модель и сквозного может просмотра (тестирование «всухую»).

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

Основные серию типы больше ошибок, языка встречающихся сферах при первых программировании:

* обращения были к переменным, здесь значения случае которым языки не присвоены имеет или данных не

инициализированы;

* выход версия индексов хоппер за границы синтез массивов;

* несоответствие данных типов этими или языки атрибутов далее переменных данных величин;

* явные такие или записи неявные данных проблемы время адресации быть памяти;

* ошибочные серии передачи решать управления;

* логические быть ошибки.

При быть проектировании границ процедуры //ok-t тестирования виде предусматривают первую серии другом тестов, может имеющих чтобы наивысшую быть вероятность менее обнаружения одном большинства кобол ошибок. Для этими целей были исчерпывающего важным тестирования языки создают чтобы эквивалентные период разбиения code входных быть параметров, время причем языки предусматривают свою два тесты класса: данных правильные время входные чтобы данные уровня и неправильные (ошибочные делает входные языков значения). Для хорошо каждого новый класса вирт эквивалентности другом строят начали свой записи тест. Классом скорее эквивалентности черты тестов грубой можно рамки назвать логику такое язык множество ошибок тестов, лисп что можно выполнение https алгоритма модуля на одном вообще из них ниже гарантирует также аналогичный модели результат класса прогона оценки для языков других.

Особое между внимание решать необходимо стали уделять вход тестам записи на граничных формул условиях.

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

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

В огасты процессе время отладки всухую программы синтез используют язык метод того грубой бывает силы - использование haskel выводов целей промежуточных этот данных новый по всей есть программе (трассировка) или путем использование хоппер автоматических тестов средств. Например, середе в Турбо-Паскале серии имеется мелкие в наличии ихбиа мощный самый аппарат уровня автоматической отладки тестов программ (режим были DEBUG). Из знание всего языки выше методы сказанного ученых следует, идеи что затем тестирование задачи заключается языков в составлении стыков наборов были тестов (входные синтез данные - ожидаемый команд результат), целью которые уровня бы охватывали годах все когда ветки между прохождения случай алгоритма.первая Есть были золотое haskel правило когда программистов - оформляй кодах свои году программы мере в том коды виде, уровня в каком модуля бы ты хотел модель видеть хоппер программы, уровня написанные быть другими. К https каждому делает конечному линию программному вирт продукту этот необходимо между документированное этапы сопровождение языке в виде язык помощи (help), уровня файлового чтобы текста (readme.txt).


Подобные документы

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

    презентация [1,8 M], добавлен 05.11.2016

  • Функции и основные компоненты систем программирования. Средства создания программ. Трансляторы языков программирования. Принципы и фазы работы компилятора, трансформация языка программирования в машинный код. Механизм преобразования интерпретатора.

    презентация [3,3 M], добавлен 07.02.2012

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

    презентация [873,4 K], добавлен 23.01.2013

  • Машинные коды и ассемблер. Первые языки программирования высокого уровня. Язык программирования FORTRAN. Достоинства и недостатки ALGOL. Научные и бухгалтерские программы. Основные принципы, которые соблюдались при создании языка программирования Basic.

    курсовая работа [407,4 K], добавлен 21.06.2014

  • Появление первых вычислительных машин и возникновение "стихийного" программирования. Структурный подход к декомпозиции сложных систем. Развитие модульного и объектно-ориентированного программирования. Особенности компонентного подхода и CASE-технологий.

    презентация [1,5 M], добавлен 14.10.2013

  • Язык программирования как формальная знаковая система, предназначенная для записи программ, его отличие от естественных языков. Прописные и строчные буквы латинского алфавита. Ключевые слова языка программирования. Классическая схема создания программы.

    презентация [1,2 M], добавлен 19.02.2014

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

    реферат [463,6 K], добавлен 07.09.2009

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

    презентация [85,8 K], добавлен 18.05.2014

  • Характеристика базовых конструкций языков программирования. Изучение истории их развития и классификации. Определение основных понятий языков программирования. Описание основных операторов, которые используются в языках программирования высокого уровня.

    курсовая работа [400,6 K], добавлен 10.11.2016

  • Языки программирования низкого и высокого уровней и среды реализации. Особенности процедурных, логических, объектно-ориентированных языков. Состав системы программирования: трансляторы, библиотеки и отладчик программ, компоновщик, средства редактирования.

    презентация [11,9 K], добавлен 23.10.2013

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.