Refactoring Smalltalk Programs

3/17/97


Click here to start


Table of Contents

Refactoring Smalltalk Programs

Summary of Course

Software Maintenance

The Lie (aka: The Waterfall Model)

Reality “Build one to throw away.” - Fred Brooks

Evolutionary Software Development “Grow, don’t build software.” - Fred Brooks

Definition of Refactoring Interface design and functional factoring constitute the key intellectual content of software and are far more difficult to create or re-create than code. - Peter Deutch

A Simple Refactoring

Refactorings

Where Refactorings Come From

Patterns & Refactoring

Renaming Items

Extract Method

Move Code to Component

System Development

Strategies

Eliminate Duplication “[I refactor] any time/place I say something more than once” - Kent Beck

Large Methods

Method Object

Large Classes

Standard Idioms

Reduce Subclassing

Techniques

References

References (2)

URLs

Author: Don Roberts & John Brant

Email: droberts@cs.uiuc.edu & brant@cs.uiuc.edu

Home Page: http://st-www.cs.uiuc.edu/~brant/Refactory