воскресенье, 28 ноября 2010 г.

Обзор книги "Объектно-ориентированное конструирование программных систем"

Итак это свершилось. Рубеж пройден. Самая лучшая книга по ОО-программированию изучена от корки до корки. Книга старая - автор (Бертран Мейер) писал ее в середине 90-х, а перевели ее на русский поти через 10 лет - в 2005.

Но как не странно книга не устарела. Мейер пишет о ОО методе полностью погрузившись в проблему.  Книга составлена следующим образом: в начале очерчивается проблема, производится ее анализ, потом происходит попытка создать несколько вариантов решения проблемы и в конце выбирается лучший подход, по мнению автора. Таким образом основы метода подробно освещены, что будет особенно полезно для новичков.

Освещены все важные темы: АТД, типизация, наследование, исключения, универсализация (шаблоны в С++), управление памятью. Особенное место занимает Проектирование по Контракту -книга считается фундаментальным трудом на эту тему.

Часто когда я читал проскакивала мысль - как же без это штуки я живу в контексте С++?! это просто не возможно! И почему язык Eiffel (который создал Мейер и на котором написано большинство примеров из книги) так и не стал по настоящему популярным? Может быть у него были неудачные реализации? Может быть его синтаксис, напоминающий pascal, является громоздким? Может быть он закрыт? Или может просто он появился не в свое время и эта ниша была уже намертво занята такими монстрами как C++ и Java (которых поддерживали огромные корпорации). Вообще мир не справедлив.

В общем эту книгу поздно я прочитал - надо было в 2005, у лучше в 90-x на английском...

Из недостатков: книга огромная, тяжело постоянно таскать с собой, что бы читать в транспорте; библиография зачем то вынесена на диск - очень не удобно.

p.s.
Поставил среду Eiffel Studio- неплохая IDE, хотя не emacs конечно, и даже под linux x64 отлично работает. Эх, что же помешало этому языку по настоящему зажечь? Вроде же автор делал все правильно...