Datums berechnungen
-
@Th69 sagte in Datums berechnungen:
Mit "fluent" hat das aber nichts zu tun, da du jedesmal ein neues Objekt erzeugst.
Ja, aber so wie ich es hatte, wäre es fluent UND immutable. Manchmal ist auch immutable gewünscht.
-
@EinNutzer0 sagte in Datums berechnungen:
immutable
Du hast wieder mal keinen Plan mit welchen Wörtern du in der Gegend rumwirfst. Oder du weißt es und bist ein elendiglicher Troll. Derzeit meine favorisierte Theorie zu deiner Person.
-
@Th69 sagte in Datums berechnungen:
Mit "fluent" hat das aber nichts zu tun, da du jedesmal ein neues Objekt erzeugst.
So wäre es richtiger:Da bin ich auch anderer Meinung. Ich hätte das addDays() auch gerne const und sehe kein Problem damit, hier eine Kopie zurückzugeben. Ein Datum ist total billig zu kopieren.
Vielleicht habe ich auch zu viel mit pandas gearbeitet, aber ich vermeide inplace-Operationen sehr gerne. Da addDays vom Namen her misleading sein kann, wäre hier ggf.
operator+
besser. Aber dann braucht man wieder einen ordentlichen Typen für Tage... und so landen wir dann langsam bei einem Nachbau von chrono....
-
@wob sagte in Datums berechnungen:
und so landen wir dann langsam bei einem Nachbau von chrono....
DAS.
-
-
@Swordfish sagte in Datums berechnungen:
@EinNutzer0 sagte in Datums berechnungen:
immutable
Du hast wieder mal keinen Plan mit welchen Wörtern du in der Gegend rumwirfst. Oder du weißt es und bist ein elendiglicher Troll. Derzeit meine favorisierte Theorie zu deiner Person.
Eh, ich habe keine Lust, dir in Sachen fluent und immutable Nachhilfeunterricht zu geben. Die Begriffe lassen sich doch leicht nachlesen, wenn man sie noch nicht kennt. Insofern kannst du den Spott gern für dich behalten.
-
@EinNutzer0 sagte in Datums berechnungen:
Nachhilfeunterricht
Du gabst eine unsinnige Kopie zurück. Da stellt sich die Frage nichtmal. Und die Kopie ist mutable wie nur was.
<°)))><(
Da du ja so gerne nach Best Practices und Idiomen fragst: https://stackoverflow.com/a/4421719/3975177
-
@Swordfish sagte in Datums berechnungen:
Du gabst eine unsinnige Kopie zurück.
Bewusste Designentscheidung.
@Swordfish sagte in Datums berechnungen:
Und die Kopie ist mutable wie nur was.
Nö, wie willst du
time_t my_time;
denn ändern, ohne eine zusätzliche Klassen-Funktion, die nicht das tut, was sie soll?Jetzt beruhige dich einfach ein bisschen.
-
@EinNutzer0 sagte in Datums berechnungen:
Bewusste Designentscheidung.
Dein
Add...()
schaut aus wie einoperator+()
. Lies meinen Link.Nö, wie willst du time_t my_time; denn ändern, ohne eine zusätzliche Klassen-Funktion, die nicht das tut, was sie soll?
Das zurückgegebene Objekt an sich ist mutable. Ich sage ja daß du Worte verwendest die du nicht völlig verstehst oder nur trollen willst. qed.
Anyway, ich bin hier raus. Der nächste Thread kommt bestimmt.
-
@hustbaer sagte in Datums berechnungen:
Pandas?
Ist so eine (im Data-Science-Bereich) recht bekannte Python-Bibliothek. Diese hat unter anderem die Philosophie, dass fast alle Funktionen eine Kopie des gesamten Datensatzes zurückgeben, außer wenn man den Parameter
inplace=True
setzt. Als ich angefangen habe, habe ich vielinplace=True
genutzt, aber inzwischen verzichte ich darauf komplett. Das gibt viel weniger Probleme am Ende und viel weniger Überraschungen.
-
@wob Danke für die Erklärung
Ja, immutable ist schon nett. Ausser wenn es einem aufgezwungen wird und man überall wo man mutable State braucht greislichst drum rum arbeiten muss. Deswegen programmier ich auch immer noch lieber C++ als irgendwas funktionales.
Wobei ich zugeben muss dass ich den funktionalen Sprachen auch nie wirklich eine Chance gegeben habe. Bloss wenn ich mir ansehe was die z.T. für einen Tanz aufführen müssen für die einfachsten Dinge...
-
@hustbaer für alles krampfhaft C++ zu verwenden war lange auch mein Fehler. Mit anderen Sachen kommst du meistens gegebenenfalls schneller voran.
-
Hab mal was auf SO nachgelesen zum Thema immutable (link). Die letzte, von mir gezeigte Klasse ist eigentlich rock-solid (wenn man von einem const bei den public Funktionen absieht). Aber durch die beschränkte Funktionalität, kein Jahr angeben zu können, ist sie eigentlich praktisch nur bedingt brauchbar. Bitte bedenkt auch, dass ich ursprünglich aus einer anderen Programmiersparte komme. Von daher kann ich nicht alles wissen.
-
@eigenartig Ja, Meister
Ich hab nie geschrieben dass ich für alles krampfhaft C++ verwende.
Und deine deplatzierten & mMn. auch recht überheblichen Kommentare nerven schön langsam wirklich ziemlich.
-
@hustbaer Hey, du bist nicht der Einzige der die Voice haben kann und wenn es sich so anhört, dass du doch lieber in C++ was schnelles hinkriegen willst als mit Python (oder der Shell) dann ist das mMn. auch ziemlich "deplatziert". Jemand der beispielsweise Pandas nicht kennt, bzw. noch nie gehört hat (Panda-Augen dabei macht), der sollte sich schleunigst mal auch schlau machen, statt selbst die Leute hier anzueiern, dass sie dir nicht passen oder ihre Beiträge anstelle lieber sonst wo hinschieben.
Die Antwort finde ich jedenfalls nicht nett von dir. Zumals @SideWinder eigentlich Recht hat, dass jeder in einem gehobelten Maß über die Threads "drüberfahren" dürfen sollte.
-
@eigenartig
Ich glaube du spinnst einfach ein bisschen.
Ich habe nicht versucht irgendjemandem seine "Voice" zu nehmen.
Ich habe nicht versucht Pandas oder Python schlecht zu machen.
Ich habe lediglich meine Abneigung gegenüber rein funktionalen Sprachen zum Ausdruck gebracht. Und dass ich lieber C++ schreibe als mich damit rumzuschlagen.
Wo ist das Problem?
Vielleicht bei dir? Nein, sicher nicht. Kann nicht sein.
-
Kann auch nicht sein ich hab ja auch nicht gesagt dass du Pandas schlecht machst. Nur nicht kennst. Und noch nicht davon gehört hast.
-
@hustbaer sagte in Datums berechnungen:
Ich habe lediglich meine Abneigung gegenüber rein funktionalen Sprachen zum Ausdruck gebracht. Und dass ich lieber C++ schreibe als mich damit rumzuschlagen.
dito. prost.
-
@eigenartig
Ja, du bist der beste.
Geh und kauf dir ein Bier drum.
-
@hustbaer Danke aber ohne euch hätte ich es nie ganz da geschafft wo ich jetzt bin.