As an interesting addendum to the three day conference we proudly present a full day
tutorial with Martin Fowler.
New ! Download the keynotes from this session rigth here...
Martin Fowler is an independent software consultant. he
specializes in helping corporations use object technology for
business information systems; both with introducing object technology
and helping clients with complex projects. his principal work lies in
building business objects: from requirements sessions with customers
and users, to design and programming with software developers. he
also consult on the UML, patterns, refactoring, and project
management for incremental development. His Clients clients have
included Citibank, Chrysler, the UK National Health Service, and,
Andersen Consulting.
Almost every expert in Object-Oriented Development stresses the
importance of iterative development. As you proceed with the
iterative development, you need to add function to the existing code
base. If you are really lucky that code base is structured just right
to support the new function while still preserving its design
integrity. Of course most of the time we are not lucky, the code does
not quite fit what we want to do. You could just add the function on
top of the code base. But soon this leads to applying patch upon
patch making your system more complex than it needs to be. This
complexity leads to bugs, and cripples your productivity.
Refactoring is all about how you can avoid these problems by
modifying your code in a controlled manner. Done well you can make
far reaching changes to an existing system quickly, and without
introducing new bugs. You can even take a procedural body of code and
refactor it into an effective object-oriented design. With
refactoring as part of your development process you can keep your
design clean, make it hard for bugs to breed and keeping your
productivity high.
In this tutorial I'll go through much of things you need to know
to succeed with refactoring. We'll start with a live example where
we'll watch some code get refactored, so you can get a sense of how
the process goes. We'll move on to discuss where refactoring came
from, when and where to use it, and how to set up a proper test base.
We will also look in detail at the "bad smells" that you
find in code, and what refactorings you should use to fix the.
Biography
Abstract