Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Эволюция технологий программирования. Структурное программирование. Объектно-ориентированное программирование. (ТП)





Эволюция технологий программирования.

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

Языки этого поколения (Фортран, Алгол, PL/1) являются процедурными и поддерживают процедурный стиль программирования.

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

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

С помощью таких языков решались в основном вычислительные задачи. Основными пользователями ЭВМ были физики, математики и инженеры.

Применение ЭВМ для решения задач искусственного интеллекта и обработки текстов привело к созданию функциональных языков, в частности языка Лисп. Функциональное программирование представляет собой подход, при котором алгоритм описывается как алгоритмически вычислимая функция. Описания программ-функций осуществляется в терминах функциональных определений, а основной операцией, ре6ализующей вычисления функциональной программы, является применение функции к аргументу.

Были разработаны также логические языки программирования – для поддержания логического стиля программирования (ПРОЛОГ). Логическое программирование использует точку зрения на алгоритмы, выработанную в математической логике. Данные логических программ представлены фактами, играющими роль специальных аксиом соответствующей предметной области, а алгоритмы описываются в виде совокупности т.н. правил логического вывода. В 60-е годы многими теоретиками и практиками было осозна­но, что только лишь создание новых, более совершенных языков программирования не может решить все проблемы разработки программ.

Работы по организации процесса тестирования начали появ­ляться в конце 60-х годов. Примерно к середине 70-х годов были заложены основы организации тестирования, которыми в основ­ном пользуются в настоящее время.

В 70 - 80-х годах бурно развивалась теория доказательства правильности программ. Она основывалась на том, что текст программы задает все, что она делает. Утверждалось, что, имея формальное описание семантики всех конструкций языка, можно на основе анализа текста строго математически вывести заключение о правильности или неправильности программы.

Одной из наиболее широко применяемых методик программи­рования стало структурное программирование, которое поддерживается процедурными языками.В 70-е годы была сформулирована модель процесса разработки. Эта модель выделяла несколько фаз процесса: анализ, кодирование, тестирование, внедрение. Каждая последующая ста­дия «вытекает» из предыдущей, поэтому и модель получила назва­ние каскадной.

Структурный подход к программированию

Структурное программирова­ние - это первая законченная методология программирования. Структурное программирование оказало огромное влияние на раз­витие программирования. Этот метод применялся очень широко в практическом программировании и по сей день не поте­рял своего значения для определенного класса задач.

Структурный подход базируется на двух основополагающих принципах:

1 - это использование процедурных языков про­граммирования (Алгол, Паскаль, СИ);

2 - это последовательная декомпозиция ал­горитма решения задачи сверху вниз.

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

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

Основные положения объектной модели

Рассмотрим 3 компонента ОО подхода:

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

Здесь можно выделить 3 части:

в качестве базовых элементов используются объекты, а не алгоритмы;

каждый объект является экземпляром какого- то определенного класса;

классы организованы иерархически.

Программам будет объектно-ориентированной только при соблюдении всех 3 требований.

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

Здесь содержатся 2 важные части:

ОО проектирование основывается на объектно-ориентированной декомпозиции;

Многообразие приемов представления моделей.

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

 







Дата добавления: 2015-04-19; просмотров: 1903. Нарушение авторских прав; Мы поможем в написании вашей работы!




Обзор компонентов Multisim Компоненты – это основа любой схемы, это все элементы, из которых она состоит. Multisim оперирует с двумя категориями...


Композиция из абстрактных геометрических фигур Данная композиция состоит из линий, штриховки, абстрактных геометрических форм...


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


ТЕОРЕТИЧЕСКАЯ МЕХАНИКА Статика является частью теоретической механики, изучающей условия, при ко­торых тело находится под действием заданной системы сил...

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

БИОХИМИЯ ТКАНЕЙ ЗУБА В составе зуба выделяют минерализованные и неминерализованные ткани...

Типология суицида. Феномен суицида (самоубийство или попытка самоубийства) чаще всего связывается с представлением о психологическом кризисе личности...

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

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

Случайной величины Плотностью распределения вероятностей непрерывной случайной величины Х называют функцию f(x) – первую производную от функции распределения F(x): Понятие плотность распределения вероятностей случайной величины Х для дискретной величины неприменима...

Studopedia.info - Студопедия - 2014-2025 год . (0.011 сек.) русская версия | украинская версия