В книге "Современное проектирование на C++" изложена новая технология программирования, представляющая собой сплав обобщенного программирования, метапрограммирования шаблонов(паттернов) и объектно-ориентированного программирования на С++. Настраиваемые компоненты, созданные автором, высоко подняли уровень абстракции, наделив язык С++ чертами языка спецификации проектирования, сохранив всю его мощь и выразительность. В книге изложены способы реализации основных шаблонов проектирования. Разработанные компоненты воплощены в библиотеке Loki, которую можно загрузить с Web-страницы автора. Книга предназначена для опытных программистов на С++.
Оглавление
Часть I. Методы 23 Глава 1. Разработка классов на основе стратегий 25 Глава 2. Приемы программирования 45 Глава 3. Списки типов 71 Глава 4. Размещение в памяти небольших объектов 99 Часть II. Компоненты 119 Глава 5. Обобщенные функторы 121 Глава 6. Реализация шаблона Singleton 151 Глава 7. Интеллектуальные указатели 179 Глава 8. Фабрики объектов 217 Глава 9. Шаблон Abstract Factory 239 Глава 10. Шаблон Visitor 255 Глава 11. Мультиметоды 281 Приложение. Многопоточная библиотека в стиле минимализма 319 Библиография 329 Предметный указатель 331
Эта книга представляет собой перевод третьего из-дания американского бестселлера "Effective C++" и явля-ется руководством по грамотному использованию языка C++. Она поможет сделать ваши программы более понят-ными, простыми в сопровождении и эффективными. По-мимо материала, описывающего общую стратегию проек-тирования, книга включает в себя главы по программиро-ванию с применением шаблонов и по управлению ресур-сами, а также множество советов, которые позволят усо-вершенствовать ваши программы и сделать работу более интересной и творческой.
ПЕРВАЯ книга на русском языке, которая описывает среду .NET Framework 3.0. Известные специалисты в области разработки приложений с использованием .NET Framework старались специально отмечать те элементы, которые впервые появились в .NET Framework 3.0. Также книга посвящена среде .NET Framework 2.0 и языку программирования C#.