Félicitations ! Vous venez de terminer ce cours sur la programmation orientée objet ! Vous pouvez être fier de vous ! Grâce aux connaissances acquises dans ce cours, vous allez pouvoir désormais attaquer sereinement la programmation d'applications iPhone.
En résumé
Prenons un peu le temps de résumer ce que nous avons vu ensemble. Tout d'abord, nous avons pris le temps de définir le principe de programmation orientée objet en l'opposant à la programmation procédurale. Nous avons notamment découvert ensemble que l'histoire de l'invention de la programmation orientée objet était intimement liée à l'arrivée des interfaces graphiques de nos ordinateurs.
Au-delà de la théorie, nous avons surtout parlé de pratique. Dans ce cours, nous avons appris à utiliser un outil fondamental : les classes. Vous savez maintenant qu'une classe, c'est un petit paquet de variables et de fonctions qui forment un tout cohérent. Vous avez également compris que les classes nous permettent de créer nos propres types, ce qui rend notre programme à la fois beaucoup plus clair et beaucoup plus facile à utiliser. On a fait la différence entre une classe qui est un modèle, un moule, et les instances qui sont des représentations concrètes de cette classe, les objets que le moule a pour mission de créer.
High Five
Si on doit résumer ce que vous savez sur les classes, je pense que cela peut se compter sur les doigts d'une main. Oui, en 5 points :
1. Les propriétés
Vous savez que les propriétés sont des variables contenues dans la classe. Il y en a de plusieurs types différents :
Les propriétés d'instances qui se rapportent aux instances, et les propriétés de classe ou statiques, qui se rapportent à la classe.
Les propriétés stockées qui sont associées à une valeur, et les propriétés calculées qui sont associées à un calcul via les méthodes
get
etset
, ou en lecture seule.
Enfin, nous avons vu que les propriétés pouvaient être observées avec set
pour les propriétés calculées et avec willSet
et didSet
pour les propriétés stockées.
2. Les méthodes
Les méthodes sont des fonctions contenues dans la classe. Il y a deux types de méthodes : les méthodes d'instances qui se rapportent aux instances, et les méthodes de classes qui se rapportent à la classe.
3. L'initialisation
Vous connaissez la règle d'or de l'initialisation :
À la fin de l'initialisation, toutes les propriétés stockées doivent être initialisées.
On a vu comment créer nos propres initialiseurs avec le mot-clé init
, ainsi que la différence entre les initialiseurs désignés qui sont les initialiseurs principaux, et les initialiseurs pratiques qui permettent de faciliter l'initialisation de cas courants avec le mot-clé convenience
.
Quant à la désinitialisation, Swift s’en charge pour vous, mais vous savez qu’au besoin, vous pouvez l’appeler avec le mot-clé deinit
, et la faire vous-même.
4. L'héritage
Une classe peut hériter d'une autre. Cela signifie que toutes les propriétés et méthodes de la classe mère sont disponibles dans la classe fille. On a vu comment mettre à profit cette qualité des classes, notamment grâce aux mot-clés super
et override
qui nous permettent de surcharger des méthodes.
5. Le contrôle d'accès
Enfin, vous savez également limiter l'accès à vos classes selon 4 niveaux de contrôle : public, interne, privé au fichier et privé. C'est l'un des deux objectifs principaux de la POO : cacher une implémentation. Vous allez donc utiliser très souvent le contrôle d'accès, et ce d'autant plus que cela va grandement servir la lisibilité de vos classes. Et la clarté du code, vous le savez, c'est le plus important !
Voilà les 5 points principaux que nous avons vus à propos de nos classes : les propriétés, les méthodes, l'initialisation, l'héritage et le contrôle d'accès. Et dans ce cours, nous avons même pris le temps de faire deux petits détours pour venir à bout de notre bus scolaire : l'énumération et la vérification des types.
Et maintenant ?
L'énumération, les classes et les structures sont les trois modèles de données nommées de Swift. Autrement dit, ce sont les trois moyens que nous avons en Swift de créer un type ! Vous en maîtrisez donc déjà 2 sur 3. Promis, je vous ne laisserai pas comme ça longtemps. Dans le prochain cours, vous saurez tout sur les structures, et vous verrez qu'elles sont en fait très proches des classes. Dans ce cours, nous allons créer une application de quiz ! Je vous donne donc rendez-vous pour ce prochain cours sur le développement iOS !
En attendant, il ne me reste plus qu'à vous laisser avec le mot de la fin. Et le mot de la fin évidemment, c'est... Bravo ! Et n'oubliez pas le quiz de la fin. ;)