Бьерн Страуструп.
Язык программирования С++
305
Одна из
немногих книг, посвященных роли человеческого фактора в производстве
программного обеспечения. Необходима для каждого менеджера. Достаточно успокаивающая
для чтения перед сном. Лекарство от многих глупостей.
[6] Ron Kerr: A Materialistic View of the Software "Engineering" Analogy. in SIGPLAN Notices, March
1987. pp 123-125.
Использование аналогии в
этой и следующей главах во многом обязано наблюдениям из
указанной статьи, а так же беседам с Р. Керром, которые этому предшествовали.
[7] Barbara Liskov: Data Abstraction and Hierarchy. Proc. OOPSLA'87 (Addendum). Orlando, Florida. pp
17-34.
Исследуется, как использование наследования может повредить концепции абстрактных
данных. Укажем, что в С++ есть специальные языковые средства, помогающие избежать
большинство указанных проблем ($$12.2.5).
[8] C. N. Parkinson: Parkinson's Law and other Studies in Administration. Houghton-Mifflin. Boston. 1957.
Одно из забавных и самых язвительных описаний бед, к которым приводит процесс
администрирования.
[9] Bertrand Meyer: Object Oriented Software Construction. Prentice Hall. 1988.
Страницы 1-64 и 323-334 содержат хорошее описание одного взгляда на объектно-
ориентированное программирование и проектирование, а также много здравых, практических
советов. В остальной части книги описывается язык Эйффель (Eiffel).
[10] Alan Snyder: Encapsulation and Inheritance in Object-Oriented Programming Languages. Proc.
OOPSLA'86. Portland, Oregon. pp.38-45.
Возможно первое хорошее описание взаимодействия оболочки и наследования. В статье так же
на хорошем уровне рассматриваются некоторые понятия, связанные с
множественным
наследованием.
[11] Rebecca Wirfs-Brock, Brian Wilkerson, and Lauren Wiener: Designing Object-Oriented Software.
Prentice Hall. 1990.
Описывается антропоморфный метод проектирования основанный на специальных карточках
CRC (Classes, Responsibilities, Collaboration) (т.е. Классы, Ответственность, Сотрудничество).
Текст, а может быть и сам
метод тяготеет к языку Smalltalk.
Бьерн Страуструп.
Язык программирования С++
306
Достарыңызбен бөлісу: