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

Автор: Пользователь скрыл имя, 18 Сентября 2011 в 21:41, курсовая работа

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

Microsoft Visual Basic — средство разработки программного обеспечения, разрабатываемое корпорацией Microsoft и включающее язык программирования и среду разработки. Язык Visual Basic унаследовал дух, стиль и отчасти синтаксис своего предка — языка Бейсик, у которого есть немало диалектов. В то же время Visual Basic сочетает в себе процедуры и элементы объектно-ориентированных и компонентно-ориентированных языков программирования. Среда разработки VB включает инструменты для визуального конструирования пользовательского интерфейса.

Оглавление

ВВЕДЕНИЕ 2
1.ЗАДАЧА 1 6
2. ЗАДАЧА 2 12
3. ЗАДАЧА 3 15
4. ОБЪЕКТНО-ОРИЕНТИРОВАННЫЙ ПОДХОД 18
5. ОБЪЕКТ МОДЕЛЬ 20
5.1 Абстрагирование 20
5.2 Инкапсуляция 21
5.3 Модульность 22
5.4 Иерархичность 25
5.5 Типизация 26
5.6 Паралеллизм 27
5.7 Сохраняемость 27
6. ОБЪЕКТ 29
6.1 Состояние 29
6.2 Поведение 29
6.3 Идентичность 30
6.4 Отношения между объектами 30
7. КЛАССЫ 31
7.1 Ассоциация; 31
7.2 Агрегация; 32
7.3 Обобщение; 33
7.4 Зависимость; 34
7.5 Инстанцирование. 35
ЗАКЛЮЧЕНИЕ 36
ЛИТЕРАТУРА 37

Файлы: 1 файл

Курсовой информатика.doc

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

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

      Обобщение и типизация

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

     При определении класса его суперкласс можно объявить public. В этом случае открытые и защищенные члены суперкласса становятся открытыми и защищенными членами подкласса. Таким образом, подкласс считается также и подтипом, то есть обязуется выполнять все обязательства суперкласса. В частности, он обеспечивает совместимое с суперклассом подмножество интерфейса и обладает неразличимым с точки зрения клиентов суперкласса поведением. Если при определении класса объявить его суперкласс как private, это будет означать, что, наследуя структуру и поведение суперкласса, подкласс уже не будет его подтипом. Открытые и защищенные члены суперкласса станут закрытыми членами подкласса, и, следовательно, они будут недоступны подклассам более низкого уровня. В этом случае подкласс и суперкласс обладают несовместимыми интерфейсами с точки зрения клиента.

     Если  объявить суперкласс protected, то открытые и защищенные элементы такого суперкласса станут защищенными элементами подкласса. Однако, с точки зрения клиента интерфейсы класса и суперкласса несовместимы.

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

       Множественное наследование

     Рассмотрим  две проблемы, которые возникают  при множественном наследовании: конфликт имен между суперклассами  и повторное наследование.

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

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

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

       Зависимость

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

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

       Инстанцирование

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

     ЗАКЛЮЧЕНИЕ

     Приведем  основные определения. Программа — завершенный продукт, пригодный для запуска своим автором на системе, на которой он был разработан. Программный продукт — программа, которую любой человек может запускать, тестировать, исправлять и развивать. Такая программа должна быть написана в обобщенном стиле, тщательно оттестирована и сопровождена подробной документацией. (С учетом модной в настоящее время концепции авторских прав, здесь необходимо уточнить – любой человек, имеющий разрешение работать с исходными текстами программ) Программный комплекс — набор взаимодействующих программ, согласованных по функциям и форматам, точно определенным интерфейсам, и вкупе составляющих полное средство для решения больших задач. Жизненный цикл программного обеспечения – это весь период его разработки и эксплуатации, начиная с момента возникновения замысла и заканчивая прекращением ее использования. Существует простейшее представление жизненного цикла, которое включает следующие стадии:

      анализ;

     проектирование;

     программирование;

     тестирование  и отладка;

     эксплуатация.

     Жизненный цикл программного обеспечения тесно связан с технологиями программирования.

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

 

ЛИТЕРАТУРА 

1) Бадд, Т. Объектно-ориентированное программирование в действии/Т. Бадд. – СПб.: "Питер", 1997.

2) Буч, Г. Объектно-ориентированное проектирование с примерами применения/Г. Буч. – М.: Конкорд, 1992.

3) Пол, А. Объектно-ориентированное программирование/А. Пол. – М.: "Издательство Бином", 1999.

4) Романовский, К.Ю. Объектно-ориентированный подход / К.Ю. Романовский С.В. Кузнецов, Д.В. Кознов. – CПб: Изд-во С.-Петербургского ун-та, 1999.

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