Types de données
Découvrez les différents types de données et leurs spécificités pour réaliser les actions souhaitées sur votre base de données.
Les données contenues dans une base de données sont organisées selon un ensemble cohérent de principes. Chaque base de données possède son propre schéma et différents types de données. Bien qu’il existe plusieurs modèles de bases de données, les types sont standardisés et vous permettent de définir ce que la base de données contient, avant même de décrire ses éléments. Par exemple dans une application de news, il y a une donnée de type Texte pour le titre de l’article, une donnée de type Image pour la photo d’illustration, etc.
Définir le type a des conséquences importantes sur la manière dont vous pouvez utiliser les données lors de la construction de votre application, ou opérer sur les données. Les données de type Texte peuvent être tronquées, les chiffres peuvent être multipliés, les adresses peuvent être affichées sur une carte, etc.
Les types primaires
Texte
Le type de données Texte représente une séquence de caractères. Ces caractères peuvent être des caractères de texte, des caractères spéciaux, des caractères numériques ou des signes de ponctuation.
"Appartement 3 pièces à Paris"Nombre
Le type de données Nombre représente des valeurs entières et décimales.
130 000Booléen
Le type de donnée Booléen comprend 2 valeurs : Vrai ou Faux.
VraiTableau
Le tableau est une structure de données représentant une séquence finie d’éléments auxquels on peut accéder efficacement par leur position, ou indice, dans la séquence. L’index commence toujours à 0. Donc le premier élément est à l’index 0, le 2e à l’index 1, le 3e à l’index 2, etc.
["Rosa Bonheur", "Cité des sciences", "Musée du Quai Branly"]Clé / Valeur
La clé-valeur est un tableau contenant une collection de paires clé-valeur. Les clés peuvent être utilisées pour récupérer les valeurs correspondantes. Les clés doivent être uniques.
{ "Address": "44 rue des Gravilliers 75003 Paris" \}Collection
Une Collection est un tableau structuré d’objets où chaque objet (appelé item ou élément) suit le même schéma. Pensez-y comme à un tableau où chaque ligne est un item et chaque colonne est un champ avec un type de données spécifique.
Quand vous créez une collection, vous définissez sa structure une fois, puis ajoutez autant d’items que nécessaire qui suivent cette structure. C’est idéal pour gérer des listes de contenus similaires : produits, lieux, articles, utilisateurs, etc.
Exemple : Une collection de biens immobiliers pourrait avoir cette structure :
- Nom (Texte)
- Photo (Image)
- Adresse (Texte)
- Surface (Nombre)
- Prix (Nombre)
- Description (Texte)
- Pièces (Nombre)
Exemples d’utilisation :
- Catalogues de produits avec filtrage et tri dynamiques
- Répertoires de lieux avec intégration de carte
- Listes d’articles ou de billets de blog
- Profils utilisateurs ou annuaires de contacts
- Calendriers d’événements avec détails
Les collections sont la base du contenu dynamique dans PandaSuite. Elles peuvent être stockées dans la Base de données PandaSuite ou connectées depuis des sources externes comme Airtable ou des API REST. En savoir plus dans la documentation Collection.
Les types enrichis Panda
Couleur
Une Couleur spécifie une valeur de couleur à l’aide d’un code hexadécimal. Ce type est utilisé dans PandaSuite pour définir les couleurs des arrière-plans, du texte, des bordures et d’autres éléments visuels.
Format : Code couleur hexadécimal (ex. #FF5733 pour orange, #000000 pour noir)
Les couleurs peuvent être liées dynamiquement pour créer des changements de thème, des retours visuels, ou un codage couleur basé sur les données dans les graphiques et visualisations.
Bordure
Une Bordure est un objet composé d’une couleur et d’une taille de bordure (épaisseur). Ce type est couramment utilisé pour styliser les éléments visuels avec des propriétés de bordure cohérentes.
Structure :
- Couleur : valeur de couleur hexadécimale
- Épaisseur : épaisseur de la bordure en pixels
Radius
Un Radius est un tableau contenant 4 nombres représentant le rayon d’arrondi pour chaque coin d’un rectangle.
Structure : Tableau de 4 valeurs [haut-gauche, haut-droit, bas-droit, bas-gauche]
Exemple : [10, 10, 0, 0] crée des coins arrondis uniquement en haut d’un rectangle.
Ce type est particulièrement utile pour créer des formes complexes avec différents rayons d’arrondi sur chaque coin.
Image
Une Image est une chaîne de texte formatée en URL qui pointe vers une ressource image (.jpeg, .png, .svg, .gif, .webp, etc.). Ce type est utilisé dans PandaSuite pour afficher du contenu visuel dans votre application.
Exemple : "https://example.com/photo.jpg" ou un chemin relatif vers un fichier média dans votre projet
Les images peuvent être liées dynamiquement depuis des bases de données comme Airtable ou la Base de données PandaSuite, permettant de créer des galeries dynamiques, des catalogues de produits ou des bibliothèques de contenu.
Date
Une Date représente un point spécifique dans le temps, incluant à la fois les composantes de date et d’heure. Ce type stocke des timestamps qui peuvent être formatés, comparés et manipulés à l’aide de fonctions de date.
Format : 20/11/2020 10:21:05 (jour/mois/année heures:minutes:secondes)
Stockée en interne comme un timestamp (millisecondes depuis le 1er janvier 1970), ce qui permet de :
- Effectuer des calculs de date (ajouter/soustraire jours, mois, années)
- Formater dans différentes locales et styles
- Comparer des dates pour créer des conditions temporelles
Consultez Timestamp - date et heure actuelle pour plus d’informations sur l’utilisation des dates.
Ecran
Un Ecran est une référence vers un écran spécifique de votre application. Ce type permet de stocker et de naviguer dynamiquement vers différents écrans en fonction des données ou des interactions utilisateur.
Exemples d’utilisation :
- Créer un menu où chaque élément pointe vers un écran différent
- Construire des flux de navigation basés sur les choix utilisateur ou les résultats de quiz
- Stocker le dernier écran visité pour implémenter une fonctionnalité « reprendre où vous en étiez »
Lors de l’utilisation du type Ecran dans le data binding, vous pouvez changer dynamiquement l’écran de destination en fonction de conditions ou de données utilisateur.
Audio
Un Audio représente une ressource de fichier audio (MP3, WAV, M4A, OGG, etc.). Ce type est utilisé avec le composant Audio pour lire des effets sonores, de la musique, des narrations ou d’autre contenu audio.
Exemples d’utilisation :
- Musiques d’ambiance
- Narrations vocales pour visites guidées
- Effets sonores pour interactions
- Contenu podcast ou cours audio
Les fichiers audio peuvent être stockés localement dans votre projet ou chargés dynamiquement depuis des sources externes via URL.
Vidéo
Une Vidéo représente une ressource de fichier vidéo (MP4, MOV, AVI, WebM, etc.). Ce type fonctionne avec les composants vidéo pour afficher du contenu vidéo dans votre application.
Exemples d’utilisation :
- Vidéos tutorielles ou éducatives
- Démonstrations de produits
- Arrière-plans vidéo
- Contenu narratif multimédia
Les vidéos peuvent être intégrées directement dans votre projet ou chargées depuis des plateformes de streaming. Consultez le composant Vidéo pour les options de lecture et contrôles.
Séquence
Une Séquence est une série animée d’images (GIF ou frames individuelles), communément appelée séquence d’images ou animation sprite. Ce type est idéal pour les animations image par image et les effets visuels interactifs.
Exemples d’utilisation :
- Rotations de produits à 360°
- Animations pas à pas
- Illustrations animées
- Effets visuels image par image
Les séquences offrent plus de contrôle que les fichiers vidéo, permettant de sauter à des frames spécifiques, déclencher des actions sur des marqueurs et se synchroniser avec d’autres composants. En savoir plus dans la documentation du composant Séquence d’images.
Image HD
Une Image HD est une image haute résolution intégrée via le composant Image HD. Ce type permet aux utilisateurs de zoomer profondément dans de grandes images tout en maintenant la qualité.
Cas d’usage :
- Examen détaillé d’œuvres d’art (musées, galeries)
- Plans architecturaux ou blueprints
- Grandes infographies ou cartes
- Imagerie médicale ou visualisations scientifiques
Contrairement aux images standard, les Images HD sont optimisées pour le chargement progressif et les interactions de zoom profond, similaires au comportement de zoom de Google Maps pour les images.
Zip
Un Zip représente un fichier d’archive compressé. Ce type est utilisé avec le composant Téléchargement partiel pour empaqueter et distribuer du contenu que les utilisateurs peuvent télécharger sur leur appareil.
Exemples d’utilisation :
- Packs de ressources téléchargeables (PDF, images, documents)
- Modules de contenu hors ligne pour grandes applications
- Contenu additionnel que les utilisateurs peuvent optionnellement télécharger
- Packages de mise à jour avec nouveaux médias ou données
Les fichiers Zip permettent de réduire les tailles de téléchargement et d’organiser les fichiers liés ensemble. Les utilisateurs peuvent les télécharger à la demande plutôt que de tout inclure dans l’installation initiale de l’application.
Coordonnée
Une Coordonnée représente une position géographique avec les valeurs de latitude et longitude. Ce type est particulièrement utile pour les applications basées sur des cartes et le suivi GPS.
Lors de l’utilisation du type Coordonnée avec les composants Carte ou GPS & Géo-repérage, vous pouvez lier directement un champ Coordonnée à la propriété Centre d’un marqueur sans séparer la latitude et la longitude en champs distincts.
Structure :
- Latitude : valeur décimale entre -90 et 90
- Longitude : valeur décimale entre -180 et 180
Exemple : Les coordonnées de Paris seraient approximativement { lat: 48.8566, lng: 2.3522 }
Point
Un Point représente une position dans un espace 2D avec des coordonnées X et Y. Ce type est utilisé pour le positionnement des éléments d’interface et les propriétés de mise en page, pas pour les coordonnées géographiques (utilisez Coordonnée à la place).
Structure : Objet avec propriétés x et y { x: nombre, y: nombre }
Exemples d’utilisation :
- Positionner dynamiquement des éléments selon les interactions utilisateur
- Stocker les positions de tap/clic pour des animations
- Créer des effets de suivi du curseur
- Implémenter un positionnement glisser-déposer
Lorsqu’il est lié à la propriété Position d’un élément, le type Point permet un mouvement et un positionnement dynamiques. Consultez Binding des propriétés de mise en page pour des exemples détaillés de positionnement interactif.
Point norm.
Un Point norm. (point normalisé) représente une position avec des coordonnées ramenées à l’intervalle [0, 1] par rapport à la taille du conteneur. Ce type rend le positionnement responsive et indépendant des dimensions réelles en pixels.
Structure : Objet avec propriétés x et y où les deux valeurs sont entre 0 et 1
Caractéristiques clés :
(0, 0)représente le coin supérieur gauche(1, 1)représente le coin inférieur droit(0.5, 0.5)représente le centre exact
Exemples d’utilisation :
- Positionnement responsive qui s’adapte à toutes les tailles d’écran
- Interactions basées sur les gestes (position de tap relative au conteneur)
- Créer des animations qui fonctionnent sur différents formats d’appareils
Les Points norm. sont particulièrement utiles avec le composant Zone interactive, qui expose les positions de tap comme Points norm. Consultez Binding des propriétés de mise en page pour des exemples pratiques.
Référence
Une Référence est un type de donnée qui ne contient pas une valeur brute (texte, nombre, booléen), mais qui pointe vers un autre élément d’une autre (ou de la même) collection. Au lieu de dupliquer des données identiques, elles sont centralisées dans une collection et liées par une référence.
Par exemple, prenons les collections suivantes :
- Élèves : contient nom, prénom, classe (référence)
- Classes : contient nom de la classe, niveau
Dans la collection Élèves, la donnée classe est une référence qui pointe vers un élément de la collection Classes.
Multi-références
Une Multi‑référence est une version « multiple » d’une Référence : elle permet de lier plusieurs éléments d’une autre collection.