Гради Буч - Объектно-ориентированный анализ и проектирование с примерами приложений на С++
Описание файла
PDF-файл из архива "Гради Буч - Объектно-ориентированный анализ и проектирование с примерами приложений на С++", который расположен в категории "". Всё это находится в предмете "объектно-ориентированный анализ и проектирование" из 7 семестр, которые можно найти в файловом архиве МГУ им. Ломоносова. Не смотря на прямую связь этого архива с МГУ им. Ломоносова, его также можно найти и в других разделах. .
Просмотр PDF-файла онлайн
Текст из PDF
Гради БучОбъектно-ориентированный анализи проектированиес примерами приложений на С++ВТОРОЕ ИЗДАНИЕRational Санта- Клара, Калифорнияперевод с английского под редакцией И. Романовского и Ф. АндрееваОглавлениеСодержаниеОб автореПредисловиеЧасть I. КонцепцииГлава 1. Сложность1.1. Сложность, присущая программному обеспечению1.2. Структура сложных систем1.3. Внесение порядка в хаос1.4. О проектировании сложных системВыводыДополнительная литератураВрезка: Методы проектирования программных системГлава 2. Объектная модель2.1.
Эволюция объектной модели2.2. Составные части объектного подхода2.3. Применение объектной моделиВыводыДополнительная литератураВрезка: Основные положения объектной моделиГлава 3. Классы и объекты3.1. Природа объекта3.2. Отношения между объектами3.3. Природа классов3.4. Отношения между классами3.5. Взаимосвязь классов и объектов3.6. Качество классов и объектовВыводыДополнительная литератураВрезка: Поиск методаГлава 4. Классификация4.1. Важность правильной классификации4.2.
Идентификация классов и объектов4.3. Ключевые абстракции и механизмыВыводыДополнительная литератураВрезка: Проблема классификацииЧасть II. МетодГлава 5. Обозначения5.1. Элементы обозначений5.2. Диаграммы классов5.3. Диаграммы состояний и переходов5.4. Диаграммы объектов5.5. Диаграммы взаимодействия5.6. Диаграммы модулей5.7. Диаграммы процессов5.8. Применение системы обозначенийВыводыДополнительная литератураГлава б.
Процесс6.1. Основные принципы6.2. Микропроцесс проектирования6.3. Макропроцесс проектированияВыводыДополнительная литератураГлава 7. Практические вопросы7.1. Управление и планирование7.2. Кадры7.3. Управление релизами7.4. Повторное использование7.5. Качество и измерения7.6. Документация7.7. Инструменты7.8. Специальные вопросы7.9. Выгоды и опасности объектно-ориентированной разработкиВыводыДополнительная литератураЧасть III.
Примеры приложенийГлава 8. Система сбора данных: метеорологическая станция8.1. Анализ8.2. Проектирование8.3. Эволюция8.4. СопровождениеДополнительная литератураВрезка: Требования к метеорологической станцииГлава 9. Среда разработки: библиотека базовых классов9.1. Анализ9.2. Проектирование9.3. Эволюция9.4. СопровождениеДополнительная литератураВрезка: Требования к библиотеке базовых классовГлава 10. Архитектура клиент-сервер: складской учет10.1. Анализ10.2. Проектирование10.3. Эволюция10.4. СопровождениеДополнительная литератураВрезка: Требования к системе складского учетаГлава 11.
Искусственный интеллект: криптоанализ11.1. Анализ11.2. Проектирование11.3. Эволюция11.4. СопровождениеДополнительная литератураВрезка: Требования к системе криптоанализаГлава 12. Управление: контроль за движением поездов12.1. Анализ12.2. Проектирование12.3. Эволюция12.4. СопровождениеДополнительная литератураВрезка: Требования к системе управления движениемПослесловиеПриложение: Объектно-ориентированные языки программированияА.1.КонцепцииА.2. Smalltalk 455А.3.
Object PascalА.4. C++A.5. Common Lisp Object System (CLOS)A.6.AdaA.7. EiffelА.8. Другие объектно-ориентированные языки программированияСловарь терминовЛитературные ссылкиБиблиографияА. КлассификацияВ. Объектно-ориентированный анализС. Объектно-ориентированные приложенияD. Объектно-ориентированные архитектурыЕ. Объектно-ориентированные СУБДF. Объектно-ориентированное проектированиеG. Объектно-ориентированное программированиеН.
Прикладное программированиеI. Специальная литератураJ. ТеорияК. Инструменты и среды разработкиПредметный указательОб автореГради Буч (Grady Booch), главный исследователь корпорации Rational Software, признан всеммеждународным сообществом разработчиков программного обеспечения благодаря его основополагающим работам в области объектно-ориентированных методов и приложений. Он —постоянный автор в таких журналах, как «Object Magazine» и «C++ Report» и автор многих бестселлеров, посвященных объектно-ориентированному проектированию и разработке программ.Гради Буч редактирует и участвует в написании серии «Разработка объектно-ориентированногопрограммного обеспечения» («Object-oriented Software Engineering Series»), издаваемой AddisonWesley Longman.Человечество, по милости Божией, жаждет душевного покоя, эстетических достижений,безопасности семьи, справедливости и свободы, не удовлетворяясь повышениемпроизводительности труда.
Но именно повышение производительности труда позволяетделиться избыточным, а не драться за недостающее; оно освобождает время для духовного,эстетического и семейного. Оно позволяет обществу направить часть своих средств на институтырелигии, правосудия и сохранения свобод.Арлан Миллс (Harlan Mills) DPMA и человеческая производительность (DPMA and HumanProductivity)ПредисловиеКак программисты-профессионалы мы стремимся делать свои системы полезными иработоспособными.
Как инженеры-разработчики мы должны создавать сложные системы приограниченных компьютерных и кадровых ресурсах. За последние несколько лет объектноориентированная технология проникла в различные разделы компьютерных наук. К нейотносятся как к средству преодоления сложности, присущей многим реальным системам.Объектная модель показала себя мощной объединяющей концепцией.Что изменилось по сравнению с первым изданиемСо времени выхода в свет первого издания книги "Объектно-ориентированноепроектирование с примерами применения" ("Object-Oriented Design with Applications")объектно-ориентированная технология стала одной из основных при разработкепрограммного обеспечения промышленного масштаба.
Мы видим, что во всем миреобъектная парадигма применяется в таких различных областях, как управлениебанковскими транзакциями, автоматизация кегельбанов, управление коммунальнымхозяйством и исследование генов человека. Во многих случаях новые поколенияоперационных систем, систем управления базами данных, телефонных служб, системавионики и мультимедиа-программ пишутся в объектно-ориентированном стиле. Вбольшинстве таких проектов предпочли использовать объектно-ориентированнуютехнологию просто потому, что не было другой возможности создать достаточнонадежную и жизнеспособную систему.За последние годы в сотнях проектов применяли нотацию и процессразработки, предложенные в нашей книге.1 В процессе собственной разработкипроектов и с учетом опыта многих других, кто пожертвовал своим временем, чтобыподелиться с нами, мы нашли много способов усовершенствовать наш метод.Усовершенствование достигается за счет лучшего изложения процессапроектирования, введения семантики, которая ранее не была отражена в нашейнотации, и упрощения этой нотации там, где возможно.За истекшее время появились многие другие методы, изложенные в работахДжекобсона (Jacobson), Румбаха (Rumbaugh), Гоада и Иордана (Goad and Yourdon),Константайна (Constantine), Шлера и Меллора (Shiaer and Mellor), Мартина и Одел-ла(Martin and Odell), Вассермана (Wasserman), Голдберга и Рубина (Goldberg and Rubin),Эмбли (Embley), Вирфс-Брока (Wirfs-Brock), Голдстейна и Алгера (Goldstein and Alger),Хендерсон-Селлерса (Henderson-Sellers), Файесмита (Firesmith) и др.
Особенноинтересна работа Румбаха, который отмечает, что в наших подходах больше сходствачем различий. Мы провели анализ многих из этих методов, разговаривали сразработчиками и менеджерами, которые их использовали, и, когда это быловозможно, пытались сами их применять. Так как мы больше заинтересованы в реальнойпомощи по разработке проектов в объектно-ориентированной технологии, чем вдогматическом следовании (будь то по эмоциональным или историческим причинам)нашим идеям, мы пытались включить все лучшее, что нашли в новых методах, в нашусобственную работу.
Мы с благодарностью отмечаем фундаментальный и уникальныйвклад каждого из этих лиц в данную область.Индустрии программных средств и объектно-ориентированной технологииполезно было бы иметь, в частности, стандартную систему обозначений. Поэтому в1Включая мои собственные проекты. Я все же разработчик, а не методолог. Первый вопрос,который нужно задавать каждому методологу: "Используете ли вы ваши методы при разработкесобственных программ?".данном издании представлена унифицированная система обозначений, в которой, гдевозможно, устранены косметические различия между нашей нотацией и другими,особенно Джекобсона и Румбаха.
Как и раньше, чтобы обеспечить ее неограниченноеиспользование, система обозначений сделана общедоступным продуктом (publicdomain).Цели, аудитория и структура этого издания остаются теми же, что и в первом.Однако, есть пять существенных различий между вторым и первым изданиями.Во-первых, глава 5 была расширена с тем, чтобы изложить унифицированнуюсистему обозначений значительно подробнее. Чтобы сделать ее более понятной, былиявно разделены существенные и дополнительные элементы обозначений. Кроме того,особое внимание уделено взаимному согласованию разных представлений в этойсистеме.Во-вторых, значительно расширены главы 6 и 7, в которых рассматриваетсяпрактика объектно-ориентированного анализа и проектирования.
Мы даже сменили вэтом издании заглавие книги, отразив тот факт, что наш метод объединяет анализ ипроектирование.В-третьих, мы решили приводить примеры всех программных текстов восновной части книги на одном языке, а именно на C++. Этот язык быстро становитсяфактическим стандартом для многих областей, кроме того, большинствопрофессиональных разработчиков, "сочиняющих" на других языках, могут "читать" наC++. Это не значит, что мы считаем другие языки - такие, как Smalltalk, CLOS, Ada илиEiffel- менее важными. Главная цель этой книги - анализ и проектирование, и так какнам нужны конкретные примеры, мы решили писать их на достаточно общем языкепрограммирования.
Где возможно, мы описываем особенности семантики другихязыков и их влияние на наш метод.В-четвертых, в это издание включены несколько новых примеров приложений.Некоторые интересные идиомы и среды разработки применялись для написания целогоряда приложений и наши примеры отражают эти достижения. Например, концепция"клиент/сервер" послужила основой для одного пересмотренного прикладногопримера.Наконец, почти в каждую главу добавлены ссылки на литературу. Кроме того,мы обсуждаем новые проблемные вопросы объектно-ориентированной технологии,возникшие после выхода первого издания.ЦелиЭта книга призвана служить практическим руководством по созданиюобъектно-ориентированных систем.