Отзывы о книге «Я получил книгу вчера, начал читать ее по дороге домой... и не мог остановиться. Я взял ее в трена- жерный зал, и окружающие, вероятно, удивлялись, когда я читал во время тренировки. Круто в выс- шей степени. Книга отлично читается, но в ней рассматривается вполне серьезный материал, и все по делу. Весьма впечатляюще». — Эрик Гамма, заслуженный специалист IBM, соавтор книги «Приемы объектно-ориентированного проектирования», один из участников «Банды Четырех» наряду с Ричардом Хелмом, Ральфом Джонсоном и Джоном Влиссидесом «Книга умудряется смешать юмор, техническую глубину и полезнейшие практические советы; получа- ется занимательное чтиво, располагающее к размышлениям. И новички в области паттернов, и опыт- ные разработчики, применявшие их годами, наверняка вынесут что-то полезное из посещения Объ- ектвиля». — Ричард Хелм, соавтор книги «Приемы объектно-ориентированного проектирования», вместе с остальными участниками «Банды Четырех» — Эриком Гаммой, Ральфом Джонсоном и Джоном Влиссидесом «У меня такое чувство, словно я прочитал сразу полтонны книг». — Уорд Каннингем, изобретатель Wiki и основатель Hillside Group «Книга близка к идеалу благодаря сочетанию удобочитаемости и практического опыта. Авторы изла- гают материал на достойном уровне и делают это изящно. Это одна из немногих книг по программи- рованию, которую я считаю незаменимой (а я к этой категории причисляю книг десять, не более)». — Дэвид Гелентер, профессор информационных технологий, Йельский университет, автор книг «Mirror Worlds» и «Machine Beauty» «Погружение в мир паттернов — в страну, в которой сложное становится простым, но и простое может оказаться сложным. Не представляю себе лучшего вводного руководства, чем книга Фрименов». — Мико Мацумура, отраслевой аналитик, Middleware Company, бывший ведущий специалист по Java, Sun Microsystems «Я смеялся, я плакал, книга тронула меня». — Дэниел Стейнберг, старший редактор java.net «Сначала мне захотелось упасть на пол от смеха. Но потом я собрался и понял, что эта книга не только содержит технически точную информацию, но и является самым доступным введением в паттерны проектирования, которое я когда-либо встречал». — Доктор Тимоти Бадд, адъюнкт-профессор в области информационных технологий Орегонского государственного университета, автор более дюжины книг, в том числе «C++ for Java Programmers» Отзывы о книге «Джерри Райс обращается с паттернами лучше любого принимающего в NFL, но Фримены превзошли его. Серьезно... Это одна из самых забавных и умных книг в области проектирования ПО, которые я когда-либо читал». — Аарон Лаберг, старший вице-президент по технологиям и разработке продуктов, ESPN «Хорошая архитектура программы прежде всего определяется хорошей информационной архитекту- рой. Проектировщик учит компьютер, как выполнить ту или иную операцию, и не приходится удив- ляться тому, что хороший учитель компьютеров оказывается хорошим учителем программистов. Бла- годаря ее доступности, юмору и уму авторов даже не-программист хорошо воспримет эту книгу». — Кори Доктороу, один из редакторов Boing Boing, автор книг «Down and Out in the Magic Kingdom» и «Someone Comes to Town, Someone Leaves Town» «Эрик и Элизабет Фримен в своей книге бесстрашно вызвались заглянуть за занавес программного кода. Они излагают основные концепции проектирования на таком честном уровне, на который не решаются многие писатели, думающие только об укреплении своего замечательного эго, — на уровне, на котором открываются столь поразительные истины. Софистам и цирковым зазывалам здесь делать нечего. Образованные люди следующего поколения — не забудьте взять в руки карандаш». — Кен Голдстейн, исполнительный вице-президент и директор-распорядитель, Disney Online «Правильно выбранный тон для внутреннего раскрепощенного эксперта-программиста, скрывающе- гося в каждом из нас. Отличный справочник по практическим стратегиям разработки — мой мозг ра- ботает, не отвлекаясь на надоедливый, устаревший академический жаргон». — Трэвис Каланик, генеральный директор и соучредитель Uber, член MIT TR100 «Благодаря сочетанию юмора, отличных примеров и глубокого знания паттернов проектирования обучение по этой книге становится таким увлекательным занятием. Например, меня как активного участника индустрии развлечений сразу заинтриговал Голливудский принцип и паттерн Фасад для до- машнего кинотеатра. Понимание паттернов проектирования не только помогает нам создавать каче- ственные программы, пригодные для повторного использования, но и совершенствует наши навыки решения задач во всех предметных областях. Эта книга рекомендуется всем профессионалам и студен- там в области компьютерных технологий». — Ньютон Ли, основатель и старший редактор сайта acmcie.org (Association for Computing Machinery / Computers in Entertainment) Отзывы о книге «Если и есть тема, преподавание которой определенно требует большей занимательности, то это пат- терны проектирования. К счастью, у нас теперь есть эта книга. Великолепные авторы «Head First Java» используют все мыслимые приемы, чтобы помочь — вам по- нять и запомнить материал. Здесь вы найдете не только множество изображений людей, которые при- влекают внимание других людей. Сюрпризы повсюду! Многочисленные истории (например, о пицце и шоколаде. Стоит ли говорить еще?). Вдобавок книга невероятно смешная. В ней представлены множество концепций и приемов, а также почти все паттерны, которые чаще всего используются на практике: Наблюдатель, Декоратор, Фабрика, Одиночка, Команда, Адаптер, Фасад, Шаблонный Метод, Итератор, Компоновщик, Состояние, Заместитель. Прочитайте, и все они перестанут быть «просто словами», превратившись в воспоминания, которые задевают вас за живое, и инструменты, применяемые в повседневной работе». — Билл Камарда, READ ONLY «После использования «Head First Java» для обучения азам программирования я с нетерпением ждал следующего издания из этой серии. Я уверен, что данная книга быстро станет первой книгой, с ко- торой следует начинать знакомство с паттернами, — и она уже стала книгой, которую я рекомендую своим студентам». — Бен Бедерсон, адъюнкт-профессор в области информационных технологий, директор лаборатории взаимодействий «человек–компьютер» в Мэрилендском университете «Обычно во время чтения книги или статьи, посвященных паттернам программирования, мне приходит- ся время от времени щипать себя, чтобы убедиться в том, что я еще не заснул. С этой книгой все совершен- но иначе. Как ни странно, она делает изучение паттернов легким и веселым занятием». — Эрик Вулер «Я буквально влюблен в эту книгу. Я даже поцеловал ее на глазах у жены». — Сатиш Кумар Отзывы о технологии «Head First» «Технология Java повсюду: в мобильных телефонах, в машинах, фотоаппаратах, принтерах, играх, КПК, банкоматах, смарт-картах, бензонасосах, на стадионах, в медицинском оборудовании, веб-камерах, серве- рах... Если вы занимаетесь программированием, но еще не изучили Java, вам определенно стоит сделать это с книгой Head First». — Скотт Макнили, председатель совета директоров Sun Microsystems, президент и исполнительный директор «Книга читается быстро, она несерьезная, веселая и увлекательная. Будьте внимательны — из нее легко что-нибудь узнать!» — Кен Арнольд, бывший старший специалист в Sun Microsystems, соавтор книги «Язык программи- рования Java» (написанной вместе с Джеймсом Гослингом, создателем Java). ББК 32.973.2-018-02 УДК 004.42 Х99 Фримен Э., Робсон Э., Сьерра К., Бейтс Б. Х99 Head First. Паттерны проектирования. Обновленное юбилейное издание. — СПб.: Питер, 2018. — 656 с.: ил. — (Серия «Head First O’Reilly»). ISBN 978-5-496-03210-0 В мире постоянно кто-то сталкивается с такими же проблемами программирования, которые возникают и у вас. Мно- гие разработчики решают совершенно идентичные задачи и находят похожие решения. Если вы не хотите изобретать велосипед, используйте готовые шаблоны (паттерны) проектирования, работе с которыми посвящена эта книга. Паттерны появились, потому что многие разработчики искали пути повышения гибкости и степени повторного ис- пользования своих программ. Найденные решения воплощены в краткой и легко применимой на практике форме. Особенностью данного издания является уникальный способ подачи материала, выделяющий серию «Head First» из- дательства O’Reilly в ряду множества скучных книг, посвященных программированию. Книга будет интересна широкому кругу веб-разработчиков, от начинающих до профессионалов, желающих освоить работу с паттернами проектирования. 16+ (В соответствии с Федеральным законом от 29 декабря 2010 г. № 436-ФЗ.) ББК 32.973.2-018-02 УДК 004.42 Права на издание получены по соглашению с O’Reilly. Все права защищены. Никакая часть данной книги не может быть воспроизве- дена в какой бы то ни было форме без письменного разрешения владельцев авторских прав. ISBN 978-0596007126 англ. Authorized Russian translation of the English edition of Head First Design Patterns, ISBN 9780596007126 © 2004, 2014 O’Reilly Media, Inc., Bert Bates and Kathy Sierra. This translation is published and sold by permission of O’Reilly Media, Inc., which owns or controls all rights to publish and sell the same. ISBN 978-5-496-03210-0 © Перевод на русский язык ООО Издательство «Питер», 2018 © Издание на русском языке, оформление ООО Издательство «Питер», 2018 © Серия «Head First O’Reilly», 2018 Посвящается «Банде Четырех»; их прозорливость и мастерство в формулировке и описании паттер- нов проектирования навсегда изменили область проектирования программных архитектур и улуч- шили жизнь разработчиков во всем мире. Ну сколько можно ждать, когда выйдет второе издание? В конце концов, прошло уже десять лет! двадцать 8 Авторы/разработчики книги об авторах Элизабет — программист, писатель и преподаватель. Она влюблена в свою работу еще с времен учебы в Йельском университете, где получила степень маги- стра в области компьютерных технологий, а также создала параллельный визуальный язык программи- рования и программную архитектуру. Элизабет участвовала в создании популярного сайта Ada Project — одного из первых, помогающих найти женщинам информацию о работе и образовании в об- ласти компьютерных технологий. Она стала одним из учредителей WickedlySmart — компании, работающей в области интернет-образо- вания на базе веб-технологий. Здесь она пишет книги, статьи, создает видеокурсы и т. д. Ранее Элизабет за- нимала должность директора по специальным про- ектам в O’Reilly Media и разрабатывала семинары и курсы дистанционного обучения по разным техниче- ским темам, помогающие людям разобраться в новых технологиях. До прихода в O’Reilly Элизабет рабо- тала в The Walt Disney Company, где она руководила исследованиями и разработками в сфере цифровых мультимедийных технологий. Когда Элизабет не сидит за компьютером, она зани- мается велоспортом и греблей, фотографирует или готовит вегетарианские блюда. С ней можно связаться по адресу