Bei extrem kurzlebigen Objekten, für die ich nur eine Methode aufrufen muss, bin ich geneigt, den Methodenaufruf direkt an new
zu ketten. Ein sehr bekanntes Beispiel hierfür ist etwa wie folgt:Gibt es einen Grund, `new object(). Foo()` nicht zu verwenden?
string noNewlines = new Regex("\\n+").Replace(" ", oldString);
Der Punkt hier ist, dass ich keine Notwendigkeit für das Regex
Objekt habe, nachdem ich den einen Ersatz gemacht habe, und Ich mag diese Lage sein, auszudrücken als One-Liner. Gibt es ein nicht offensichtliches Problem mit diesem Idiom? Einige meiner Mitarbeiter haben sich damit unwohl gefühlt, aber ohne etwas, das wie ein guter Grund zu sein schien.
(Ich habe dies als C# und Java markiert, da das oben Idiom in beiden Sprachen verbreitet und nutzbar ist.)
Nur würde ich dies nicht tun, wenn das 'neue Objekt()' 'IDisposable' implementiert. Offensichtlich sieht 'Regex' mir nicht so gut aus. – SwDevMan81
@ SwDevMan81 - Sollte das als Antwort haben! – Reddog
@Reddog - Sollte haben :) – SwDevMan81