Введение

Американский инженер-программист Кент Бек (род. 1961) — американский инженер-программист и создатель экстремального программирования, основополагающего документа для гибкой разработки программного обеспечения. Экстремальные и гибкие методологии тесно связаны с методологией разработки через тестирование (TDD), одним из главных сторонников которой является Бек. Бек был пионером в области разработки шаблонов проектирования программного обеспечения, а также в коммерческом применении Smalltalk. Он разработал фреймворк модульного тестирования SUnit для Smalltalk, который положил начало серии фреймворков xUnit, в частности JUnit для Java, созданного Беком совместно с Эрихом Гаммой. Бек вместе с Уордом Каннингемом, изобретателем вики, популяризировал CRC-карты. В настоящее время он проживает в Сан-Франциско, Калифорния, а ранее работал в Facebook. В 2019 году Бек присоединился к Gusto в качестве эксперта и коуча по программному обеспечению, где он обучает инженерные команды при создании систем расчета заработной платы для малого бизнеса.

История

Бек учился в Университете Орегона с 1979 по 1987 год, получив степени бакалавра и магистра наук в области компьютерных и информационных наук. В 1996 году Бека наняли для работы над комплексной системой вознаграждения Chrysler. Бек, в свою очередь, пригласил Рона Джеффриса. В марте 1996 года команда разработчиков оценила, что система будет готова к внедрению в производство примерно через год. В 1997 году команда разработчиков перешла к методу работы, который впоследствии был формализован как экстремальное программирование. Цель поставки в течение года была почти достигнута, а фактическая поставка задержалась лишь на несколько месяцев.

Избранные статьи

1987. "Использование языков образов для объектно-ориентированных программ". С Уордом Каннингемом. OOPSLA'87. 1989. "Лаборатория для обучения объектно-ориентированному мышлению". С Уордом Каннингемом. OOPSLA'89. 1989. "Простое тестирование Smalltalk с использованием образов". Фреймворк SUnit, начало семейства фреймворков xUnit.