Xojo (anciennement REALbasic), est un langage de programmation inspiré du Visual Basic 6 de Microsoft qui fonctionne sur Mac OS X, Windows et Linux. Xojo fut créé par Andrew Barry. Il s'appelait originellement CrossBasic (cross=transversal) car il était capable de compiler le même code de programmation pour Mac et Java (le système de développement était uniquement sur Mac). En 1997, CrossBasic fut racheté par FYI Software qui changea son nom en RealBasic tandis que la société s'appela REAL Software. À la suite de cela, la version Java fut abandonnée. Puis ultérieurement RealBasic et Real Software furent renommés respectivement Xojo et Xojo Software.
Généralités Xojo, est le langage de l'environnement de développement Real Studio. Ce langage de programmation s'inspire initialement du Visual basic 6 de Microsoft, bien qu'il ait énormément évolué depuis sa création. Il est totalement orienté objet, typé et multi thread. Cet outil de développement fonctionne sur Mac OS X, Windows, Linux, iOS et Raspberry Pi OS, et est capable de compiler des logiciels pour les mêmes plateformes, sous réserve d'avoir acheté la version Desktop ou Pro. Le langage intègre nativement les notions de classes, d'héritage, d'interfaces, d'encapsulation, de polymorphisme, de gestion des exceptions, de modules, de structures et de collections avancées.
Actuellement, c'est la version 2026 r1 qui est commercialisée. Cet outil de développement permet notamment de générer des applications pour Mac OS, Windows, iOS, Raspberry Pi, Android, iOS et pour le web. Xojo se veut accessible d'utilisation, et permet de développer pour plusieurs platformes sans avoir à recoder l'entièreté des applications. En fonction de la complexité de ces dernières, on ne pourra cependant se passer de vérifier la compatibilité et surtout la pertinence du code (notamment de l'interface utilisateur) avec tous les systèmes.
Xojo permet de développer des applications consoles, graphiques, mobiles ou web. Il est disponible en 4 versions : Bureau, Mobile, Web, Pro. Il existe aussi une version Pro plus avec un support très étendu.
Intégration du contrôle de version Xojo 2024r1 ajoute le contrôle de version à toutes les licences Xojo, ce qui était une demande récurrente de la communauté. Un développeur professionnel travaillant avec Git ne se retrouve donc plus pénalisé
Base de données Xojo intègre nativement des classes d'accès à la plupart des moteurs de bases de données courants : SQLite, MySQL, Oracle Database, Microsoft SQL Server ainsi qu'un accès générique via ODBC pour les autres systèmes.
Depuis l'introduction de l'API 2.0, ces classes (SQLiteDatabase, MySQLCommunityServer, PostgreSQLDatabase, etc.) héritent toutes d'une classe commune Database, qui uniformise la syntaxe d'accès — requêtes préparées, gestion des paramètres liés ("bind"), parcours des résultats. En pratique, il devient possible de changer de moteur de base de données (par exemple passer de SQLite en développement à PostgreSQL en production) en modifiant essentiellement la classe de connexion et ses paramètres, sans réécrire la logique d'accès aux données.
Pour une application de gestion, cela permet par exemple de démarrer avec une base SQLite locale (sans serveur à installer) lors du développement ou pour un petit déploiement, puis de migrer vers un serveur MySQL ou PostgreSQL partagé en réseau, en limitant les changements de code à la couche de connexion.
Enrichissement du langage par plug'in Au-delà des fonctionnalités natives, l'écosystème Xojo s'appuie sur un marché de plug-ins tiers (notamment MonkeyBread Software et Einhugur), qui ajoutent des fonctionnalités absentes du langage de base : connecteurs vers des bases de données supplémentaires, contrôles graphiques avancés, accès à des API systèmes spécifiques, cryptographie, traitement d'images, etc. Leurs tarifs vont de gratuit à plusieurs centaines, voire milliers d'euros par an selon l'étendue des fonctionnalités et le nombre de plateformes couvertes.
Il permet de combler rapidement les lacunes du framework natif sans devoir tout coder soi-même. Ce projet s'appuie sur de nombreux plug-ins payants et voit son coût global augmenter significativement, et peut devenir dépendant de fournisseurs tiers pour ses mises à jour — un risque à mettre en balance avec le coût d'autres environnements professionnels plus complets, mais aussi plus coûteux à l'achat.
Dans la pratique, le recours aux plug-ins reste optionnel : le framework natif de Xojo couvre déjà la majorité des besoins d'une application de gestion classique, et ces modules ne sont véritablement utiles que pour des besoins ciblés (fonctions cryptographiques avancées, formats de fichiers spécifiques, intégrations système poussées).
Jade : un assistant IA intégré directement dans l'IDE Depuis Xojo 2025r3, l'IDE intègre Jade, un assistant IA propulsé par Claude d'Anthropic, spécialisé sur le langage et le framework Xojo. L'interaction se fait comme dans un chat et si la réponse contient du code Xojo, un bouton permet de l'injecter directement dans l'éditeur actif en un seul clic. Jade connaît précisément les spécificités de Xojo — syntaxe, bonnes pratiques, framework — ce qui le rend immédiatement utile aussi bien pour un débutant que pour un développeur expérimenté reprenant un projet après plusieurs mois d'inactivité, sans jamais quitter son environnement de travail.
Facilité de déploiement chez le client L'application qu'il génère ne nécessite aucune installation sur l'ordinateur de l'utilisateur final. Les applications Xojo fonctionnent donc parfaitement sur une clé USB. C'est une des raisons du succès de ce langage.
Windows / Linux — L'exécutable et son dossier "Libs" se copient simplement sur le poste cible, sans installeur ni inscription au registre. Une application non signée peut déclencher un avertissement SmartScreen sous Windows.
macOS — L'application est livrée en bundle (.app) autonome, déplaçable sans installation. Pour une distribution hors Mac App Store, Xojo permet de signer et notariser l'app (Hardened Runtime + notarisation Apple), désormais requis pour éviter le blocage par Gatekeeper.
Android — Xojo génère un fichier signé (bundle/APK) à partir d'un keystore configuré dans l'IDE, prêt à être soumis au Google Play Store via la console développeur Google.
iOS — Xojo produit un fichier IPA, signé via un compte Apple Developer Program et un certificat/profil de provisionnement, puis soumis à l'App Store via App Store Connect. Distribution simplifiée sur le Mac App Store : Xojo 2024r4 introduit le Sandboxing, le Hardened Runtime et la Notarisation directement depuis l'IDE Xojo, rendant beaucoup plus simple la distribution d'applications Mac sécurisées, notamment vers le Mac App Store. Cela élimine une friction majeure pour les développeurs macOS.
Dans tous les cas, l'utilisateur final n'a besoin d'installer aucun runtime ni interpréteur tiers, et Xojo ne perçoit aucune royaltie ni redevance sur les applications ainsi distribuées : la licence couvre le développeur, pas chaque installation chez le client.
Système de débogage
Débogage
Xojo intègre un débogueur complet directement dans l'IDE : pose de points d'arrêt (breakpoints), exécution pas à pas (entrer/passer/sortir), inspection des variables et de la pile d'appels, et gestion des exceptions. Une fonctionnalité plus avancée, les points de surveillance (watchpoints), permet d'arrêter l'exécution non pas sur une ligne précise, mais dès qu'une variable atteint une valeur donnée (avec des opérateurs de comparaison comme ≥ ou ≤), en affichant la valeur précédente et la nouvelle valeur — utile pour traquer un bug difficile à localiser dans une boucle ou un calcul.
Débogage à distance
Xojo propose également un débogage à distance via une application séparée, le "Remote Debugger" (versions Desktop et Console), installée sur la machine cible. Le développeur compile et lance son projet depuis son poste habituel (Project > Run Remotely) ; l'exécutable de débogage est alors envoyé et exécuté sur la machine distante, tout en restant connecté au débogueur de l'IDE : les points d'arrêt posés sur le poste de développement s'activent normalement pendant que l'application tourne ailleurs.
Cela permet par exemple de développer sur macOS tout en testant et déboguant la version Windows ou Linux de la même application sur une autre machine (physique ou virtuelle) du réseau local, sans avoir à réinstaller l'IDE sur chaque plateforme. Le Remote Debugger Desktop couvre macOS, Windows et Linux (32/64 bits, x86 et ARM) pour les applications de bureau et console ; le Remote Debugger Console cible les machines sans interface graphique (serveurs), pour déboguer des applications console ou web. Le débogage des applications iOS et Android dispose par ailleurs de ses propres outils dédiés, intégrés à l'IDE.
Cette approche est particulièrement pertinente pour un outil multiplateforme : elle permet de vérifier le comportement réel d'une application de gestion sur chaque système cible (Windows, macOS, Linux) sans changer de poste de travail.
Liens avec pack office de Microsoft Si vous optez pour la version Windows, vous aurez à votre disposition des contrôles qui vous permettrons de piloter Excel, Word et PowerPoint. Il vous sera donc possible par exemple de générer des documents Excel avec Xojo.
GUI (Graphic User Interface) et Code
L'IDE de Xojo L'environnement de développement de Xojo repose sur deux espaces de travail complémentaires : l'éditeur de mise en page (Layout Editor), pour la conception visuelle des fenêtres, et l'éditeur de code, pour la logique associée à chaque élément. L'éditeur de mise en page fonctionne par glisser-déposer : les contrôles (boutons, champs de texte, listes, etc.) sont placés depuis une bibliothèque (Library) directement sur la fenêtre en cours de conception, puis paramétrés via un panneau d'inspection (Inspector) qui affiche leurs propriétés. Le projet est organisé sous forme d'arborescence dans le Navigateur : fenêtres, classes, modules, méthodes et propriétés y apparaissent comme autant d'éléments distincts, chacun accessible directement avec son propre éditeur de code. Cette organisation hiérarchique offre une vue d'ensemble de la structure du projet, et facilite la reprise d'un programme laissé de côté pendant plusieurs mois, ou la prise en main du code écrit par un autre développeur.
Comparaison avec d'autres environnements L'approche visuelle de Xojo n'est pas unique en soi : des environnements plus anciens comme Visual Studio (WinForms), Delphi/Lazarus ou Qt Creator (Qt Designer) proposent eux aussi un concepteur de fenêtres par glisser-déposer. La différence se situe ailleurs : ces outils restent généralement liés à une seule plateforme cible par projet (WinForms pour Windows, par exemple), et nécessitent un environnement, un langage, voire un IDE différent pour viser le web ou le mobile.
À l'inverse, de nombreux frameworks multiplateformes récents — .NET MAUI, Avalonia, Flutter, ou encore SwiftUI et Jetpack Compose sur mobile — ont abandonné le concepteur visuel classique au profit d'une description de l'interface entièrement en code ou en balisage (XAML, Dart, Swift, Kotlin). Cette approche dite "déclarative" offre davantage de contrôle, mais déplace une partie de la conception graphique vers l'écriture de code, ce qui allonge la courbe d'apprentissage, en particulier pour un développeur occasionnel ou un débutant. Xojo se positionne ainsi à la croisée de ces deux mondes : il conserve un concepteur visuel par glisser-déposer hérité des environnements RAD classiques, mais l'applique de façon cohérente aux trois cibles (desktop, web, mobile) au sein d'un même IDE et d'un même langage.
Conséquences sur l'apprentissage et la production