Третий этап – объектный подход к программированию (с середины 80-х до конца 90-х годов ХХ в.)

Содержание

Введение…………………………………………………………………………………………….…….3

Глава 1. Технология программирования…………………………….....................4

1.1 Технологии и этапы развития……………………………....…4

1.2 Первый этап…………………………………………..………..5

1.3 Второй этап…………………………….....................................6

1.4 Третий этап ...............................................................................7

1.5 Четвёртый этап .........................................................................8

Глава 2. Программирование...................................................................9

2.1 стихийное программирование………………………………….…..…..11

2.2 Второй этап - структурный подход к программированию (60-70-е годы XX в.)……………………………………………………………………….…...14

2.3 Третий этап - объектный подход к программированию (с середины 80-х до конца 90-х годов XX в.)………………………………….…………..16

Глава 3. Технология СОМ………………………………………………..……….20

Заключение………………………………………………………………………………..….……...25

Список используемой литературы…………………………………..…………………..26

Введение

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


Технология программирования и этапы развития

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

·
перечисление условий, при которых выполняется та или иная операция;

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

Кроме набора операций и их последовательности, технология определяет способ описания проектируемой системы (модели), используемой на конкретном этапе разработки.

Различают технологии:


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

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

^ Первый этап – «стихийное» программирование. (С момента появления первых вычислительных машин до середины 60-х годов ХХ в.) Практически отсутствовали сформулированные технологии, программирование практически было искусством. Первые программы имели простейшую структуру, состояли из собственно программы на машинном языке и обрабатываемых ею данных. Сложность программ в машинных кодах ограничивалась способностью программиста одновременно мысленно отслеживать последовательность выполняемых операций и местонахождение данных при программировании.

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

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

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

Типичная программа того времени состояла из основной программы, области глобальных данных и набора подпрограмм.

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

подпрограммой.


Чтобы сократить количество ошибок предложено использовать локальные данные в подпрограммах.

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

В начале 60-х годов ХХ в. – «кризис программирования». Разрабатываемый проект устаревал раньше, чем был готов к внедрению, увеличивалась его стоимость. Многие проекты оставались незавершенными. Все это было вызвано несовершенством технологии программирования. В отсутствии четких моделей описания подпрограмм и методов их проектирования интерфейсы получались сложными, при сборке программного продукта большое количество ошибок согласования. Процесс тестирования занимал более 80% времени разработки. Встает вопрос разработки технологии создания сложных программных продуктов, снижающий вероятность ошибок проектирования.

^ Второй этап – структурный подход к программированию (60 – 70-е годы ХХ в.)

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

Структурный подход – представление задачи в виде иерархии подзадач

простейшей структуры. Проектирование «сверху-вниз». Вводились ограничения на конструкции алгоритмов, рекомендовались формальные модели их описания, специальный метод проектирования алгоритмов – метод пошаговой детализации.

Поддержка принципы структурного программирования заложена в основу процедурных языков программирования (PL-1, ALGOL-68, Pascal, C).

Развитие структурирования данных. В языках появилась возможность определения пользовательских типов данных. Начала развиваться технология модульного программирования.

^ Модульное программирование предполагает выделение групп подпрограмм, использующих одни и те же глобальные данные в отдельно компилируемые модули. Эту технологию поддерживают современные версии языков Pascal и C (C++), языки Ада и Modula.

Структурный подход в сочетании с модульным программированием позволяет получать достаточно надежные программы, размер которых не превышает 100000 операторов. При увеличении размера программы возрастает сложность межмодульных интерфейсов. Для разработки программного обеспечения большого объема предложено использовать объектный подход.

Третий этап – объектный подход к программированию (с середины 80-х до конца 90-х годов ХХ в.).

^ Объектно-ориентированное программирование – технология создания сложного программного обеспечения, основанная на представлении

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

Поддерживается в языках программирования Pascal, C++, Modula, Java.Объектный подход предлагает новые способы организации программ, основанные на механизмах наследования, полиморфизма, композиции, наполнения. Эти механизмы позволяют конструировать сложные объекты из сравнительно простых. Создаются среды, поддерживающие визуальное программирование (Delphi, Visual C++).

Наши рекомендации