Ermessenssache. Ich spare gerne Variablen, wenn ich den ihr zugewiesenen, berechneten Wert im Anschluss nur ein weiteres Mal verwende - am liebsten dann, wenn der Methodenaufruf zur Berechnung des Wertes auch einen brauchbaren Namen hat. Ab einer Schachtelung von so 3-4, manchmal 5 Ausdrücken leidet die Lesbarkeit aber zuweilen, weswegen ich dort dann gucke, dass ich semantisch sinnvoll aufteile. Einfach schon, um ggf. Zwischenschritte nachher nicht zu übersehen. Auch bei längeren Stringliteralen in so einer "Wurst".
Sobald ich einen Wert in diesem Scope auch nur 2 Mal brauche, mache ich eine Variable draus. Allein schon weil ich mich dann besser fühle, weil weniger CPU Zyklen verbraten
. (Ausnahme: Aufrufe von Length() und ähnlichen, die dank Compilermagic ähnlich billig sind, und der Funktionsname klar macht, was ich da gerade tu.)
So im Schnitt komme ich pro Methode selten auf mehr als 3-6 Variablen (ohne Mehrfachverwendungen für verschiedene Aufgaben, sowas mache ich nicht, allein schon weil es eine sinnvolle "Benamsung" erschwert). Begünstigt wird das vor allem auch dadurch, dass ich meine Methoden so klein wie möglich zu halten versuche.
"When one person suffers from a delusion, it is called insanity. When a million people suffer from a delusion, it is called religion." (Richard Dawkins)