Dasselbe und das Gleiche
Dasselbe und das Gleiche

Manchmal müssen wir in unseren Anwendungen den Benutzer dabei unterstützen bestehende Daten zu kopieren. Allein dieser Umstand sollte uns zu denken geben, hierbei handelt es sich wahrscheinlich um einen Design-Fehler im Datenmodell.

Sollten wir aber dennoch zu der Entscheidung kommen dem Benutzer einen Dupliziervorgang anzubieten, müssen wir das auch richtig implementieren. Eine Kopie muss gleich dem Original sein. Das bedeutet, dass jedes einzelne Feld mit dem entsprechenden Feld im Original übereinstimmt. Die Kopie ist dann gleich dem Original. Die Kopie ist eine eigene Instanz, aber sie ist nicht dasselbe.

Wenn wir uns nicht daran halten, verletzen wir das Prinzip der kleinsten Überraschung. Wenn wir uns nicht daran halten ist dies kein Spezialfall - extra für unsere Anwendung die sich der Benutzer doch wohl wird merken können. Nein, es ist dann schlicht und einfach fehlerhafte Software.

Manche Programmiersprachen haben für dasselbe und das Gleiche sogar eine eigene Notation1.


  1. Im Java etwa unterscheiden wir zwischen == und Object.equals(), im Javascript gibt es die Vergleichsoperatoren == und === usw.