September 12th, 2020

Учебник Лафоре, библиография: прочие темы

Начало тут:
1. Учебник Лафоре, библиография: продвинутый C++;
2. Учебник Лафоре, библиография: основополагающие документы;
3. Учебник Лафоре, библиография: UML;
4. Учебник Лафоре, библиография: история развития C++.

* * *

1. C++ IOStreams Handbook, автор: Steve Teale, издание: Addison Wesley, 1993.

Насколько я знаю, новых редакций книги не выходило, перевода на русский язык нет.

* * *

2. The Standard Template Library, авторы: Alexander Stepanov и Meng Lee, издание: Hewlett-Packard, 1994.

Александр Александрович Степанов:
https://ru.wikipedia.org/wiki/Степанов,_Александр_Александрович_(учёный)
https://en.wikipedia.org/wiki/Alexander_Stepanov
Список работ: http://stepanovpapers.com
(список ведет Пол Мак-Джонс (https://www.mcjones.org/paul/), один из соавторов Александра Степанова)

Кто такая Meng Lee? Многие не знают, что это женщина (судя по имени, предположу, что она — американка китайского происхождения). Например, в указанной выше статье википедии про Александра Степанова сейчас сказано следующее: «Уже весной 1994 года библиотека STL, разработанная Степановым, при помощи Менга Ли (англ. Meng Lee) стала частью официального стандарта языка C++» (надеюсь, эту ошибку исправят). «Менг» — это имя, а «Ли» — фамилия (в китайской традиции принято писать сначала фамилию, а потом имя: «Ли Менг»; но в русской традиции, по идее, ее следует называть «Менг Ли»).

Александр Степанов и Дэвид Массер (David Musser) разрабатывали идеи обобщенного программирования с конца семидесятых, которые в итоге (в 90-х) вылились в создание STL. После этого Александр Степанов пришел на работу в «HP Labs» в 1988 году, а в 1992 году вернулся к работе над алгоритмами (обобщенного программирования). Сначала в группе было 8 человек, но постепенно она уменьшилась до двоих: Александра Степанова и Менг Ли. Позже в интервью (оригинал, перевод на «Хабре»: часть 1, часть 2, часть 3) журналу «Dr. Dobb’s Journal» Александр рассказал, что Менг Ли ранее занималась разработкой компиляторов и не была знакома с идеями обобщенного программирования, но прониклась ими и поверила в них, когда в эту разработку мало кто верил. Без ее вклада в кодирование библиотеки Александр Степанов не смог бы создать STL. В интервью он даже пошутил, что аббревиатура «STL» расшифровывается как «СТепанов и Ли».

Рекомендуя данный источник, Лафоре не указал, что это не книга, а «Technical Report» — технический документ, явившийся результатом работы группы Александра Степанова. Это отчет группы работодателю — «HP Labs». Сейчас этот отчет можно бесплатно получить в виде файла в формате PDF с сайта «HP Labs»:
https://www.hpl.hp.com/techreports/95/HPL-95-11.html
https://www.hpl.hp.com/techreports/95/HPL-95-11.pdf
или тут:
http://stepanovpapers.com/STL/DOC.PDF
(Эти файлы датируются 1995 годом, потому что это уже исправленная версия первоначального варианта от 1994 года.)

Вот тут можно посмотреть попытку перевода этого отчета на русский язык:
https://www.rsdn.org/article/cpp/stl.xml
(как переводчики там указаны Алексей Суханов, Андрей Кутырин и Григорий Александрович Милонов c базовой кафедры программного обеспечения систем радиоэлектронной аппаратуры технологического университета МИРЭА, действующей при концерне радиостроения «Вега»)

В 2000 году вышла книга (о которой Лафоре не счел нужным упомянуть... может, не знал о ней) The C++ Standard Template Library, авторы: P. J. Plauger, Meng Lee, David Musser и Alexander Stepanov, издание: Prentice Hall PTR, 2000 год. Эта книга была переведена на русский язык: П. Д. Плаугер, А. А. Степанов, М. Ли, Д. Массер «STL — стандартная библиотека шаблонов C++», СПб.: БХВ-Петербург, 2004 год (656 страниц), серия «Профессиональное программирование».

* * *

Лафоре же рекомендует для изучения STL следующую книгу:
3. STL Tutorial and Reference Guide, Second Edition, авторы: David R. Musser, Gillmer J. Derge и Atul Saini, издание: Addison Wesley, 2001.

Фамилия Дэвида Массера переводилась на русский язык в разных изданиях и как «Массер», и как «Мюссер», но на «Youtube» есть ролики, в которых англоязычные лекторы произносят эту фамилию как «Массер» (например, тут). Думаю, это и есть правильный вариант.

Дэвид Массер:
https://en.wikipedia.org/wiki/David_Musser
Сайт: http://www.cs.rpi.edu/~musser/

Эта книга не имеет редакций, следующих после второй. Была переведена на русский язык:
3. Дэвид Р. Мюссер, Жилмер Дж. Дердж, Атул Сейни «C++ и STL: справочное руководство, 2-е издание», М.: ООО «И. Д. Вильямс», 2010 год (432 страницы), серия «C++ in Depth».

* * *

4. Object-Oriented Design in Java, авторы: Stephen Gilbert и Bill McCarty, издание: Waite Group Press, 1998.

Авторы по-русски: Стивен Гилберт и Билл Маккарти.

Других редакций этой книги, по-моему, нет. На русский не переводилась. Переводились на русский другие книги этих авторов. Также есть ссылки на этот труд из книг других англоязычных авторов, переведенных на русский язык. Еще есть множество книг с похожим названием, написанных другими авторами, в том числе русскоязычными.

* * *

5. Windows Game Programming for Dummies, автор: André LaMothe, издание: IDG Books, 1998.

Андре Ламот:
https://en.wikipedia.org/wiki/André_LaMothe

В 2002 году вышла вторая редакция этой книги:
5. Windows Game Programming For Dummies, 2nd Edition, «Wiley Publishing, Inc.», 2002 год.

Именно эта книга, насколько я знаю, на русский не переводилась. Но Ламот написал и множество других книг о разработке игр, некоторые из которых были переведены на русский язык.

* * *

6. The C Programming Language, Second Edition, авторы: Brian Kernighan и Dennis Ritchie, издание: Prentice Hall PTR, 1988.

Брайан Керниган:
https://ru.wikipedia.org/wiki/Керниган,_Брайан
https://en.wikipedia.org/wiki/Brian_Kernighan
Сайт: https://www.cs.princeton.edu/~bwk/
Его книги: https://kernighan.org

Страница этой книги на сайте Кернигана:
https://www.cs.princeton.edu/~bwk/cbook.html

Страница этой книги в википедии:
https://ru.wikipedia.org/wiki/Язык_программирования_Си_(книга)
https://en.wikipedia.org/wiki/The_C_Programming_Language

Деннис Ритчи (создатель языка Си, умер в 2011 году):
https://ru.wikipedia.org/wiki/Ритчи,_Деннис
https://en.wikipedia.org/wiki/Dennis_Ritchie
Сайт: https://www.bell-labs.com/usr/dmr/www/

Следующая редакция этой книги не выходила. Книга переведена на русский язык и неоднократно переиздавалась разными издательствами:

6. «Язык программирования Си», М.: «Финансы и статистика», 1992 год (271 страница), перевод с английского — Виктора Серафимовича Штаркмана под редакцией его старшего брата Всеволода Серафимовича Штаркмана (1931-2005).
6. «Язык программирования Си», СПб.: «Невский диалект», 2001 год (352 страницы), тот же перевод.
6. «Язык программирования C. 2-е издание», М.: Издательский дом «Вильямс», 2009-2020 годы (304 страницы), перевод с английского и редакция — В. Л. Бродового.