En Swift, les classes peuvent hériter les unes des autres pour étendre leur comportement. Dans l’exemple suivant, la classe Fille, sans contenir le moindre code spécifique, peut hériter automatiquement des propriétés, méthodes et constructeurs de la classe Mère.
class Fille : Mère { }
Toutefois, utiliser systématiquement l’héritage pour enrichir une classe existante peut mener à une architecture complexe et rigide. Par exemple, si l’on souhaite rajouter une propriété pour savoir si une vue est visible, ou une méthode pour cacher une vue de façon animée en utilisant l’héritage, on doit créer un nouveau type de vue héritant de UIView :
class MaVue: UIView { var estVisible: Bool { return !isHidden && alpha > 0.0 } func cacher(_ animé: Bool) { let alphaAvantMasquage = alpha if animé { UIView.animate(withDuration: 0.3, animations: { self.alpha = 0.0 }, completion: { _ in self.isHidden = true self.alpha ...
Abonnement
tous les livres et vidéos ENI en illimité sans engagement
du livre imprimé ou du livre numérique