XP123Services → Course: Refactoring Workout
Training and Consulting   Games   XPlorations   ... More

Refactoring Workout

Premise

Duplication and complexity—who needs those headaches?

Refactoring lets you systematically improve your code without changing what it does. Code that merely works will mature into sparkling, easy-to-understand code that you can be proud of.

Refactoring requires you to develop two things:

  • A nose for “smells” (potential problems)
  • Facility in making safe transformations

The heart of this class will be hands-on work, in pairs, on code in need of improvement. Just for fun, we’ll throw in a little competition and a door prize or two.

You will get...

  • Practice identifying smells
  • Practice in working with a partner to think about code
  • Hands-on practice addressing problems by refactoring

Format

  • Half day.
  • Mix of lecture, exercises, and discussion.

Background Reading

Refactoring: Improving the Design of Existing Code, by Martin Fowler et al.

Refactoring Workbook, by William C. Wake. Addison-Wesley, 2003.

Audience

  • Beginning to intermediate refactorers
  • Java programmers (though we won’t use J2EE or anything too fancy)

Bring a laptop if you can, with Java, an IDE (of any kind), and JUnit installed and working. If you don’t have a laptop, that’s OK—we’ll pair you with someone who does. Either way, please contact William.Wake@acm.org and let him know what you’ll be doing.

Offerings

Offered at XP/Agile Universe '03.

Facilitator

William Wake (William.Wake@acm.org, www.xp123.com) is an independent consultant interested in agile methods, patterns, and human-computer interaction. He is the author of Extreme Programming Explored and the Refactoring Workbook.

Also of Interest

Extreme Programming Explored - A two- or five-day introduction to XP.

Consulting services

Copyright 1994-2006, William C. Wake - William.Wake@acm.org