Объектно-ориентированные технологии программирования прикладных программных средств. Определение классов

Автор: Пользователь скрыл имя, 19 Февраля 2012 в 17:07, реферат

Краткое описание

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

Оглавление

Объектно-ориентированная разработка программ 5
Объектно-ориентированные языки программирования 6
Первая фаза жизненного цикла - анализ требований и предварительное проектирование системы. Объектно-ориентированное моделирование. 7
Вторая фаза жизненного цикла - конструирование системы 8
Третья фаза жизненного цикла - реализация объектно-ориентированного проекта 9
Определение классов 9
Список литературы: 11

Файлы: 1 файл

Сам раб Дас тех.doc

— 99.50 Кб (Скачать)

    УЗБЕКСКОЕ АГЕНТСТВО СВЯЗИ  И ИНФОРМАТИЗАЦИИ

    ТАШКЕНТСКИЙ УНИВЕРСИТЕТ ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ 
 
 
 
 
 
 
 
 
 

Самостоятельная работа 

Тема: Объектно-ориентированные технологии программирования

прикладных  программных средств. Определение  классов. 
 
 

                                                           Сдала: 252 -10, Розыходжаева Д.А.

                        (Ф.И.О.)

                                                    Принял:___________  Камилов М.М.

                                                                                            (подпись)               (Ф.И.О.)

                                                           Дата защиты и балл “__________”, ___________

                               (число)      (балл) 

Ташкент - 2011

 

Оглавление 
 

 

Основные понятия  объектно-ориентированного подхода

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

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

Рис. 1. Семантика (смысл программы с точки зрения выполняющего ее компьютера) и прагматика (смысл программы с точки зрения ее пользователей)

Модель содержит не все признаки и свойства представляемого  ею предмета (понятия), а только те, которые  существенны для разрабатываемой программной системы. Тем самым модель "беднее", а, следовательно, проще представляемого ею предмета (понятия). Но главное даже не в этом, а в том, что модель есть формальная конструкция: формальный характер моделей позволяет определить формальные зависимости между ними и формальные операции над ними. Это упрощает как разработку и изучение (анализ) моделей, так и их реализацию на компьютере. В частности, формальный характер моделей позволяет получить формальную модель разрабатываемой программной системы как композицию формальных моделей ее компонентов.

Таким образом, объектно-ориентированный подход помогает справиться с такими сложными проблемами, как 

  • уменьшение сложности программного обеспечения;
  • повышение надежности программного обеспечения;
  • обеспечение возможности модификации отдельных компонентов программного обеспечения без изменения остальных его компонентов;
  • обеспечение возможности повторного использования отдельных компонентов программного обеспечения.

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

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

Рис.2. Жизненный цикл программной  системы

Объектно-ориентированный  подход имеет два аспекта:

  • объектно-ориентированная разработка программного обеспечения;
  • объектно-ориентированная реализация программного обеспечения.

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

Объектно-ориентированная  разработка программного обеспечения  связана с применением объектно-ориентированных моделей при разработке программных систем и их компонентов. Говоря об объектно-ориентированной разработке, имеется в виду:

  • объектно-ориентированные методологии (технологии) разработки программных систем;
  • инструментальные средства, поддерживающие эти технологии.

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

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

Наиболее  известной является объектно-ориентированная методология OMT (Object Modeling Technique), которая поддерживает две первые стадии жизненного цикла программных систем. Эта методология выбрана для демонстрации объектно-ориентированного подхода, потому что является одной из наиболее продвинутых и популярных объектно-ориентированных методологий. Более того, ее графический язык (система обозначений для диаграмм) получил достаточно широкое распространение и используется в некоторых других объектно-ориентированных методологиях, а также в большинстве публикаций по объектно-ориентированным методологиям. Методология OMT поддерживается системой Paradigm+, одной из наиболее известных инструментальных систем объектно-ориентированной разработки.

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

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

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

Первый объектно-ориентированный язык программирования Simula 67 был разработан в конце 60-х годов в Норвегии. Авторы этого языка очень точно угадали перспективы развития программирования: их язык намного опередил свое время. Однако современники (программисты 60-х годов) оказались не готовы воспринять ценности языка Simula 67, и он не выдержал конкуренции с другими языками программирования (прежде всего, с языком Fortran). Прохладному отношению к языку Simula 67 способствовало и то обстоятельство, что он был реализован как интерпретируемый (а не компилируемый) язык, что было совершенно неприемлемым в 60-е годы, так как интерпретация связана со снижением эффективности (скорости выполнения) программ.

Но достоинства  языка Simula 67 были замечены некоторыми программистами, и в 70-е годы было разработано большое число экспериментальных объектно-ориентированных языков программирования: например, языки CLU, Alphard, Concurrent Pascal и др. Эти языки так и остались экспериментальными, но в результате их исследования были разработаны современные объектно-ориентированные языки программирования: C++, Smalltalk, Eiffel и др.

Наиболее  распространенным объектно-ориентированным  языком программирования безусловно является C++. Свободно распространяемые коммерческие системы программирования C++ существуют практически на любой платформе. Широко известна свободно распространяемая система программирования G++, которая дает возможность всем желающим разобрать достаточно хорошо и подробно прокомментированный исходный текст одного из образцовых компиляторов языка C++. Завершается работа по стандартизации языка C++: последний Draft стандарта C++ выпущен в июне 1995 г. (он доступен по Internet).

Разработка  новых объектно-ориентированных  языков программирования продолжается. С 1995 года стал широко распространяться новый объектно-ориентированный язык программирования Java, ориентированный на сети компьютеров и, прежде всего, на Internet. Синтаксис этого языка напоминает синтаксис языка C++, однако эти языки имеют мало общего. Java интерпретируемый язык: для него определены внутреннее представление (bytecode) и интерпретатор этого представления, которые уже сейчас реализованы на большинстве платформ. Интерпретатор упрощает отладку программ, написанных на языке Java, обеспечивает их переносимость на новые платформы и адаптируемость к новым окружениям. Он позволяет исключить влияние программ, написанных на языке Java, на другие программы и файлы, имеющиеся на новой платформе, и тем самым обеспечить безопасность при выполнении этих программ. Эти свойства языка Java позволяют использовать его как основной язык программирования для программ, распространяемых по сетям (в частности, по сети Internet).

Первая  фаза жизненного цикла - анализ требований и  предварительное  проектирование системы. Объектно-ориентированное моделирование.

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

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

Модели  помогают:

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

В настоящее  время существует несколько технологий объектно-ориентированной разработки прикладных программных систем, в  основе которых лежит построение и интерпретация на компьютере моделей этих систем. Мы подробно ознакомимся с одной из таких технологий - OMT (Object Modeling Techniques). Эта технология оказала большое влияние на других разработчиков объектно-ориентированных технологий, а книга, в которой она описана, является одной из наиболее часто цитируемых книг по данному направлению. Более того, система обозначений (графический язык) для описания моделей, предложенная в этой книге, широко применяется в других технологиях и в статьях по объектно-ориентированной разработке программных систем.

В технологии OMT проектируемая программная система представляется в виде трех взаимосвязанных моделей:

  • объектной модели, которая представляет статические, структурные аспекты системы, в основном связанные с данными;
  • динамической модели, которая описывает работу отдельных частей системы;
  • функциональной модели, в которой рассматривается взаимодействие отдельных частей системы (как по данным, так и по управлению) в процессе ее работы.

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

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

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

Вторая  фаза жизненного цикла - конструирование системы

Информация о работе Объектно-ориентированные технологии программирования прикладных программных средств. Определение классов