Уорд Каннингем
Когда я просматриваю проект по разработке программного обеспечения, я обращаю внимание на проявление опыта. Есть ли у команды разработчиков опыт выполнения соответствующей работы? Могут ли они применить свой опыт к создаваемым объектам? К сожалению, ответ на эти вопросы часто оказывается отрицательным.
Все большее число представителей сообщества объектно-ориентированной разработки чувствуют, что в течение некоторого времени мы неправильно распределяли наше общее внимание. Нам больше не нужно фокусироваться на инструментах, методах, нотациях или даже коде. У нас в руках уже есть механизм для создания отличных программ. Когда мы терпим неудачу, мы терпим неудачу, потому что нам не хватает опыта.
Мартин Фаулер нашел способ дать нам то, что нам нужно: опыт в виде книги.
Он сделал для доменных объектов то, что Эрик Гамма (Eric Gamma) и др. сделали для реализации объектов в своей эпохальной работе « Design Patterns: Elements of Reusable Object-Oriented Software». Мартин использует привычную терминологию нашего зарождающегося сообщества, но в другом ключе. Например, он использует слово "паттерн" не потому, что дублирует или расширяет книгу Гаммы (или любую другую новую книгу, появившуюся на рынке). Он называет свои письменные формы опыта паттернами просто потому, что они таковыми и являются. Работая консультантом по объектному моделированию информационных систем, он неоднократно находил решения повторяющихся проблем и в процессе открыл для себя форму паттерна.
Мартин Фаулер легко мог бы написать книгу по объектно-ориентированному анализу. К счастью, он этого не сделал. Вместо этого у нас есть книга каталогизирующая результаты анализа. В каждой главе сообщается о результатах его (и его коллег) аналитических усилий, примененных к общим проблемам бизнеса. Рассматриваемые области варьируются от ведения медицинской документации до торговли финансовыми инструментами, с несколькими остановками между ними. Какие главы относятся к вам? Удивительно, но все. Мартин помещает каждую проблему в определенный контекст, а затем предлагает решение для этого контекста. Вы увидите знакомые аспекты в каждом контексте. Вы узнаете проблемы. Вы оцените результаты. И вот он: опыт.
Наконец, Мартин пишет в личном стиле, передавая свои мысли и суждения. Мы чувствуем его уважение к клиентам и коллегам, от которых, по его признанию, исходит большинство озарений. Мы наблюдаем за тем, как он держит дистанцию от превратностей внедрения, сохраняя при этом реалистичность, — этот путь не поддается прямому объяснению. Заглянув в сознание эксперта-аналитика, мы получаем урок «как делать анализ», который пополняет наш собственный опыт.
—Уорд Каннингем (Ward Cunningham)
Компания Cunningham & Cunningham, Inc.