Wann Eigenschaftsmethode und wann reguläre Methode verwenden?
-
Prof84 schrieb:
Weil Du mit 4f Param zur Darstellung des recht auskommt statt mit 8f.
Blurry?
-
volkard schrieb:
Prof84 schrieb:
Weil Du mit 4f Param zur Darstellung des recht auskommt statt mit 8f.
Blurry?
Hab ich auch nicht ganz kapiert ^^
-
Falke88 schrieb:
Hab ich auch nicht ganz kapiert ^^
Was ist denn daran so schwer zu kappieren?
Du kannst ein Rect mit vier Werten darstellen, 4 Punkte in 2D nur mit 8 Werte.
Das solution constraint Rect vereinfacht die API.
-
Prof84 schrieb:
Falke88 schrieb:
Hab ich auch nicht ganz kapiert ^^
Was ist denn daran so schwer zu kappieren?
Du kannst ein Rect mit vier Werten darstellen, 4 Punkte in 2D nur mit 8 Werte.
Das solution constraint Rect vereinfacht die API.Hat leider nix mit der Frage zu tun, warum mal als Property und mal als Funktion.
Du hast evtl darauf geantwortet, warum man bei GetGlobalBounds() 4 floats statt 2 Points zurückgibt, wobei auch da unklar bleibt, woher Du die 8 aus dem Hut gezaubert hast.Prof84 schrieb:
Das solution constraint Rect vereinfacht die API.
Diese Scheiße erinnert zwar irgendwie an die englische Sprache, aber auch sie trägt nichts zur Lösung bei. Es war nie gefragt, wozu man GetGlobalBounds() braucht.
-
Prof84 schrieb:
Was ist denn daran so schwer zu kappieren?
Warum Du Dich in einem Fachforum für Programmierer rumtreibst.
-
Gemach Männer
Ja wie gesagt, meine Frage war nicht der Sinn der Methoden sondern wieso man mal Eigenschaftsmethoden und mal Methoden nimmt um Felder zu erhalten.
Ich erkenne den winzigen syntaktischen Vorteil einer Eigenschaftsmethode - aber semantisch sehe ich wenig Unterschied. Als Beispiel ist ja oben "Position" und "GetGlobalBounds()" genannt.
-
In diesem Fall ist GetGlobalBounds() vermutlich eine Methode, um zu kommunizieren dass der zurückgegebene Wert erst berechnet werden muss.
-
hustbaer schrieb:
In diesem Fall ist GetGlobalBounds() vermutlich eine Methode, um zu kommunizieren dass der zurückgegebene Wert erst berechnet werden muss.
Ah ok verstehe. D.h. das die der return Wert schon einiges mehr an Anweisungen enthält die dann zum eigentlichen Rückgabewert führen?
Man kann das Ganze bestimmt auch in eine Property packen, aber vielleicht ist es Design-technisch oder sogar performance-technisch nicht gern gesehen?
-
Naja in der Get-Func wird Logik drin sein, oder sie hat überladungen.. etc.
Oder es wurde einfach nich sauber nach Konventionen gearbeitet, ... !
...
-
Falke88_tmp schrieb:
Man kann das Ganze bestimmt auch in eine Property packen,
Genau
Falke88_tmp schrieb:
aber vielleicht ist es Design-technisch oder sogar performance-technisch nicht gern gesehen?
Nicht gern gesehen? ... keine Ahnung.
Ich weiss nur dass es APIs gibt die sich an die Regel halten "wenns (aufwendig) berechnet werden muss, dann nicht als Property". Gibt aber sicher APIs die quasi alles was irgendwie Sinn macht, egal ob es teuer berechnet werden muss oder nicht, als Property anbieten.
Und wieder welche wo so-gut-wie keine Properties verwendet werden.Ich persönlich finde die Regel gut, dass Dinge wo es den Anwender "überraschen" könnte dass sie so lange brauchen wie sie brauchen keine Property-Getter sind sondern eben Funktionen.
Wobei ich in diesem Fall nicht sagen kann ob das der Grund ist. Ich kann mir nur keinen anderen Grund vorstellen.