Question: I'm working on an iPhone app that we're localizing in both English and Japanese for our initial release. We frequently call `NSLocalizedString()` to load the appropriate localized string for display. Is it generally better to save the localized strings in instance variables for the next time we need them, or am I micro-optimizing here and should I just reload the string each time it's needed?

Answer: 
Micro-optimizing. First make it work, then make it right, then make it fast. And when you get to step 3, run Shark (or Instruments), then follow its guidance.
I suspect that you don't take too much of a performance hit. NSLocalizedString(key, comment) is a macro that converts to 

```
[[NSBundle mainBundle] localizedStringForKey:(key) value:@"" table:nil]

```

Without benchmarking, I have no idea how expensive this is, but I suspect it's not too bad. My feeling is that this won't be a performance bottleneck for you, but you can always run Shark or Instruments and see for yourself when you run your application on the device.