Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
27
Добавлен:
26.03.2016
Размер:
535.25 Кб
Скачать

Тема 20 Понятие о структурном программировании. Модульный принцип программирования. Подпрограммы. Принципы проектирования программ "сверху-вниз" и "снизу-вверх". Объектно-ориентированное программирование

Модульное программирование

Согласно принципу модульности программа разбивается на отдельные смысловые части (модули). Модуль – это функционально законченная часть программы. Например, модуль вычисления

определителя матрицы; модуль нахождения суммы элементов ряда.

Каждый модуль программируется отдельно, а затем модули объединяются в единую программу. Модуль на языке программирования – это функция или процедура.

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

Является дальнейшим развитием модульного программирования. Основой технологии метода структурного программирования являются:

начало

1) Принцип модульной разработки программ 2) Использование при разработке модуля композиции трех базовых структур (элементов):

ввод исходных данных

А) линейной (структуры следования)

действие 1

действие 2

действие N

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

вывод результатов

Б) ветвления (структуры «если-то-иначе»)

Да конец Н е т

условие

действие 1

 

 

 

действие 2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

В)циклической (структуры «цикл пока»)

Нет

условие

Да

Действия тело цикла

Структурное программирование делает текст программы более понятным – алгоритм решения ясно виден из исходного текста.

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

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

Программирование сверху вниз

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

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

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

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

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

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

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

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

Основные принципы ООП:

1)Инкапсуляция - объединение данных и свойственных им процедур обработки в одном объекте, детальная реализация которых остается скрытой для пользователей.

2)Наследование предусматривает создание новых классов на базе существующих и позволяет классупотомку иметь (наследовать) все свойства класса-родителя.

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

4)Модульность — объекты заключают в себе полное определение их характеристик, никакие определения методов и свойств объекта не должны располагаться вне его, это делает возможным свободное копирование и внедрение одного объекта в другие.

К языкам ООП относятся:

- C++, - Java,

Объектно-ориентированные системы визуального проектирования:

- Visual Basic, - Delphi,

- C++ Builder, - Visual C++,

- Turbo Vision.