Programmer avec Xojo à partir de zéro : modules de classe et extensions

Programmer avec Xojo à partir de zéro : modules de classe et extensions

Nous continuons avec le cours de programmation avec Xojo… et puisque, comme vous le savez déjà, il s'agit d'un environnement de développement multiplateforme, rien de mieux que de poursuivre le développement de notre exemple de projet (Personal Expenses) cette fois… sous Linux !

C'est vrai, les projets créés avec Xojo peuvent être ouverts par l'IDE à partir de n'importe quelle plate-forme prise en charge : macOS, Windows et Linux.


Nous pourrions également développer l'application dans l'IDE de macOS et l'exécuter en mode débogage sur un ordinateur distant de notre réseau local avec un autre système d'exploitation : Windows et Linux. Pas mal du tout, non ?


Mais revenons à ce qui nous concerne, cette fois nous allons étendre l'application afin que la liste générale nous montre dans une colonne supplémentaire le total cumulé pour chacune des catégories.

Comme vous vous en souviendrez, lorsque nous avons mis en place la liste hiérarchique dans le chapitre précédent, nous avons vu comment les dépenses étaient regroupées par catégorie, afin que vous puissiez visualiser chacune d'elles pour voir tous les enregistrements (dépenses), ainsi que le montant associé. avec chacun d'eux.

Cependant, ce serait bien de pouvoir voir quelles sont les dépenses cumulées pour la catégorie sans avoir à expliquer et à additionner chacune des dépenses vous-même. Et c'est ce que vous pouvez voir dans la vidéo qui accompagne ce nouveau chapitre.

Le problème important ici est que nous allons utiliser deux nouveaux éléments fournis par le langage de développement Xojo pour ce faire. L'un d'eux est modules et la seconde est Extensions de classe.

https://youtu.be/me6sr9hdjm4

Modules dans Xojo

Vous pouvez considérer les modules comme un outil fourni par le langage de programmation Xojo qui nous permet de créer notre propre "bibliothèque" de fonctions (méthodes), propriétés, classes, autres modules et, finalement, tout élément pris en charge par le langage.



Ceci est important car la création de ces bibliothèques ou modules nous donne une énorme flexibilité.

Par exemple, d'une part, nous pouvons indiquer que tous les éléments ajoutés au module ont une portée globale, ce qui signifie que nous pouvons les utiliser (les invoquer, dans le cas de méthodes ; ou y accéder, s'il s'agit de propriétés), à partir de n'importe où ailleurs dans l'application.

Cela implique également qu'une bibliothèque bien créée nous permettra de l'utiliser encore et encore dans n'importe quelle application que nous développons sans avoir à réécrire le même code encore et encore.

Autrement dit, une fois que vous avez ajouté la fonctionnalité fournie dans la bibliothèque, il suffira simplement d'intégrer le module dans toute autre application que vous souhaitez créer… et d'utiliser cette fonctionnalité.

Si vous souhaitez plus d'informations sur ce que sont les modules et comment les utiliser, je vous recommande de jeter un œil à cette section de la documentation en ligne. 

Extensions de classe à Xojo

Le deuxième problème est les extensions de classe. Eh bien, laissez-moi vous expliquer. Il arrive parfois que nous trouvions intéressant d'ajouter des fonctionnalités à une classe existante.

Le problème est que nous ne sommes peut-être pas les développeurs originaux de la classe en question, ce qui signifie que nous n'avons pas accès au code source pour pouvoir modifier ou « étendre » ses fonctionnalités ; tout comme cela arrive, par exemple, avec les classes que vous trouvez déjà disponibles dans le même framework Xojo, sans aller plus loin.


Comment pouvons-nous faire alors dans ces cas? Eh bien, la réponse réside dans l'utilisation du mot-clé "Extends" au début de la définition d'une nouvelle méthode (par exemple dans un Module).

De cette manière, nous indiquons au compilateur Xojo que ladite méthode "étendra" ou "étendra" la capacité du type de données que nous indiquons ci-dessous comme premier paramètre.


Une fois créée, nous pourrons utiliser cette méthode en utilisant la notation par points comme s'il s'agissait d'une méthode ajoutée à l'origine à la classe en question.


C'est quelque chose que vous verrez beaucoup plus clairement dans la vidéo accompagnant ce chapitre du cours ; Entre autres, parce que c'est précisément la technique que nous utilisons pour calculer le total cumulé de tous les postes de dépenses d'une même catégorie : nous ajoutons une nouvelle méthode dans un module avec "Extend" qui reçoit comme premier paramètre un tableau de données de type Dépense (rappelez-vous qu'il s'agit de la classe que nous avons créée pour ajouter de nouveaux éléments de dépense).

Ensuite, le code de la méthode doit simplement parcourir chacun des éléments du tableau et ajouter les différents montants, renvoyant la valeur totale à la suite de l'appel.

Comme d'habitude, vous pouvez en savoir plus sur le " Prolonge ”Mot-clé dans la documentation en ligne realbasic.

Essayez de créer votre propre exemple de projet, en ajoutant un module et une ou plusieurs méthodes qui étendent les capacités de plusieurs classes existantes en créant de nouvelles méthodes dans le module.


Javier Rodriguez Ingénieur Xojo Twitter : @xojoes Facebook : http://facebook.com/xojoes/ Téléchargez la dernière version sur www.xojo.com Ressources Xojo en espagnol : https://docs.xojo.com/spanish

ajouter un commentaire de Programmer avec Xojo à partir de zéro : modules de classe et extensions
Commentaire envoyé avec succès ! Nous l'examinerons dans les prochaines heures.

End of content

No more pages to load