Структурное программирование – методология и технология
разработки программных комплексов, основанная на принципах мо-
дульного
программирования
и
программирования
"сверху-вниз".
Алгоритм задачи представляется как композиция
только трѐхбазовых типов алгоритмов: линейных, ветвлений и циклов. Эти кон-
струкции могут быть соединены или вложены друг в друга произ-
вольным образом, но никаких других способов управления последо-
вательностью
выполнения
операций
не
используется.
Основные языки программирования, использующие структур-
ную
технологию:
-
Ада, Си – языки общего назначения;
-
Бейсик (до Visual Basic);
-
КОБОЛ – для экономических задач (много операторов, об- легчающих манипуляции с файлами);
-
Фортран, Паскаль, ПЛ/1 – для вычислительных задач (удоб- ные средства для записи формул).
-
Основные понятия объектно-ориентированного программирования
Объектно-ориентированное программирование (ООП) при-
меняют при программировании разных манипуляций над объектами.
Например, при составлении программ управления размерами и поло-
жением
окон
Windows,
листами
книги
Excel,
файлами
и
т.
п.
Основныетерминыипонятияобъектно-ориентированногопрограммирования:
-
моделируемая система состоит из объектов. Объекты могут быть вложены друг в друга, например, объект «лист Excel» – это часть объекта «книга Excel»;
-
объекты каким-то образом взаимодействуют между собой;
-
каждый объект характеризуется своим состоянием и поведе- нием. Состояние объекта задаѐтся значением некоторых его свойств. Например, объекты типа «книга Excel» имеют свойства: имя, размер, открыта/закрыта и т. п. Действия, которые можно выполнять над объектом или которые он сам может выполнять, называются мето-дами. Например, объект типа «книга Excel» можно открыть, закрыть, переименовать, перенести в другую папку и т. п. После каждого дей- ствия изменяются какие-то свойства объекта.
Класс объектов – шаблон, определяющий основные свойства, методы и события группы объектов, объединяемых в класс. Это же можно сформулировать другими словами: это множество объектов, имеющих общее поведение и общую структуру.
События – ситуации, в которых надо программировать какой- то отклик объекта. Например, что делать, когда над гиперссылкой или кнопкой расположен курсор, когда щѐлкает курсор, когда проис- ходит двойной щелчок.
Наследование – порождает иерархию объектов. Оно может быть смоделировано с помощью таксонометрической классификаци- онной схемы (иерархии). В основном классе (родителе) можно вы- делять подклассы (потомки). Они состоят из объектов, входящих в класс родителя и обладают наряду со всеми его характеристиками дополнительной группой свойств, которых у других объектов класса- родителя нет. Пример: класс-родитель – окна Windows, подклассы – диалоговые окна, окна документов, окна папок. Подклассы окон до- кументов – окна документов Word, окна документов Excel, окна до- кументов PowerPoint и т. п.
Инкапсуляция – сокрытие деталей программ, создающих и манипулирующих объектами. Создание объектов, манипулирование ими осуществляется программами языка ООП. Программист указы- вает в своей программе только то, что и с каким объектом нужно сде- лать, или какой результат нужно получить. То есть объекты рассмат- риваются как «чѐрные ящики». Такой способ упрощает разработку программы и еѐ модификацию.
Полиморфизм –.для выполнения одного и того же типа дейст- вий в разных подклассах одного класса можно использовать одно и то же имя, хотя это действие реализуется разными внутренними ме- тодами (программами). Например, действие «трансформация объек- та», которое программист обозначает этим термином для фигур
, вхо-
дящих в разные подклассы класса «геометрические фигуры», выпол-
няется по разным формулам, следовательно, его выполняют разные
программы
(методы).
Другими
словами
это
означает
способность
объектов выбирать внутренний метод самостоятельно, исходя из типа
их
данных.
Основные
языки
ООП:
-
С++ – для системного программирования;
-
Java, JavaScript, PHP, Perl – для разработки сценариев в ди- намических Veb-страницах;
-
Simula – первый язык, построенный по принципам ООП;
-
Delphi (Object Pascal) – удобен для программирования баз данных.
-
1 ... 30 31 32 33 34 35 36 37 ... 45
-
Постановказадачи:
-
сбор информации о задаче;
-
описание исходных данных и конечных целей;
-
определение формы выдачи результатов.
-
Анализиисследованиемоделизадачи:
-
анализ существующих аналогов;
-
анализ технических и программных средств;
-
разработка математической модели;
-
разработка структур данных.
-
Разработкаалгоритма:
-
выбор метода проектирования алгоритма;
т.
п.
-
выбор формы записи алгоритма (блок-схема, псевдокод и
-
выбор тестов и метода тестирования;
-
проектирование алгоритма.
-
Программирование:
-
выбор языка программирования;
-
уточнение способа организации данных;
-
запись алгоритма на выбранном языке.
-
Отладкаитестирование:
-
синтаксическаяотладка: исправление ошибок в форме за-
писи
конструкций;
-
отладка семантики и логической структуры: семантика – система правил истолкования отдельных конструкций языка, напри- мер проверка правильности организации циклов, ветвлений и т. п., соответствия типов переменных в выражениях, логическая структу-ра – правильная последовательность обработки данных;
-
тестовые расчѐты и анализ результатов тестирования;
-
совершенствование программы.
Деятельность, направленная на исправление ошибок в программной
системе, называется
отладкой.
Тестирование – прогон отлаженной
программы на эталонных вариантах исходных данных, для которых
заранее
известны результаты
(см.
п.5.3.).
-
Анализ результатов тестирования и, если нужно, уточне- ние модели и повторение п. п. 2 – 5.
-
Сопровождение программы: составление документации по математической модели, алгоритму, программе, набору тестов, ис- пользованию готовой программы и т. п.
-
Вопросы для самопроверки по теме 7
Задание№
1.
Выберите
правильные
варианты:
при
проектировании
программного
обеспечения
используют
подходы:
-
сверху-вниз
-
снизу-вверх
-
слева-направо
-
справа-налево
Задание№
2.
Ошибка
в
форме
записи
программы –
этоошибка.
Задание № 3. Ошибка в последовательности обработки данных, орга-
низации циклов, ветвлений, соответствий типов переменных, исполь-
зуемых
в
выражениях,
–
это
ошибка.
Задание № 4. Укажите типовые алгоритмические структуры, исполь-
зуемые
при структурном
программировании.
Задание № 5. Укажите различие между формальными и фактически-
ми
параметрами подпрограмм.
Задание № 6. Укажите, какие из приведенных терминов являются ба-
зовыми понятиями в объектно-ориентированном подходе к програм-
мированию:
-
объект
-
свойство
-
метод обработки
-
инструкции
-
данные
-
модель
-
событие
-
класс объектов
Задание№
7.
Какой
методологии
программирования
присуще
поня-
тие
"Иерархия
классов?
Задание№
8.
.
Набор
операторов,
выполняющих
заданное
действие
и
не
зависящих
от
других
частей
исходного
кода,
–
это.
Задание№
9.
Выделите
принципы,
которые
можно
использовать
при
разработке
программ
методом
структурного
программирования:
-
принцип модульной разработки сложных программ;
-
использование композиции трѐх базовых структур при запи- си алгоритма - линейных, ветвлений и циклов;
-
использование композиции двух базовых структур при запи- си алгоритма - ветвлений и циклов;
-
использование большого количества подпрограмм.
Задание № 10. Объясните смысл понятий, используемых в методоло-
гии объектно-ориентированного программирования: объект, класс, ме-
тод,
наследование,
полиморфизм,
инкапсуляция.
-
1 ... 31 32 33 34 35 36 37 38 ... 45