Интернет-магазинИнтернет-магазин
| Начало | Новинки | Корзина |
  Главная » Каталог » Компьютерная литература » Языки и системы программирования » C/C++. Языки программирования Си, Си++ » C++: практический подход к решению проблем программирования. + CD. Мэтью Уилсон
Разделы
Бизнес (508)
Воспитание. Образование. (170)
Радиоэлектроника (79)
Каталоги (6)
Компьютерная литература (3224)
  Базы данных (100)
  Графика, дизайн, мультимедиа (322)
  Разработка программного обеспечения (57)
  Компьютерная безопасность. Хакерство (80)
  Компьютерные сети. Интранет, корпоративные сети (59)
  Компьютеры и программы (1052)
  Интернет и Web-страницы (326)
  Операционные системы (Windows, Linux...) (297)
  Основы программирования (40)
  MS Office. Офисные программы Майкрософт (188)
  Системы проектирования (CAD/CAM) (257)
  Сертификационные экзамены (6)
  Энциклопедии и словари по вычислительной технике, программированию, интернет (17)
  Цифровая фотография (36)
  Языки и системы программирования (387)
    Ассемблер для ПК на платформе Intel (13)
    C#. Язык программирования Си Шарп (28)
    C++ в среде разработки Visual C++ (14)
    C++ в среде разработке C++ Builder (15)
    C/C++. Языки программирования Си, Си++ (74)
    Delphi, Kylix. Среда разработки на Паскале (57)
    Паскаль, Turbo Pascal. Язык программирования (23)
    Программирование на языках .NET (44)
    Java, J++. Языки программирования (37)
    Фортран (2)
    Visual Basic. Язык программирования (24)
    Языки программирования (прочие) (42)
Кулинария (1)
Популярная психология (71)
Психология (132)
Психотерапия и психоанализ (15)
Полный список товаров
Издатели
Новинки Перейти
Карта сокровищ или Всё в твоих руках
Карта сокровищ или Всё в твоих руках
30.00 грн.
Реклама
Уважаемые посетители! Магазин работает в режиме виртуальной витрины. Прием заказов временно приостановлен.
C++: практический подход к решению проблем программирования. + CD. Мэтью Уилсон 98.40 грн.
Предыдущий товар Товар 37 из 74
категории C/C++. Языки программирования Си, Си++
 Следующий товар
 
box_bg_l.gif.

С++ – изумительных язык, но не идеальный. Если вы давно занимаетесь разработками на С++, эта книга поможет вам по-новому посмотреть на те сложные проблемы, с которыми приходится сталкиваться при программировании, и освоить мощные методы, которые вы никогда раньше не применяли. Если вы новичок в С++, то научитесь принципам программирования, которые позволят вам более эффективно реализовывать все ваши проекты. В ходе чтения книги вы научитесь:
- преодолевать недостатки системы типов С++;
- обеспечивать выполнение требований проекта программного обеспечения с помощью ограничений, соглашений и утверждений;
- правильно обрабатывать ситуации, не оговоренные стандартом, включая проблемы, связанные с динамическими библиотеками, статическими объектами и поточной организацией вычислений;
- обеспечивать совместимость динамически загружаемых компонентов на уровне двоичных модулей;
- понимать недостатки неявных преобразований и связанные с ними затраты и применять альтернативные подходы;
- повышать совместимость различных компиляторов, библиотек и операционных сред;
- помогать компилятору обнаруживать больше ошибок и работать более эффективно;
- понимать, какие аспекты стиля влияют на надежность;
- применять механизм захвата ресурсов при инициализации при решении различных задач;
- умело обращаться со странной связью, временами возникающей между массивами и указателями;
- использовать шаблонное программирование для повышения гибкости и устойчивости;
- расширять С++, в том числе быстрой конкатенацией строк, настоящими NULL-указателями, гибкими буферами памяти, свойствами, многомерными массивами и диапазонами.
Прилагаемый компакт-диск содержит много различной ценной информации: компиляторы, библиотеки, тестовые программы, инструментальные средства и служебные программы, а также подборку журнальных статей автора
.

736 стр.; ISBN 5-91136-006-3; СD-ROM; 2006г.; Кудиц-Образ.

 

Содержание

Пролог
Введение: философия неидеального практика
Дефекты, ограничения, определения и рекомендации
Часть 1. Базовые концепции
Глава 1. Принудительное проектирование: ограничения, соглашения и утверждения
...1.1. «Яичница с ветчиной»
...1.2. Соглашения времени компиляции: ограничения
...1.3. Соглашения времени выполнения: предусловия, постусловия и инварианты
...1.4. Утверждения
Глава 2. Проблемы жизненного цикла объекта
...2.1. Жизненный цикл объекта
...2.2. Контроль ваших клиентов
...2.3. Списки инициализации членов и их достоинства
Глава 3. Инкапсуляция ресурсов
...3.1. Таксономия инкапсуляции ресурсов
...3.2. Типы POD
...3.3. Прокси-оболочки
...3.4. Типы RRID
...3.5. Типы RAII
...3.6. RAII: заключение
Глава 4. Инкапсуляция данных и типы значений
...4.1. Таксономия инкапсуляции данных
...4.2. Типы значений и типы сущностей
...4.3. Таксономия типов значений
...4.4. Открытые типы
...4.5. Инкапсулированные типы
...4.6. Типы значений
...4.7. Арифметические типы значений
...4.8. Типы значений: заключение
...4.9. Инкапсуляция: заключение
Глава 5. Модели доступа к объектам
...5.1. Ограниченное время жизни объектов
...5.2. Копирование объектов
...5.3. Непосредственный доступ
...5.4. Совместно используемые объекты
Глава 6. Классы, контролирующие диапазон действия ресурсов
...6.1. Значение
...6.2. Состояние
...6.3. Программные интерфейсы и службы
...6.4. Специальные возможности языка
Часть 2. Выживание в условиях реального мира
Глава 7. Двоичный интерфейс приложения
...7.1. Совместно используемый программный код
...7.2. Требования для двоичного интерфейса языка С
...7.3. Требования С++ для двоичного интерфейса приложения
...7.4. Теперь мне ничто не мешает программировать в стиле С
Глава 8. Переносимые через границы
...8.1. Как сделать таблицы vtable максимально переносимыми?
...8.2. Переносимые таблицы vtable
...8.3. Двоичный интерфейс и объекты, переносимые через границы: заключение
Глава 9. Динамические библиотеки
...9.1. Явный вызов функций
...9.2. Идентичность объектов: единицы компоновки и пространство компоновки
...9.3. Продолжительность жизни
...9.4. Контроль версий
...9.5. Владение ресурсами
...9.6. Динамические библиотеки: заключение
Глава 10. Поточная организация вычислений
...10.1. Синхронизация доступа к целым числам
...10.2. Синхронизация доступа к блокам кода: критические области
...10.3. Эффективность неделимых целочисленных операций
...10.4. Многопоточные расширения
...10.5. Специальная память потока
Глава 11. Статические объекты
...11.1. Нелокальные статические объекты: глобальные объекты
...11.2. Синглетоны
...11.3. Функционально-локальные статические объекты
...11.4. Статические члены
...11.5. Статические объекты: заключение
Глава 12. Оптимизация
...12.1. Встроенные функции
...12.2. Оптимизация возвращаемых значений
...12.3. Оптимизация пустой базы
...12.4. Оптимизация пустых производных классов
...12.5. Предотвращение оптимизации
Часть 3 Языковые проблемы
Глава 13. Фундаментальные типы
...13.1. Могу ли я получить байт?
...13.2. Целые типы фиксированного размера
...13.3. Целые типы большого размера
...13.4. Опасные типы
Глава 14. Массивы и указатели
...14.1. Не повторяйте себя
...14.2. Вырождение массивов в указатели
...14.3. dimensionof()
...14.4. Нельзя передавать массивы функциям
...14.5. Массивы всегда передаются с помощью адреса
...14.6. Массивы унаследованных типов
...14.7. Нельзя иметь многомерные массивы
Глава 15. Значения
...15.1. NULL – ключевое слово, которого не было
...15.2. Перейдем к ZERO
...15.3. Изгибы «истины»
...15.4. Литералы
...15.5. Константы
Глава 16. Ключевые слова
...16.1. interface
...16.2. temporary
...16.3. owner
...16.4. explicit(_cast)
...16.5. unique
...16.6. final
...16.7. Неподдерживаемые ключевые слова
Глава 17. Синтаксис
...17.1. Компоновка класса
...17.2. Условные выражения
...17.3. for
...17.4. Обозначение переменных
Глава 18. Имена, вводимые typedef
...18.1. Использование typedef для указателей
...18.2. Что содержит определение?
...18.3. Алиасы
...18.4. «Настоящие» typedef
...18.5. Хороший, плохой и ужасный
Часть 4. Осознанные преобразования
Глава 19. Приведение типов
...19.1. Неявное преобразование
...19.3. Пример приведений в стиле С
...19.4. «Стероидные» приведения
...19.5. explicit_cast
...19.6. literal_cast
...19.7. union_cast
...19.8. comstl::interface_cast
...19.9. boost::polymorphic_cast
...19.10. Приведение типов: заключение
Глава 20. Прокладки
...20.1. Всеохватность изменений и усиливающаяся гибкость
...20.2. Прокладки атрибутов
...20.3. Логические прокладки
...20.4. Управляющие прокладки
...20.5. Прокладки преобразований
...20.6. Концепции составных прокладок
...20.7. Пространства имен и поиск Кенига
...20.8. Почему не шаблоны свойств?
...20.9. Структурное соответствие
...20.10. Разрушение монолита
...20.11. Прокладки: заключение
Глава 21. Облицовочные классы
...21.1. Облегченный RAII
...21.2. Связывание данных и операций
...21.3. Уточнение концепций
...21.4. Облицовочные классы: заключение
Глава 22. Прикрепляемые классы
...22.1. Добавление функциональности
...22.2. Выбор оболочки
...22.3. Переопределение не виртуальных методов
...22.4. Увеличение возможностей
...22.5. Моделирование полиморфизма на этапе компиляции: реверсивные прикрепляемые классы
...22.6. Параметризованная полиморфная упаковка
...22.7. Прикрепляемые классы: заключение
Глава 23. Шаблонные конструкторы
...23.1. Скрытые недостатки
...23.2. Висячие ссылки
...23.3. Специализация шаблонных конструкторов
...23.4. Прокси аргументов
...23.5. Ориентация аргументов на определенные типы
...23.6. Шаблонные конструкторы: заключение
Часть 5. Операторы
Глава 24. operator bool()
...24.1. operator int() const
...24.2. operator void *() const
...24.3. operator bool() const
...24.4. operator !() – нет!
...24.5. operator boolean const *() const
...24.6. operator int boolean::*() const
...24.7. Применение операторов в реальных условиях
...24.8. operator!
Глава 25. Быстрая, неагрессивная конкатенация строк
...25.1. fast_string_concatenator<>
...25.2. Производительность
...25.4. Метод посева конкатенации
...25.5. Патологическое применение скобок
...25.6. Стандартизация
Глава 26. Какой ваш адрес?
...26.1. Можно не получить реальный адрес
...26.2. Что происходит во время преобразования?
...26.3. Что мы возвращаем?
...26.4. Какой ваш адрес?: заключение
Глава 27. Операторы индексации
...27.1. Операторы преобразования в указатели и операторы индексации
...27.2. Обработка ошибок
...27.3. Возвращаемое значение
Глава 28. Операторы инкремента
...28.1. Недостающие постфиксные операторы
...28.2. Эффективность
Глава 29. Арифметические типы
...29.1. Определение класса
...29.2. Конструирование по умолчанию
...29.3. Инициализация (конструирование значения)
...29.4. Копирующий конструктор
...29.5. Присваивание
...29.6. Арифметические операторы
...29.7. Операторы сравнения
...29.8. Осуществление доступа к значению
...29.9. sinteger64
...29.10. Усечения, перевод в другие форматы и проверки
...29.11. Арифметические типы: заключение
Глава 30. Быстрое вычисление
Часть 6. Расширение C++
Глава 31. Продолжительность жизни возвращаемых значений
...31.1. Таксономия «странностей» продолжительности жизни возвращаемых значений
...31.2. Зачем возвращать ссылку?
...31.3. Решение 1 – integer_to_string<>
...31.4. Решение 2 – специальная память потока
...31.5. Решение 3 – расширение RVL
...31.6. Решение 4 – определение размера статического массива
...31.7. Решение 5 – прокладки преобразований
...31.8. Производительность
...31.9. RVL: большая победа сборки мусора
...31.10. Потенциальные применения
...31.11. Продолжительность жизни возвращаемых значений: заключение
Глава 32. Память
...32.1. Таксономия памяти
...32.2. Лучший из двух миров
...32.3. Распределители памяти
...32.4. Память: заключение
Глава 33. Многомерные массивы
...33.1. Обеспечение синтаксиса индексации
...33.2. Установка размеров на этапе выполнения программы
...33.3. Установка размеров на этапе компиляции
...33.4. Доступ ко всему массиву
...33.5. Производительность
...33.6. Многомерные массивы: заключение
Глава 34. Функторы и диапазоны
...34.1. Синтаксическая неразбериха
...34.2. for_all() ?
...34.3. Локальные функторы
...34.4. Диапазоны
...34.5. Функторы и диапазоны: заключение
Глава 35. Свойства
...35.1. Расширения компилятора
...35.2. Варианты реализации
...35.3. Свойства-поля
...35.4. Свойства-методы
...35.6. Виртуальные свойства
...35.7. Применение свойств
...35.8. Свойства: заключение
Приложение A. Компиляторы и библиотеки
...A.1. Компиляторы
...A.2. Библиотеки
...A.3. Другие источники
Приложение Б. Остерегайтесь самомнения!
...Б.1. Перегрузка операторов
...Б.2. Когда-то я пожалел о том, что следовал принципу DRY
...Б.3. Параноидальное программирование
...Б.4. Настоящее безумие!
Приложение В. Arturius
Приложение Г. Компакт-диск
Эпилог
Библиография
Предметный указатель 



Товар был добавлен в наш каталог 01 January 2009 г.
box_bg_r.gif.
Отзывы Количество:
Поиск
Введите слово для поиска. Расширенный поиск
Вход
E-Mail:
Пароль:
Регистрация
Отложенные товары Перейти
Нет отложенных товаров.
Отзывы Перейти
Написать отзывНапишите Ваше мнение о товаре!
Рассказать другу
 

Сообщите своим друзьям и близким о нашем магазине
Уведомления Перейти
УведомленияСообщите мне о новинках и C++: практический подход к решению проблем программирования. + CD. Мэтью Уилсон
Реклама
Скидки   |   Расширенный поиск   |   Свяжитесь с нами   |   Регистрация   |   Мои данные
Copyright © 2009 ga-zon.com
Материалы, представленные на сайте, не могут быть использованы без письменного разрешения администрации сайта
  bigmir)net TOP 100