Micke schrieb:
Der Thread war als Umfrage gestaltet, um die Grundhaltung einzufangen
Das erklärt aber nicht, warum Du offene Fragen nicht beantwortest.
Und Du hast sie übrigens, soweit ich sehe, noch immer nicht vollumfänglich beantwortet. Was ist denn nun das konkrete Beispiel?
Micke schrieb:
Auch weil ich bezweifel, daß sich nach einem Austausch die persönlichen Präferenzen ändern würden.
Es gibt aber 'ne Chance dazu zu lernen und auch neue Perspektiven dazu zu gewinnen. Das ist doch das Spannende dabei.
Ob man deshalb gleich ne Meinung ändert ist eher zweitrangig.
Micke schrieb:
Ein breaking change kann die Anpassung von abhängigem Code erfordern, um letzteren (wieder) lauffähig zu bekommen.
Und zählen nur originäre Sprachkonstrukte dazu oder auch Änderungen in der Standardbibliothek?
Oder die Art, wie Code ausgeführt wird?
Micke schrieb:
Und unsichere Codekonstrukte sind um vieles teurer als BCs.
Es hilft ja schon viel, um diese Schwächen zu wissen. Und wenn man diese Konstrukte mit Bedacht einsetzt und nicht wahllos, dann kann es ja auch ok sein.
Triviales Beispiel: Pointer-Arithmetik in C. Eigentlich eine Sache, die man aus Sicherheitsgründen nicht einsetzen sollte. Aber in manchen Szenarien (hardwarenahe Programmierung) nützlich.
Das einfach nur weg-breakchangen wäre also ein eher suboptimaler Weg.
Micke schrieb:
Die Kosten-Nutzen Frage setzt sich fort wenn man bedenkt, daß ein BC häufig von wenigen Teammitgliedern abgefrühstückt werden kann, danach aber das ganze Team effizienter ist.
Ich will Dir da gar nicht widersprechen. Ich finde nur, das man das pauschal gar nicht sagen kann. Vielleicht bedeutet ein Breaking-Change ja auch, das es ein Konstrukt gar nicht mehr gibt und das dann das Äquivalent gar nicht 1:1 einsetzen lässt. Und/oder Seiteneffekte hinzukommen/wegfallen. Dann kann sie Sache mit dem umschreiben komplizierter werden. Insbesondere bei komplexer Software.
Es ist schwierig dazu was zu sagen, wenn nicht mal konkret benannt wird, worüber man genau redet. "breaking change" ist einfach zu pauschal. Wenn man was mit Search&Replace abfrühstücken kann, sind die Vorbehalte gegen Breaking-Changes geringer als wenn das umfangreichere Änderungen nachsich zieht.
Das ist auch die Schwäche an der Umfrage. Sie erzwingt eine Entscheidung zu einem Thema, für die sich keine pauschale Entscheidung treffen lässt.
Tendenziell haben wir in den Programmiersprachen ja eher das Problem, das sich Features ansammeln und es dann schnell unübersichtlich wird oder so komplex, das man gar nicht alle Features bis ins Detail durchdringen kann. Das führt dann dazu, das jeder Programmierer nur seine "Lieblingsfeatures" einsetzt die aber nicht notwendigerweise die seines Kollegen sein müssen.
Weniger ist daher vielleicht manchmal sogar mehr. Auch wenn das in der ein oder anderen Situation die Dinge umständlicher macht.