Дополнительная литература
Библиотека стандартных шаблонов описана во множестве книг, включая "Генерацию
программ и STL" Мэтью Остерна (Matthew Austern. Generic Programming
and the STL. Addison-Wesley, 1998).
Для изучения самого языка C++ лучшим пособием является "Язык программирования
C++" Бьёрна Страуструпа (Bjarne Stroustrup. The C++ Programming Language.
3rd ed. Addison-Wesley, 1997)2, для изучения Java — "Язык программирования
Java" Кена Арнольда и Джеймса Гос-линга (Ken Arnold and James Gosling.
The Java Programming Language. 2mt ed. Addison-Wesley, 1998). Лучшее,
на наш взгляд, описание Perl при- • ведено в "Программировании на
Perl" Ларри Уолла, Тома Кристиансена и Рэндала Шварца (Larry Wall,
Tom Christiansen and Randal Schwartz. Programming Perl. 2nd ed. O'Reilly,
1996).
В принципе, можно говорить о существовании неких шаблонов проектирования
(design patterns) — действительно, в большинстве программ используется
лишь ограниченное количество принципиальных проектировочных решений —
точно так же, как существует лишь несколько базовых структур данных; с
некоторой натяжкой можно сказать, что это аналог идиоматического кода,
о котором мы говорили в первой главе. Эта идея лежит в основе книги Эриха
Гаммы, Ричарда Хелма, Ральфа Джонсона и Джона Влиссайдеса "Разработка
шаблонов: элементы по-вторноиспользуемого объектно-ориентированного программного
обеспечения" (Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides.
Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley,
1995).
Авантюрные приключения программы markov (которая изначально называлась
shaney) были описаны в разделе "Computing Recreations" журнала
Scientific American за ию^ь 1989 года. Статья была перепечатана в книге
Дьюдни "Магическая машина" (А. К. Dewdney. The Magic Machine.
W. H. Freeman, 1990). |