Читать «Рефакторинг с использованием шаблонов» онлайн - страница 6

Джошуа Кериевски

От издательства

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

Мы ждем ваших комментариев и надеемся на них. Вы можете прислать нам бумажное или электронное письмо либо просто посетить наш Web-сервер и оставить свои замечания там. Одним словом, любым удобным для вас способом дайте нам знать, нравится или нет вам эта книга, а также выскажите свое мнение о том, как сделать наши книги более интересными для вас.

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

E-mail: info@williamspublishing. com

WWW: http: //www.williamspublishing.com

Информация для писем: из России: 115419, Москва, а/я 783

из Украины: 03150, Киев, а/я 152

Трейси, Саше и Софии

• примеры различных способов реализации одного и того же шаблона;

• советы о том, когда следует проводить рефакторинг: добавляя в него шаблоны, изменяя использование шаблонов или отказываясь от шаблонов вовсе.

Чтобы помочь отдельным лицам или группам изучить 27 реорганизаций кода из этой книги, на обратной стороне обложки вы найдете рекомендуемую последовательность изучения.

Кому следует читать эту книгу

Книга предназначена для объекто-ориентированных программистов, занятых или интересующихся улучшением существующего проекта. Одни из них используют шаблоны и/или выполняют рефакторинг, но никогда не реализуют шаблоны в процессе реорганизации; другие мало знакомы с реорганизацией кода и шаблонами и хотели бы узнать об этом больше.

Книга полезна как при разработке “с чистого листа”, когда вы пишете новую систему или функцию с нуля, так и при сопровождении, когда вы в основном поддерживаете унаследованную систему.

Какие знания вам необходимы

В книге предполагается, что вы знакомы с такими концепциями проектирования, как сильное связывание (tight coupling) и слабое связывание (loose coupling), а также с объектно-ориентированными понятиями наследования (inheritance), полиморфизма (polymorphism), инкапсуляции (encapsulation), композиции (composition), интерфейса (interface), абстрактных и конкретных классов (abstract class, concrete class), абстрактных и статических методов (abstract and static methods) и т.п.

Примеры, приведенные в книге, написаны на языке Java. Я считаю, что Java наиболее легко читаем для большинства объектно-ориентированных программистов. Я изо всех сил старался не использовать особенности Java, поэтому независимо от того, пишете ли вы на C++, С#, Visual Basic .NET, Python, Ruby, Smalltalk или другом объектно-ориентированном языке, вы сможете понять Java-код из этой книги.