Разделы презентаций


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

Содержание

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

Слайды и текст этой презентации

Слайд 1Структурное программирование и объектно-ориентированное программирование

Структурное программирование  и объектно-ориентированное программирование

Слайд 2Структурное программирование
Структу́рное программи́рование — методология разработки программного обеспечения, в основе

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

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

Слайд 3В соответствии с данной методологией
Любая программа представляет собой структуру, построенную

из трёх типов базовых конструкций:
последовательное исполнение — однократное выполнение

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

Слайд 4Повторяющиеся фрагменты программы (либо не повторяющиеся, но представляющие собой логически

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

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

Слайд 5Разработка программы ведётся пошагово, методом «сверху вниз».
Сначала пишется текст основной

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

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

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

подвергся оператор GOTO (оператор безусловного перехода), имевшийся тогда почти во

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

Слайд 7 некоторые достоинства структурного программирования:
1. Структурное программирование позволяет значительно сократить

число вариантов построения программы, что значительно снижает сложность программы и,

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

Слайд 8Объектно-ориентированное программирование
Объе́ктно-ориенти́рованное программи́рование (ООП) — стиль программирования, в котором основными

концепциями являются понятия объектов и классов (либо, в менее известном

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

Слайд 9Языки ООП
Языки объектного программирования принято делить на объектные, в которых

существуют классы и объекты, и объектно-ориентированные, в которых программист может

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

Слайд 10Объектное и объектно-ориентированное программирование возникло в результате развития идеологии процедурного

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

не связаны. Кроме того, в современном объектно-ориентированном программировании часто большое значение имеют понятия события (так называемое событийно-ориентированное программирование) и компонента (компонентное программирование).
Объектно-ориентированное программирование в настоящее время является абсолютным лидером в области прикладного программирования (языки Java, C#, C++, JavaScript, ActionScript и др.).
Объектное и объектно-ориентированное программирование возникло в результате развития идеологии процедурного программирования, где данные и подпрограммы (процедуры, функции)

Слайд 11Основные понятия

Абстракция данных
Объекты представляют собою упрощенное, идеализированное описание реальных

сущностей предметной области. Если соответствующие модели адекватны решаемой задаче, то

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

Слайд 12Основные понятия
Наследование
Наследованием называется возможность порождать один класс от другого

с сохранением всех свойств и методов класса-предка (прародителя, иногда его

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

Слайд 13Основные концепции
Система состоит из объектов
Объекты некоторым образом взаимодействуют между собой
Каждый

объект характеризуется своим состоянием и поведением
Состояние объекта задаётся значением полей

данных
Поведение объекта задаётся методами
Основные концепцииСистема состоит из объектовОбъекты некоторым образом взаимодействуют между собойКаждый объект характеризуется своим состоянием и поведениемСостояние объекта

Слайд 14Традиционный подход
Данный подход реализован в огромном количестве языков программирования; из

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

влияние оказали языки C++ и Java. Очень часто под объектно-ориентированным подходом понимаются именно модели, реализованные в этих языках.
Традиционный подходДанный подход реализован в огромном количестве языков программирования; из промышленно используемых языков программирования на развитие идей

Слайд 15Перевод числа из шестнадцатеричной системы счисления в двоичную
Для перевода многозначного

двоичного числа в шестнадцатеричную систему нужно разбить его на тетрады

справа налево и заменить каждую тетраду соответствующей шестнадцатеричной цифрой.
Например:
101101000112=0101 1010 0011=5A316

Перевод числа из восьмеричной системы счисления в двоичную
Для перевода многозначного двоичного числа в восьмеричную систему нужно разбить его на триады справа налево и заменить каждую триаду соответствующей шестнадцатеричной цифрой.
08 = 0002
18 = 0012
28 = 0102
38 = 0112
48 = 1002
58 = 1012
68 = 1102
78 = 1112
Перевод числа из шестнадцатеричной системы счисления в двоичнуюДля перевода многозначного двоичного числа в шестнадцатеричную систему нужно разбить

Обратная связь

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

Email: Нажмите что бы посмотреть 

Что такое TheSlide.ru?

Это сайт презентации, докладов, проектов в PowerPoint. Здесь удобно  хранить и делиться своими презентациями с другими пользователями.


Для правообладателей

Яндекс.Метрика