Was ist Ihrer Meinung nach besser in Bezug auf eine gute Codierung?Objektorientierte Programmierung: Gibt es eine andere Möglichkeit, Objekte zu erstellen?
Wenn ich ein Objekt erstellen, werde ich neues Schlüsselwort verwenden, um eine Instanz dieser Klasse zu erstellen.
var objA = new A()
Wenn ich erstellen ein Objekt durch einen statischen Methodennamen createa in einer Klasse zu schaffen und ein Objekt eines erstellen, indem CreateNewA oder CreateInstance anstelle neuer A() aufrufen.
var objA = A.CreateNewA() instead of var objA = new A().
Die A.CreateNewA() würde es den Code lesbarer machen. Der Nachteil davon ist, dass ich eine statische Methode namens CreateNewA erstellen muss.
Was Sie beschreiben, ist eine Fabrikmethode. Aber ehrlich: Was lässt Sie denken, dass dies den Code lesbarer macht? Wie Sie bereits gesagt haben, müssen Sie mehr Code schreiben und deshalb müssen Sie mehr Code lesen. Das Nächste ist, dass jedes Objekt eine solche statische Methode zu Ihrer Argumentation haben muss ... – lokusking
Ich denke, dass die statische Methode, die Sie in der Klasse erstellt haben, den Code nicht lesbarer macht, also sind die ersten Optionen besser und Sie können weniger Code schreiben . –
True ... Oh coz Ich habe ein Thrift-Struct, das mit einem Datenobjekt in meinem anderen Code gemappt ist. Wenn ich CreateA für ein Mapping genannt habe, dann weiß ich, wenn ich es lese, dass es keine neue Kopie von Objekt A erzeugt intern erstellt ein Objekt A. Wenn ich CreateNewA nannte, dann wenn ich es lese, es ausdrücklich sagen, ein neues A-Objekt erstellen. – LittleFunny