in reply to Performance v's Maintainability

I almost never ask "Which approach has better performance?" I've been developing a feel for that anyway. I almost always go for code simplicity and maintainability. As perrin says, make sure you stick with Once and Only Once.

If you're having measurable performance issues after that, profile. Otherwise, the best we can do guess. I tend to be wildly wrong when playing guess the bottleneck.