Sobes.tech
Junior — Middle

Quels principes fondamentaux de développement logiciel appliques-tu dans ton travail?

sobes.tech IA

Réponse de l'IA

Les principes fondamentaux du développement logiciel que j'applique :

  • Code propre : j'écris un code facile à lire et à maintenir, en utilisant des noms clairs pour les variables et les fonctions.
  • Principe de responsabilité unique (SRP) : chaque fonction ou module est responsable d'une seule tâche.
  • DRY (Ne vous répétez pas) : j'évite la duplication de code, en extrayant les parties répétitives dans des fonctions ou des packages.
  • Testabilité : j'écris des tests unitaires pour les composants clés afin d'assurer la fiabilité.
  • Idempotence et gestion des erreurs : je gère correctement les erreurs et exceptions pour que l'application ne plante pas.
  • Utilisation d'interfaces : pour l'abstraction et la facilité de remplacement des implémentations.

Exemple en Go illustrant le principe de responsabilité unique et l'utilisation d'interfaces :

package main

import "fmt"

type Notifier interface {
    Notify(message string) error
}

type EmailNotifier struct {}

func (e EmailNotifier) Notify(message string) error {
    fmt.Println("Envoi d'un email avec le message :", message)
    return nil
}

func SendAlert(n Notifier, msg string) {
    err := n.Notify(msg)
    if err != nil {
        fmt.Println("Erreur lors de l'envoi de la notification :", err)
    }
}

func main() {
    email := EmailNotifier{}
    SendAlert(email, "Le serveur est en panne !")
}

Cette approche facilite la maintenance et l'extension du code.