Golang Constructor Like Functions

Golang Constructor Like Functions
GO n'est pas un langage de programmation orienté objet, du moins pas dans les modèles de POO traditionnels. Il emprunte certaines fonctionnalités et fournit des instances qui se croisent à OOP. Bien que cela puisse être une migration intimidante, en particulier pour le développeur des langues OOP, il le compense avec sa simplicité.

Dans cet article, nous discuterons de la façon de créer un constructeur dans GO en utilisant des fonctions natives.

Fonctions de type constructeur

Définissons une structure simple comme indiqué dans le code ci-dessous:

Tapez user struct
Chaîne de noms
Âge int
Salaire float64

À partir de la structure, nous pouvons créer une fonction comme le constructeur comme indiqué dans l'exemple:

func user_info (nom de nom, âge int, salaire float64) * utilisateur
u: = nouveau (utilisateur)
u.Nom = nom
u.Âge = âge
u.Salaire = salaire
retour u

Ce qui précède créera une fonction de type constructeur à partir du type d'utilisateur. Si nous vérifions le type, nous devons obtenir:

fmt.Println (réfléchir.Typeof (user_info ("Jonathan Archer", 45, 140000.33)))
*principal.Utilisateur

Comme vous le voyez, la façon de créer des constructeurs en Go est de créer des fonctions qui renvoient un pointeur oObject.

Un exemple de fonction est le spectacle:

func (u * utilisateur) init (nom de nom, âge int, salaire float64)
u.Nom = nom
u.Âge = âge
u.Salaire = salaire

Nous pouvons utiliser la fonction comme:

Utilisateur: = nouveau (utilisateur)
utilisateur.Init ("Jonathan Archer", 45, 140000.33)
fmt.Printf ("% s:% d:% f \ n", utilisateur.Nom, utilisateur.Âge, utilisateur.Salaire)

Conclusion

Dans cet article, nous avons exploré comment introduire la POO dans GO en utilisant des structures et des fonctions qui renvoient un pointeur.