Moin Robert,
ein valides Gegenargument genannt: Wenn sich der Datentyp ändert, müsste man konsequenterweise auch überall den Bezeichner-Namen ändern
Absolut! Denkt man an der Stelle nicht weiter ist es ein Gegenargument! Aber jetzt denken wir mal weiter. Anstatt ein Array zurück zu geben, geben wir ein Objekt zurück. In meiner Welt muss aus einem $arBezeichnungs ein $objBezeichnung werden. In der Welt von Gunnar (und vielen anderen) muss aber AUCH aus einem $bezeichnungs ein $bezeichnung werden. Das S fällt weg. Somit müssen BEIDE Welten etwas am Bezeichner verändern. Somit kann man nicht sagen "das eine oder das andere ist besser". In einer Welt wo man seine Variablen durch nummeriert würde dieser Nachteil nicht auftreten $a1, $a2. (bin mal gespannt ob das jetzt jemand als Tipp versteht und dagegen argumentiert 🤣😂)
Hinzu kommt, dass man den Code ändern muss (sowohl in meiner als auch in allen anderen Welten). Funktioniert ein foreach noch? Oder wurde von einem Objekt auf ein Array geändert? Dann wurden vielleicht vorher Methoden aufgerufen? Oder ist es jetzt ein String und so weiter...
Objektorientierung heißt ja nicht umsonst auch "geschlossen für Veränderung". Wenn man etwas anderes zurück gibt als vorher erwartet wurde, hat man bei weitem andere Probleme als eine Datentypabkürzung. Und wenn man den Code an der Stelle sowieso schon umbauen muss, na dann kann man auch den Variablennamen anpassen...
Wenn man eine IDE als Grund anführt den Datentyp nicht anzugeben, da die IDE den Datentyp schon weißt, dann ist es nur legitim zu sagen, dass man über besagte IDE auch die Variablennamen ändern kann. Bei Phpstorm geht das mittels "Umschalt+f6". Dann werden alle gleichen Variablennamen im selben Kontext geändert. Ist kein Aufwand mehr. Brauche ich persönlich aber selten.
Wieso sollte man nur den Datentyp, aber nicht die Bedeutung einer Variablen wissen wollen?
Das eine schließt das andere nicht aus. Die Bedeutung ist doch wunderbar und ich hab nirgends geschrieben, dass man auf sie verzichten sollte.
Grüße zurück
Weltenbummler T-Rex