Menu
Coddy logo textTech

Receiver auswählen

Teil des Abschnitts Logik & Ablauf der GO-Journey von Coddy — Lektion 9 von 68.

Nachdem Sie nun sowohl Value- als auch Pointer-Receiver verstehen, stellt sich die entscheidende Frage: Wann sollten Sie welchen verwenden? Die Entscheidung hängt davon ab, was Ihre Methode mit dem Receiver tun muss.

Verwenden Sie einen Pointer-Receiver, wenn Ihre Methode die ursprüngliche Struct ändern muss. Da Pointer-Receiver mit der tatsächlichen Struct-Instanz arbeiten, bleiben alle innerhalb der Methode vorgenommenen Änderungen nach dem Beenden der Methode bestehen. Dies ist unerlässlich für Methoden, die Felder aktualisieren, den Zustand ändern oder Operationen ausführen, die sich auf die ursprünglichen Daten auswirken sollen.

Verwenden Sie einen Value-Receiver, wenn Ihre Methode Daten aus dem Struct nur lesen muss, ohne sie zu ändern. Value-Receiver arbeiten mit einer Kopie. Daher eignen sie sich perfekt für Methoden, die Werte berechnen, Ausgaben formatieren oder Operationen durchführen, die keine Änderung am ursprünglichen Struct erfordern. Sie bieten zudem Sicherheit, indem sie garantieren, dass die ursprünglichen Daten unverändert bleiben.

Als allgemeine Regel gilt: Wenn Ihre Methode das Struct ändert, verwenden Sie einen Pointer-Receiver. Wenn Ihre Methode nur aus dem Struct liest, verwenden Sie einen Value-Receiver. Dieser Ansatz macht die Absichten Ihres Codes deutlich und hilft dabei, unbeabsichtigte Änderungen an Ihren Daten zu verhindern.

quiz iconTeste dich selbst

Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.

quiz iconTeste dich selbst

Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.

quiz iconTeste dich selbst

Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.

Spickzettel

Verwenden Sie einen Pointer-Receiver, wenn Ihre Methode das ursprüngliche Struct ändern muss:

  • Änderungen, die innerhalb der Methode vorgenommen werden, bleiben nach Rückkehr der Methode bestehen
  • Unerlässlich für Methoden, die Felder aktualisieren oder den Zustand ändern

Verwenden Sie einen Value-Receiver, wenn Ihre Methode nur Daten aus dem Struct lesen muss:

  • Arbeitet mit einer Kopie, sodass die ursprünglichen Daten unverändert bleiben
  • Perfekt für Methoden, die Werte berechnen oder die Ausgabe formatieren
  • Bietet Sicherheit, indem garantiert wird, dass keine unbeabsichtigten Änderungen vorgenommen werden

Allgemeine Regel: Wenn Ihre Methode das Struct ändert, verwenden Sie einen Pointer-Receiver. Wenn Ihre Methode nur aus dem Struct liest, verwenden Sie einen Value-Receiver.

Probier es selbst

Diese Lektion enthält keine Programmieraufgabe.

quiz iconTeste dich selbst

Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.

Alle Lektionen in Logik & Ablauf