Основные методы технологии построения алгоритмов — КиберПедия 

Индивидуальные и групповые автопоилки: для животных. Схемы и конструкции...

Наброски и зарисовки растений, плодов, цветов: Освоить конструктивное построение структуры дерева через зарисовки отдельных деревьев, группы деревьев...

Основные методы технологии построения алгоритмов

2017-09-10 576
Основные методы технологии построения алгоритмов 0.00 из 5.00 0 оценок
Заказать работу

 

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

Например, чтобы написать в письме индекс получателя (393780) необходимо данное число вписать в соответствующую графу письма. Сначала пишут цифру 3, затем 9, 3, 7, 8 и, наконец, 0. При этом цифры рисуют, последовательно прорисовывая линии, из которых они состоят.

Модульность алгоритмов, головная программа. При программировании сверху вниз алгоритмы и данные делятся на относительно независимые части, называемые модулями [14]. Некоторые из модулей являются стандартными и поставляются в составе языков программирования, например, вычисление элементарных математических функций, квадратный корень, логарифм, косинус, синус и т.д. Но главные модули все равно приходится проектировать программистам. Таким образом, алгоритм является деревом модулей: одни модули вызывают другие модули, начиная с самого верхнего первого модуля, называемого корневым модулем, или головной программой.

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

1) какова функция модуля, т.е. что он делает;

2) описание входных и выходных данных модуля.

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

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

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

Тремя элементарными структурными алгоритмами являются следующие:

1. Следование, или цепочка, или составная инструкция.

2. Выбор, или ветвление, или условная инструкция.

3. Цикл, или возврат, или циклическая инструкция.

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

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

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

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

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

1) готовую объектную визуальную модель, содержащую множество графических диалоговых объектов (кнопки, окна, меню и т.д.) и программных модулей, которые их реализуют;

2) среду визуального программирования, в которой графические диалоговые объекты, которые будут определять интерфейс программы, просто размещаются на экране мышью.

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

 


Поделиться с друзьями:

История развития пистолетов-пулеметов: Предпосылкой для возникновения пистолетов-пулеметов послужила давняя тенденция тяготения винтовок...

История создания датчика движения: Первый прибор для обнаружения движения был изобретен немецким физиком Генрихом Герцем...

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

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



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.009 с.