Ma version du bloc note

Bonjour à tous,
Avant tout, bien que convaincu de l’apport de cette formation, en lisant plusieurs post ici et là, je suis certains qu’avec de la motivation et de la motivation et beaucoup de motivation et un soupçon de motivation… J’y arriverai lol
Toujours est il que j’aimerai avoir votre avis sur ma version (qui est vraiment très loin d’être parfaite) du bloc note. J’ai vu la correction de Maxime, mais le but de ce post est de savoir quelles sont mes erreurs, et pourquoi…
Merci à vous

   import UIKit

class ViewController: UIViewController {
    
    // variables
    @IBOutlet var tfldNouvelleNote : UITextField!
    @IBOutlet var txtListeNote : UITextView!
    
    // Pour la sauegarde des données utilsateur
    var monBlock = Foundation.UserDefaults.standard

    override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view, typically from a nib.
        
        // affiche la sauvegarde au chargement de la page
        txtListeNote.text = monBlock.string(forKey: "key")
    }

    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Dispose of any resources that can be recreated.
    }

    
// Fonction
    // Ajoute une note et effectue une sauvegarde
    @IBAction func ajouterNote(sender:UIButton) {
        if tfldNouvelleNote.text != "" {
            txtListeNote.text! += "\n" + tfldNouvelleNote.text!
            monBlock.set(txtListeNote.text!,forKey: "key")
            tfldNouvelleNote.text = ""
        }
    }
    
    // Efface toute les champs et la sauvegarde
    @IBAction func effecerTout (sender: UIButton) {
        tfldNouvelleNote.text = ""
        txtListeNote.text = ""
        monBlock.removeObject(forKey: "key")
    }
    
//
}

Dans l’ensemble c’est bien, c’est d’ailleurs assez similaire à ma correction je pense.
Voici quelques points à améliorer :

  • Déballer des optionnels avec des points d’exclamation -> danger
  • nomme bien tes variables et tes clés (le nom doit indiquer à quoi sert la variable)
  • tu auras une ligne vide au début de chaque bloc note si je ne me trompe pas

Bonjour et merci pour tes éléments de réponse.
Va falloir que je revois le chapitre sur les optionnels, car Xcode m’oblige à mettre ces points d’exclamation.
Pour les variables pas de soucis, et en ce qui concerne le ligne vide, j’ai effectivement vu ta méthode sur la correction…
Par contre j’ai vu que tu utilisais le “self” sur les variables, alors que moi non, en quoi est- ce different dans mon cas ?

Oui, on en a justement parlé il y a quelques jours du self : Session 41 : précisions demandées