презентация по технологиям программирования.pptx
- Количество слайдов: 26
ТЕХНОЛОГИЯ ПРОГРАММИРОВАНИЯ
Технология программирования. Основные понятия и подходы. Программирование — сравнительно молодая и быстро развивающаяся отрасль науки и техники. Опыт ведения реальных разработок и совершенствования, имеющихся программных и технических средств постоянно переосмысливается, в результате чего появляются новые методы, методологии и технологии, которые, в свою очередь, служат основой более современных средств разработки программного обеспечения.
Технология программирования и основные этапы ее развития. n Технологией программирования n Технология программирования представляет собой набор технологических инструкций, включающих: называют совокупность методов и средств, используемых в процессе разработки программного обеспечения. - указание последовательности выполнения технологических операций; - перечисление условий, при которых выполняется та или иная операция; - описания самих операций, где для каждой операции определены исходные данные, результаты, а также инструкции, нормативы, стандарты, критерии и методы оценки и т. п.
Структура описания технической операции Методические материалы инструкции, нормативы и стандарты критерии оценки результатов Исходные данные в стандартном представлении (документы, рабочие материалы, результаты предыдущей операции) Результаты в стандартном представлении Исполнители, программные и технические средства Рис. 1. 1
Виды технологий программирования: n Технологии, используемые на конкретных этапах разработки или для решения отдельных задач этих этапов. В основе лежит ограниченно применимый метод, позволяющий решить конкретную задачу. n Технологии, охватывающие несколько этапов или весь процесс разработки. В основе лежит базовый метод или подход, определяющий совокупность методов, используемых на разных этапах разработки, или методологию.
Основные этапы развития программирования, как науки I этап – «Стихийное» программирование. Первые программы имели простейшую структуру. Они состояли из собственно программы на машинном языке и обрабатываемых ею данных.
Основные этапы развития программирования, как науки I этап – «Стихийное» программирование. Появление ассемблеров позволило вместо двоичных или 16 -ричных кодов использовать символические имена данных и мнемоники кодов операций. С появлением языков программирования высокого уровня, таких, как FORTRAN и ALGOL, снизился уровень детализации операций. Революционным было появление в языках средств, позволяющих оперировать подпрограммами.
Основные этапы развития программирования, как науки I этап – «Стихийное» программирование. Типичная программа того времени состояла из n n n основной программы, области глобальных данных набора подпрограмм (в основном библиотечных), выполняющих обработку всех данных или их части.
Основные этапы развития программирования, как науки I этап – «Стихийное» программирование. Использовалась разработка «снизувверх» - подход, при котором вначале проектировали и реализовывали сравнительно простые подпрограммы, из которых затем пытались построить сложную программу.
Основные этапы развития программирования, как науки II этап – Структурный программированию. подход к Структурный подход к программированию – это совокупность рекомендуемых технологических приемов, охватывающих выполнение всех этапов разработки программного обеспечения. В его основе лежит декомпозиция (разбиение на части) сложных систем с целью последующей реализации в виде отдельных небольших (до 40 50 операторов) подпрограмм. С появлением других принципов декомпозиции (объектного, логического и т. д. ) данный способ получил название процедурной декомпозиции.
Основные этапы развития программирования, как науки II этап – Структурный подход к программированию. n Технологию модульного программирования поддерживают современные версии языков Pascal и С (С++), языки Ада и Modula.
Основные этапы развития программирования, как науки III этап – Объектный программированию. подход к Объектно-ориентированное программирование – это технология создания сложного программного обеспечения, основанная на представлении программы в виде совокупности объектов, каждый из которых является экземпляром определенного типа (класса), а классы образуют иерархию с наследованием свойств. Взаимодействие программных объектов в такой системе осуществляется путем передачи сообщений.
Архитектура программы при объектноориентированном программировании
Основные этапы развития программирования, как науки III этап – Объектный программированию. подход к Основным достоинством объектно-ориентированного программирования по сравнению с модульным программированием является «более естественная» декомпозиция программного обеспечения. n n Это приводит к более полной локализации данных и интегрированию их с подпрограммами обработки. Объектный подход предлагает новые способы организации программ, основанные на механизмах: наследования, полиморфизма, композиции, наполнения.
Основные этапы развития программирования, как науки III этап – Объектный программированию. подход к Среды, поддерживающие визуальное программирование: n n n Delphi С++ Builder Visual С++. Результатом визуального проектирования является заготовка будущей программы, в которую уже внесены соответствующие коды.
Основные этапы развития программирования, как науки III этап – Объектный программированию. n n подход к Недостатки объектного подхода к программированию: отсутствие стандартов компоновки двоичных результатов компиляции объектов в единое целое; изменение реализации одного из программных объектов, как минимум, связано с перекомпиляцией соответствующего модуля и перекомпоновкой всего программного обеспечения.
Основные этапы развития программирования, как науки IV этап – Компонентный подход и CASEтехнологии. Компонентный подход предполагает построение программного обеспечения из отдельных компонентов физически отдельно существующих частей программного обеспечения, которые взаимодействуют между собой через стандартизованные двоичные интерфейсы. Компонентный подход лежит в основе технологий, разработанных на базе COM, и технологии создания распределенных приложений CORBA.
Основные этапы развития программирования, как науки IV этап – Компонентный подход и CASEтехнологии. Технология СОМ определяет общую парадигму взаимодействия программ любых типов: n n n библиотек, приложений, операционной системы.
Основные этапы развития программирования, как науки IV этап – Компонентный подход и CASEтехнологии. n n Объекты СОМ: - включают поля и методы; - могут реализовывать несколько интерфейсов. Классы СОМ: поддерживают наследование интерфейсов, но не поддерживают наследования реализации.
Основные этапы развития программирования, как науки IV этап – Компонентный подход и CASEтехнологии. Типы серверов: n n n внутренний сервер; локальный сервер; удаленный сервер. Взаимодействие клиента и сервера обеспечивается базовыми механизмами СОМ или DCOM. При использовании локальных и удаленных серверов в адресном пространстве клиента создается proxyобъект - заместитель объекта СОМ, а в адресном пространстве сервера СОМ заглушка, соответствующая клиенту.
Блочно - иерархический подход к созданию сложных систем Большинство сложных систем имеет иерархическую внутреннюю структуру. Это связано с тем, что обычно связи элементов сложных систем различны как по типу, так и по силе, что и позволяет рассматривать эти системы как некоторую совокупность взаимозависимых подсистем.
Блочно - иерархический подход к созданию сложных систем Каждую подсистему можно разделить на подсистемы. n n Иерархия «целое-часть» - это типы подсистем по-разному скомбинированные и организованные. Иерархия «простое-сложное» - это когда любая функционирующая система является результатом развития более простой системы.
Блочно - иерархический подход к созданию сложных систем Части объектов блочно-иерархического подхода: Процесс разбиения сложного объекта на сравнительно независимые части получил название – декомпозиции. n Пошаговая детализация – при создании очень сложных объектов процесс декомпозиции выполняется многократно. n
Блочно - иерархический подход к созданию сложных систем Результат декомпозиции обычно представляют в виде схемы иерархии. Чем больше блок, тем более абстрактным должно быть его описание.
Блочно - иерархический подход к созданию сложных систем n Совокупность языков моделей, постановок задач, методов описаний некоторого иерархического уровня принято называть уровнем проектирования. n Различные взгляды на объект проектирования принято называть аспектами проектирования.
Блочно - иерархический подход к созданию сложных систем n n Использование блочно - иерархического подхода: упрощает проверку работоспособности, как системы в целом, так и отдельных блоков; обеспечивает возможность модернизации систем. Структурный подход учитывает только свойства иерархии «целое-часть» , а объектный - использует еще и свойства иерархии «простое-сложное» .