Menu
Coddy logo textTech

Méthodes vs Fonctions

Fait partie de la section Logique & Flux du Journey GO de Coddy — leçon 10 sur 68.

Bien que les méthodes et les fonctions effectuent toutes deux des opérations en Go, elles servent des objectifs différents et ont des schémas de déclaration distincts. Comprendre cette différence est crucial pour écrire un code clair et organisé.

Une fonction est autonome et indépendante. Elle n'appartient à aucun type spécifique :

func calculateArea(width, height float64) float64 {
    return width * height
}

Une méthode est rattachée à un type spécifique via un récepteur. Elle appartient à ce type et peut accéder à ses données :

func (r Rectangle) area() float64 {
    return r.Width * r.Height
}

La différence clé réside dans la manière dont vous les appelez. Les fonctions sont appelées directement par leur nom, tandis que les méthodes sont appelées sur des instances de leur type associé en utilisant la notation par point. Cette association rend les méthodes parfaites pour définir des comportements qui appartiennent naturellement à vos types personnalisés, tandis que les fonctions conviennent bien aux opérations d'usage général qui n'ont pas besoin d'être liées à des structures de données spécifiques.

quiz iconTestez-vous

Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.

quiz iconTestez-vous

Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.

quiz iconTestez-vous

Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.

Aide-mémoire

Une fonction est autonome et indépendante :

func calculateArea(width, height float64) float64 {
    return width * height
}

Une méthode est rattachée à un type spécifique via un récepteur :

func (r Rectangle) area() float64 {
    return r.Width * r.Height
}

Les fonctions sont appelées directement par leur nom, tandis que les méthodes sont appelées sur des instances en utilisant la notation par point.

Essayez vous-même

Cette leçon ne comprend pas de défi de code.

quiz iconTestez-vous

Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.

Toutes les leçons de Logique & Flux