Математика

Физика

Химия

Биология

Техника и    технологии

Объектно-ориентированное программирование-Дж. Кьоу 2005. — 238 с.: ил.
Объектно-ориентированное программирование-Дж. Кьоу 2005. — 238 с.: ил.

— СПб.: Питер,
Дж. Кьоу, М. Джеанини
Объектно-ориентированное программирование. Учебный курс.
2005. — 238 с.: ил.
ISBN 5-469-00462-7
Написанная простым и понятным языком, эта книга поможет вам сделать первые шаги в объектно-ориентированном программировании. Изложение строится на коротких примерах, помогающих читателю освоить основные концепции ООП. В книге рассказывается об основных возможностях объектов, их применении в моделировании и разработке программного обеспечения. Она поможет читателю быстро войти в мир объектно-ориентированного программирования
и стать настоящим мастером.
Издание предназначено для всех, кто интересуется программированием.
Содержание
Посвящение ....................................................... 12
Введение......................................................... 13
Об авторах --.................................................... 14
От издательства.................................................. 14
ГЛАВА 1. Как мы видим мир..........................................15
Вещи, из которых сделаны вещи......................................15
Абстрактные объекты и экземпляры................................16
Почему объекты?.................................................17
Наследование..............................................,......18
Зачем использовать наследование.................................19
Объекты в деловом мире............................................20
Объекты реального мира и объектно-ориентированное программирование .....22
Контрольные вопросы ,............................................23
ГЛАВА 2. Что такое класс..................\.......--...............24
Объект объектов............'......................,...............24
Класс __......................................................25
Определение класса............................................25
Атрибуты.....................................................26
Методы ......................................................28
Объединение класса и программы....................................31
Объявление экземпляра класса.......................................32
Инициализация переменных экземпляра............................33
Доступ к переменным экземпляра..................................34
Присваивание значения переменным экземпляра из вашей программы ..... 34
Вызов методов ...................................................35
Передача параметров .....................................,.....36
Использование возвращаемого значения............................36
Контрольные вопросы --.........................................37
ГЛАВА3. Инкапсуляция............................................... 38,
Части программы объединяются......................................38
Что такое инкапсуляция............................................40
Зачем использовать инкапсуляцию....................................40
Защита с использованием спецификаторов доступа.......................40
Спецификатор доступа public................................,-.... 41
Спецификатор доступа private.................................... 42
'Спецификатор доступа protected ... -...............................43
Инкапсуляция в действии на C++ .....................................44
Внутри функции-члена Write() ............................v........45
Внутри функции-члена DispLay()...................................45
Внутри функции main()..........................................,». 46
Спецификатор доступа protected в действии.........................47
Инкапсуляция в действии на 3ava................................--.50
Спецификатор доступа protected в действии ---.—.................51
Контрольные вопросы...................................k......... 53
ГЛАВА 4. Методы и полиморфизм...................................... 54
Методы.........................................................54
Полиморфизм.................................................55
Перегрузка методов ............................................58
Полиморфизм в C++............................................59
Интерфейсы ...............................,.................--62
Проектирование интерфейсов....................................62
Связывание......................................................63
Полиморфизм времени выполнения...................................63
Полиморфизм времени выполнения в действии.......................64
Контрольные вопросы............................................. 67
ГЛАВА 5. Наследование....................................--......68
Наследование: единственный способ программировать.................... 68
Иерархия классов................................................. 69
Типы наследования.............................................70
Выбор подходящего типа наследования...........'.................. 73
Простое наследование в C++--.....................................75
Простое наследование в Java............................--........ 79
Многоуровневое наследование в C++..................................81
Многоуровневое наследование в Java.................................84
Множественное наследование в C++...................................86
Множественное наследование в Java.................................. 89
Контрольные вопросы.............................................89
ГЛАВА б. Абстракция................................................90
Абстракция: сила закона............................................90
Функция и функциональность.....................................91
Сила абстракции...............................................92
Абстрактный метод.............................................93
Абстракция в действии.............................................93
Ошибки в изобилии............................................. 96
Каркасы приложений, библиотеки и абстракция..........................99
Контрольные вопросы --.........................................99
ГЛАВА 7. Идентификация и описание объектов ......................... 101
Объект........................................................ 101
Идентификация атрибутов...................................... 102
Описание атрибутов ........................................... 103
Декомпозиция атрибутов в данные................................ 103
Идентификация вариантов поведения .............................104
Описание вариантов поведения.................................. 105
Описание класса и диаграмма классов ................................108
Отношения между объектами ....................................... 110
Отношение «один-к-одному»....................................110
Отношение «один-ко-многим» ................................... 110
Отношение «многие-к-одноюу»................................... 111
Отношение «многие-ко-многим»..................................111
Диаграмма отношений сущностей.................................111
v Диаграмма уровней............................................112
Контрольные вопросы............................................ 113
ГЛАВА 8. Моделирование реального мира.............................. 114
Теория и реальный мир............................................ 114
Начнем с простейшего.......................................... 115
Объектно-ориентированные и процедурные языки.................... 115
Проблемы поведения.......................................... 115
Моделирование может и не являться целью......................... 116
Внутренняя и внешняя модель................................... 117
Проблемы иерархии........................................... 117
Ориентирование на задачи...................................... 118
Независимые данные и обширные источники данных.................. 119
Мир по частям................................................ 120
Мыслим ли мы объектами? ...................................... 120
ООП и данные ................................................ 120
Иерархия реального мира.......................................... 121
Трансформация иерархии....................................... 122
Проблемы отношения «is а»..................................... 122
Проблемы объектно-ориентированного программирования из реального мира .. 123
Хранение данных............................................. 123
Обычные процедуры ...............,..............--......... 124
Определение объектов ......................................... 125
Иерархия................................................... 125
Компьютерный мир и реальный мир.................................. 126
Контрольные вопросы ............................................ 128
ГЛАВА 9. Взаимодействие........................................... 129
Что такое взаимодействие......................................... 129
Внутри процессов............................................. 130
Взаимодействие в ООП............................................ 130
UML-диаграммы последовательности действий....................... 136
Является ли mainQ классом?.................................... 137
Регистрация студента.......................................... 137
UML-диаграммы взаимодействия................................. 138
Взаимодействие и наследование ................................. 140
Ассоциация.................................................. 140
Самовзаимодействие........................................... 141
Класс-ответственность-взаимодействие............................ 142
Контрольные вопросы............................................ 142
ГЛАВА 10. Моделирование вариантов использования..................... 144
О моделировании вариантов использования ........................... 144
О нет, только не конечные пользователи!.............................. 145
Сбор требований................................................. 146
Интервью ................................................... 146
Существенные варианты использования............................... 147
Системные варианты использования................................. 149
Бизнес-правила...............-................................. 150
Диаграммы пользовательского интерфейса ...........•................. 151
Диаграммы потоков пользовательского интерфейса................... 152
Прототипирование пользовательского интерфейса ................... 153
Определение классов по нашим проектам.............................. 154
Определение технических требований................................ 155
Варианты изменений............................................. 156
Управление проектами............................................ 157
Клиенты.................................................... 157
Проекты.........................,.......................... 158
Запросы на выполнение работ................................... 158
i Задачи...................................................... 159
Оценка ..,,,----...........................................160
Контрольные вопросы ............................................ 161
ГЛАВАИ.Интерфейсы............................................. 162
Внутри интерфейсов.......--................................... 162
Интерфейсы — это не классы ..«.................................. 163
Диаграммы интерфейсов.......................................... 164
Покажите.мне HTML.............................................. 164
. Краткое введение в HTML...................................../. 165
Интерфейс HTMLSource............................................ 165
Классы до реализации интерфейсов.................................. 166
Реализация интерфейсов в Java и С# ................................. 170
Соберем все вместе .......• • • •.........................• •........ 171
А что же C++?................................................... 172
Компоненты.................................................... 173
Стандартные интерфейсы.......................................... 174
Стандартные интерфейсы Java................................... 174
Стандартные интерфейсы С#..................................... 175
Элементарные базовые классы...................................... 176
Контрольные вопросы . .л......................................... 178
ГЛАВА 12. Объектно-ориентированные языки программирования........... 179
История компьютеров и программирования............................ 179
Три современных лидирующих объектно-ориентированных
языка программирования.......................................... 181
\ C++........................................................182
Java........................................................187
С#......................................................... 192
Контрольные вопросы ............................................ 196
ПРИЛОЖЕНИЕ А. Заключительный экзамен............................. 197
ПРИЛОЖЕНИЕ Б. Ответы на контрольные вопросы
и вопросы заключительного экзамена...................201
Глава 1........................................................ 201
Глава 2........................................................ 203
Глава 3 ........................................................ 204
Глава 4 --..;................................................. 204
Глава 5........................................................ 205
Глава б........................................................ 206
Глава 7........................................................ 206
Глава 8........................................................ 207
Глава 9 __,.................................................. 208
Глава 10 __......................................;............ 208
Глава 11....................................................... 209
Глава 12..............................,........................ 210
Ответы на вопросы заключительного экзамена.......--...............210
ПРИЛОЖЕНИЕ В. Классы в Java....................................... 218
Создание классов .........;...................................;.. 218
Ключевое слово extends........................................ 218
Ключевое слово implements..................................... 219
Поля и функции-члены......................................... 219
Методы ..................................,..................220
Конструкторы..............................................,. 220
Финализаторы................................................ 221
Статические и нестатические инициализаторы.......................221
Интерфейсы.................................................... 222
Пакеты........................................................223

ПРИЛОЖЕНИЕ Г. Классы в C++ .......................................225
Конструкторы и деструкторы....................................... 226
, Функции-члены............................................... 226
Встроенные функции..........................,............... 226
Объединения, структуры и классы.................................... 227
Объекты, функции и копирующие конструкторы........................, 227
Перечисления в классах........................................... 228
Статические члены............................................... 228
ПРИЛОЖЕНИЕ Д. Определение классов в СИ ............................ 230
Деструкторы и сбор мусора......................................... 231
Сборки........................................................ 232
Алфавитный указатель ............................................. 234

Цена: 150руб.

Назад

Заказ

На главную страницу

Hosted by uCoz