Читаем Экстремальное программирование полностью

Кент был среди тех руководителей компании Tektronix, которые осознали огромный потенциал, заложенный в методике программирования в связанных парах при разработке сложных инженерных приложений в среде Smalltalk. Вместе с Бардом Каннингхемом (Ward Cunningham) Кент стал вдохновителем развития методики программирования по образцам (ее еще называют программированием с использованием паттернов – patterns programming[1], которая в значительной степени повлияла на мою собственную карьеру. В рамках ХР описывается подход к разработке программного обеспечения, который сочетает в себе методики, используемые многочисленными успешно работающими разработчиками, которые изучили множество литературы, посвященной организации труда программистов, и опробовали на практике множество методов и процедур разработки программного продукта. Как и программирование по образцам, ХР формирует набор наиболее эффективных методик, таких как тестирование программных модулей, программирование парами и переработка кода. В рамках ХР эти методики скомбинированы таким образом, чтобы дополнять и часто контролировать друг друга. Основная цель данной книги – рассказать о взаимодействии и совместном использовании различных методик. У всех методик программирования одна цель – создание программного продукта с заданной функциональностью к заданному сроку. Предлагаемый OTI весьма успешный процесс Just In Time Software не является ХР в чистом виде, однако между этими двумя подходами очень много общего.

Я сотрудничал с Кентом и использовал описанные в рамках ХР эпизоды при работе над небольшим, но небезызвестным проектом под названием JUnit[2]. Его взгляды и подходы к разработке программ всегда за ставляли меня задумываться над тем, как лично я привык работать над программным проектом. Без сомнения, ХР ставит под вопрос многие традиционные подходы, используемые в индустрии программирования. Прочитав данную книгу, вы сможете самостоятельно решить, надо ли вам применять ХР в своей работе или нет.

Эрих Гамма (Erich Gamma)

<p>Введение</p>

Эта книга об экстремальном программировании (eXtreme Programming, XP). Экстремальное программирование – это упрощенная методика организации производства для небольших и средних по размеру команд специалистов, занимающихся разработкой программного продукта в условиях неясных или быстро меняющихся требований. Данная книга предназначена для того, чтобы помочь определить, оправдано ли применение ХР в вашей ситуации.

Для многих ХР выглядит набором вполне приемлемых и оправданных с точки зрения здравого смысла методов организации труда. Тогда почему программирование в соответствии с методиками ХР называется экстремальным? Дело в том, что ХР доводит использование многих общепринятых и широко используемых принципов программирования до экстремальных уровней.

• Если пересмотр кода – это хорошо, значит, мы будем пересматривать код постоянно (программирование парами);

• Eсли тестирование – это хорошо, каждый участник проекта будет тестировать код программы постоянно (тестирование модулей), даже заказчики (функциональное тестирование);

• Eсли проектирование – это хорошо, значит, проектирование надо сделать составной частью повседневной работы каждого из участников проекта (переработка кода);

• Eсли простота – это хорошо, значит, мы должны сохранять в системе наиболее простой дизайн, обеспечивающий текущий требуемый уровень функциональности (наиболее простая вещь, которая, скорее всего, сработает); если архитектура важна, значит, каждый из участников проекта будет постоянно работать над определением и пересмотром архитектуры (метафора);

• Eсли интеграционное тестирование важно, значит, необходимо собирать и тестировать разрабатываемую систему несколько раз на дню (продолжающаяся интеграция);

• Eсли небольшие итерации – это хорошо, необходимо сделать итерации очень, очень маленькими – секунды, минуты, может быть часы, но не недели и месяцы, и ни в коем случае не годы (игра в планирование).

Когда я впервые решил сформулировать для себя суть ХР, я представил себе набор рукояток на пульте управления. Каждая рукоятка соответствовала некоторой методике, о которой из своего личного опыта я знал, что она вполне эффективна. Каждая рукоятка позволяла использовать ту или иную методику в определенной степени: от 1 до 10. Я попробовал установить все рукоятки в максимально возможное положение (10) и с удивлением обнаружил, что полный набор рассматриваемых мной методик остается стабильным, предсказуемым и гибким.

ХР формирует два набора обещаний:

Перейти на страницу:

Похожие книги

Иная жизнь
Иная жизнь

Эта книга — откровения известного исследователя, академика, отдавшего себя разгадке самой большой тайны современности — НЛО, известной в простонародье как «летающие тарелки». Пройдя через годы поисков, заблуждений, озарений, пробившись через частокол унижений и карательных мер, переболев наивными представлениями о прилетах гипотетических инопланетян, автор приходит к неожиданному результату: человечество издавна существует, контролируется и эксплуатируется многоликой надгуманоидной формой жизни.В повествовании детективный сюжет (похищение людей, абсурдные встречи с пришельцами и т. п.) перемежается с репортерскими зарисовками, научно-популярными рассуждениями и даже стихами автора.

Владимир Ажажа , Владимир Георгиевич Ажажа

Альтернативные науки и научные теории / Прочая научная литература / Образование и наука
100 великих загадок Африки
100 великих загадок Африки

Африка – это не только вечное наследие Древнего Египта и магическое искусство негритянских народов, не только снега Килиманджаро, слоны и пальмы. Из этой книги, которую составил профессиональный африканист Николай Непомнящий, вы узнаете – в документально точном изложении – захватывающие подробности поисков пиратских кладов и леденящие душу свидетельства тех, кто уцелел среди бесчисленных опасностей, подстерегающих путешественника в Африке. Перед вами предстанет сверкающий экзотическими красками мир африканских чудес: таинственные фрески ныне пустынной Сахары и легендарные бриллианты; целый народ, живущий в воде озера Чад, и племя двупалых людей; негритянские волшебники и маги…

Николай Николаевич Непомнящий

Приключения / Научная литература / Путешествия и география / Прочая научная литература / Образование и наука