Какой подход к разработке программ использует процедурное программирование

Что такое процедурное программирование? Какой вид декомпозиции в нём используется?

Ответ

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

Собственно еще раз были введены дополнительные понятия, которые позволили по-новому взглянуть на программирование.

Этим понятием на этот раз была процедура.

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

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

Источник: murnik.ru

Почему нужно понимать ООП Python и как это упрощает разработку

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

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

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

Основные принципы этой архитектуры сост. в следующем:

· ЭВМ состоит из процессора, памяти и внешних устройств;

· единственным источником активности в ЭВМ является процессор, который, в свою очередь, управляется программой, находящейся в памяти машины (принцип программного управления);

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

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

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

Имеется некоторая последовательность управляющих символов (команд), закодированная в двоичной либо другой форме, а также данных, закодированных в той же форме. Команды и данные различаются лишь способом интерпретации. Команды, располагаясь в оперативной памяти в некоторой последовательности и по определенным адресам, образуют программу. В этом случае можно выделить единый алгоритм функционирования любого вычислительного устройства фон-неймановской архитектуры. Упрощенно он выглядит так: 1. Извлечь команду из оперативной памяти; 2. Извлечь из памяти данные (операнды), требуемые для реализации команды; 3. Выполнить команду; 4. При необходимости сохранить результаты в памяти; 5. Вернуться к шагу 1.

Читайте также:
Программы для отелей и гостиниц отзывы

ПРОЦЕДУРНОЕ ПРОГРАММИРОВАНИЕ

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

Типы операндов: простой, массив, структуры. Типы операторов: присваивания, условных операций, итерации.

Программа, написанная на процедурном языке, явно указывает способ получения результата, но не сам результат. Существует большое число процедурных языков программирования. Это —Algol, Fortran, Pascal, С, Basic и др.

Функциональное программирование. Эти языки имеют хорошо проработанное математическое основание — λ–исчисление. Функциональный стиль программирования основан только на использовании процедур-функций (в отличие от процедурных языков, где основным понятием является процедура-оператор). Роль переменных играют параметры функций, присваивание значений осуществляется только при задании аргументов в обращениях к функциям. Вместо последовательности операторов выполняется поочередное вычисление аргументов при вызове функции, вместо условных операторов – условная композиция выражений, циклическая композиция операторов заменяется на рекурсию

Программы, написанные в функциональном стиле, обычно оказываются более короткими, обозримыми и простыми для понимания. Первым языком функционального программирования является созданный в начале 1960-х годов язык ЛИСП (LISP — LISt Processing). В отличии от процедурных языков, где действия в основном выражаются в виде повтора какого-либо фрагмента программы несколько раз, в ЛИСП вычисления производятся с помощью рекурсии – вызова функцией самой себя, а основная структура данных – это список

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

Логическое программирование. Идея непосредственного применения логики в качестве средства программирования возникла практически одновременно с первыми процедурными языками. Главная особенность такого подхода состоит в том, что сведения о задаче и предположения, достаточные для её решения формулируются в виде логических аксиом.

Читайте также:
Виды автоматизированных бухгалтерских программ

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

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

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

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

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

· конструктор, создание и инициализация объекта;

· деструктор, разрушающий объект;

· модификатор, изменяющий состояние объекта;

· селектор для доступа к переменным объекта без их изменения;

· итератор для доступа к содержанию объекта по частям в определенной последовательности.

Основные идеи объектно-ориентированного подхода опираются на следующие положения:

· Программа представляет собой модель некоторого реального процесса, части реального мира.

· Модель реального мира или его части может быть описана как совокупность взаимодействующих между собой объектов.

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

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

· Объекты, описанные одним и тем же набором параметров и способные выполнять один и тот же набор действий, представляют собой класс однотипных объектов.

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

Наиболее распространенными в настоящее время являются системы программирования Microsoft C++, Microsoft Visual C++ и системы программирования фирмы Borland International.

Читайте также:
Кто был ведущим программы окна

Объем памяти — важная характеристика компьютера, она влияет на скорость работы компьютера и на работоспособность программ. Часть ОЗУ, называемая «видеопамять», содержит данные, соответствующие текущему изображению на экране.

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

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

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

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

Источник: poisk-ru.ru

Чем структурное программирование отличается от процедурного?

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

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

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

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

Источник: ru.stackoverflow.com

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru