Le débat "desktop, web ou mobile" revient à chaque cadrage. Et la réponse honnête est presque toujours la même : ça dépend de qui utilise l'outil, où, dans quelles conditions réseau, et avec quels périphériques branchés. Le reste est de la cosmétique.
Nous livrons les trois types d'applications depuis 2018. Ce guide tranche les vrais cas où le desktop garde l'avantage en 2026, ce qu'il coûte vraiment sur 5 ans, et pourquoi les wrappers web type Tauri ou Electron règlent 70 % des projets sans qu'on ait à choisir.
TLDR : desktop vs web vs mobile en 3 lignes
- Desktop : performance brute, offline garanti, accès direct au matériel (tiroir-caisse, imprimante CMI, lecteur code-barres, balance, port série).
- Web : déploiement instantané sur 200 postes, multi-OS sans effort, mise à jour serveur sans rien à pousser chez l'utilisateur.
- Mobile : usage nomade, géolocalisation, appareil photo intégré dans le workflow métier.
Si vous hésitez encore après ces trois lignes, c'est que votre cas tombe dans la zone hybride — et la bonne réponse est probablement un wrapper Tauri ou Electron qui vous donne les bénéfices desktop sans repartir de zéro.
Une application desktop, c'est quoi exactement
Une application desktop est un logiciel installé localement sur un poste Windows, macOS ou Linux. Elle s'exécute sur le processeur de la machine, accède directement au système de fichiers, aux périphériques branchés et à la mémoire vive. Elle peut fonctionner sans connexion internet — c'est même son atout historique.
À ne pas confondre avec :
- Une PWA (Progressive Web App) : c'est une web app qu'on peut "installer" sur le bureau via un raccourci, mais qui tourne dans un moteur Chromium et dépend du navigateur. Pas de vrai accès périphérique au-delà de ce que l'API Web autorise.
- Une app Electron ou Tauri : c'est techniquement une web app empaquetée dans un binaire desktop. Elle a l'apparence d'une app native et peut accéder au filesystem, mais sous le capot c'est du HTML/CSS/JS rendu dans Chromium (Electron) ou WebView2/WKWebView (Tauri). Ces apps brouillent la frontière, et c'est tant mieux : elles couvrent la majorité des besoins.
- Une application native pure : .NET WPF, Swift AppKit, Qt C++. Code écrit spécifiquement pour le système d'exploitation, performances maximales, accès complet aux API système.
Concrètement, quand un client nous demande "une appli desktop", il veut neuf fois sur dix : un logiciel qui s'ouvre depuis le bureau Windows, qui marche même si la 4G plante, et qui peut imprimer un ticket sur la caisse branchée en USB. Le reste est négociable.
Les 4 cas où le desktop reste indispensable au Maroc
Le web a mangé une énorme partie du marché logiciel ces dix dernières années. Mais quatre familles d'usage résistent — et chez nos clients PME marocaines, ce sont exactement celles-là qui financent encore le métier de développement desktop.
Logiciels de caisse connectés au matériel
Un commerce qui encaisse en boutique a besoin de parler à : un tiroir-caisse électromécanique, une imprimante de ticket (généralement ESC/POS sur port série ou USB), un terminal de paiement CMI, parfois un lecteur de code-barres et une balance. Le navigateur web ne peut pas dialoguer proprement avec un port série en 2026. Une app desktop, oui — en deux lignes de code.
Nous avons livré le système de caisse d'une chaîne de boulangeries casablancaise en .NET, parce que la web app Chrome qu'ils avaient essayée perdait la connexion à l'imprimante deux fois par jour. Depuis le passage en desktop, zéro ticket d'incident en 14 mois.
Ateliers BTP et industrie en zone offline
Un chef de chantier à Boujdour, un technicien de maintenance dans un atelier d'usinage à Berrechid, un contremaître sur un site minier : il n'y a pas de 4G fiable, ou alors il y en a mais l'opérateur facture des forfaits data professionnels que personne ne veut payer pour 30 postes. Une app desktop installée sur les portables Toughbook fait le job, synchronise quand la connexion revient, et le tour est joué.
Comptabilité PCM avec gros volumes locaux
Un cabinet d'expertise comptable qui traite 80 dossiers manipule des fichiers FEC de plusieurs centaines de Mo, des balances générales sur 10 ans, des exports Sage qui sortent en CSV de 200 000 lignes. Charger ça dans un navigateur, c'est garantir des freezes. Une app desktop avec base SQLite locale ouvre l'écriture en 80 ms quand la version web met 4 secondes. Le PCM marocain (Plan Comptable Marocain) impose en plus une traçabilité que le desktop gère mieux par défaut.
Postes de vidéosurveillance et NVR
Les logiciels qui pilotent des flux vidéo en temps réel , surveillance d'entrepôts, vidéo-protection bâtiment, monitoring industriel — exigent un accès direct au GPU pour le décodage H.265, à la carte réseau pour les flux RTSP, et au stockage pour l'enregistrement continu. C'est du desktop, et ça le restera.
Si votre cas ne tombe dans aucun de ces quatre seaux, posez-vous sérieusement la question avant de partir sur du desktop. Le site catalogue ou e-commerce couvre 90 % des besoins métier des PME marocaines.
Avantages et limites — tableau comparatif
Honnête sur les tradeoffs. Voici ce qu'on dit à nos clients quand ils arrivent en cadrage avec une idée préconçue.
| Critère | Desktop natif | Web SaaS | Hybride Electron/Tauri | Mobile native | PWA |
|---|---|---|---|---|---|
| Performance brute | Excellente | Limitée par le navigateur | Bonne | Excellente | Moyenne |
| Accès matériel | Total | Très limité | Total | Total (capteurs téléphone) | Limité |
| Fonctionnement offline | Natif | Compliqué | Natif | Natif | Partiel |
| Déploiement multi-postes | Lourd (MSI à pousser) | Instantané | Lourd | Stores App | Instantané |
| Mises à jour | Auto-update à câbler | Automatique côté serveur | Auto-update intégré | Stores App | Automatique |
| Coût de maintenance | Moyen à élevé | Faible côté client | Moyen | Élevé (2 OS) | Faible |
| Portabilité multi-OS | Difficile (recoder) | Universelle | Native | Recoder par OS | Universelle |
| Temps de dev typique | 4-6 mois | 3-5 mois | 2-4 mois | 4-8 mois | 2-3 mois |
Le grand gagnant des dernières années, c'est la colonne "Hybride". Tauri et Electron permettent à une équipe web de livrer un binaire desktop signé en 8 semaines au lieu de 6 mois. Ils ne remplacent pas le natif pur quand on a besoin de pilotes système ou de performance graphique, mais pour 70 % des projets métier ils suffisent largement.
Stack technique : .NET, Electron, Tauri, Qt, Java
Cinq stacks dominent le développement desktop en 2026. Voici notre grille de choix.
.NET (C# avec WPF, WinForms ou WinUI 3) — le choix par défaut quand l'environnement est 100 % Windows et qu'il y a un ERP Sage, Microsoft Dynamics ou un Active Directory à interfacer. L'écosystème est mature, les composants UI sont solides, et le déploiement via ClickOnce ou MSIX est rodé. C'est ce qu'on a utilisé pour le logiciel de caisse cité plus haut.
Electron (TypeScript + Chromium) — quand l'équipe vient du web et veut livrer rapidement sur Windows, macOS et Linux. Slack, VS Code, Discord, Figma desktop sont tous en Electron. Tradeoff : binaire de 150-250 Mo et consommation RAM qu'on critique souvent à raison. Bon choix si le client a des machines récentes et qu'on ne livre pas sur des Toughbook avec 4 Go de RAM.
Tauri (Rust + WebView OS) — le nouveau venu sérieux. Au lieu d'embarquer Chromium comme Electron, Tauri utilise le moteur web natif du système (WebView2 sur Windows, WKWebView sur macOS). Résultat : binaire de 8-15 Mo au lieu de 200, démarrage instantané, consommation mémoire divisée par 4. Le backend en Rust impose une courbe d'apprentissage, mais on l'utilise désormais par défaut sur les nouveaux projets desktop cross-platform.
Qt (C++ ou Python via PyQt) — la stack industrielle. Quand le projet implique du traitement d'image temps réel, du contrôle de machines via Modbus/CANbus, ou un environnement Linux embarqué, Qt reste imbattable. C'est ce qu'on retrouve dans les logiciels de banc de test, les IHM industrielles, l'imagerie médicale.
Java (Swing, JavaFX) — vivant essentiellement par inertie. Les banques marocaines et certains organismes publics ont des logiciels métier en Java qui tournent depuis 15 ans. Si vous reprenez ce legacy, vous restez en Java. Sinon, partez sur autre chose.
Coût total de possession sur 5 ans
C'est ici que les surprises arrivent. Le développement initial n'est qu'un poste sur six, et souvent pas le plus gros.
1. Développement initial : à 5 chiffres HT pour un outil métier simple jusqu'à à 6 chiffres HT pour un logiciel complet avec base de données, sync cloud et plusieurs profils utilisateurs.
2. Signature de code : sur Windows il faut un certificat Authenticode (200-400 USD/an chez DigiCert, Sectigo, ou Certum pour le meilleur rapport qualité-prix). Sur macOS, l'Apple Developer Program est à 99 USD/an et la notarization est obligatoire depuis Catalina — sans elle, l'app refuse de s'ouvrir. Beaucoup de prestataires oublient ce poste dans le devis. Nous l'incluons par défaut.
3. Système d'auto-update : critique. Sans auto-update, l'éditeur passe ses journées à téléphoner à 80 utilisateurs pour qu'ils installent la nouvelle version. Squirrel.Windows pour .NET, electron-updater pour Electron, le système intégré de Tauri — il faut câbler ça dès le MVP, pas après.
4. Support utilisateur niveau 1 : 10-15 % du coût initial par an, à budgétiser. Une app desktop génère plus de tickets qu'un SaaS, parce que chaque poste a sa configuration (antivirus qui bloque, pilote imprimante absent, permissions Windows).
5. Migration OS : Windows 11 a cassé certains comportements WPF en 2025. Big Sur a cassé des apps Electron. Tous les 2-3 ans, prévoir 5-10 % du coût initial pour adapter aux nouvelles versions d'OS.
6. Hébergement et backend si sync cloud : si l'app synchronise vers un serveur, ajouter à 5 chiffres HT/an pour l'infra.
Le calcul qui surprend : sur 5 ans, un logiciel desktop déployé sur 30 postes coûte souvent 30-40 % moins cher qu'un abonnement SaaS équivalent à 50-80 USD/utilisateur/mois. Faites le calcul avant de signer un abonnement à vie. Pour la comparaison avec une stack web, voir notre comparatif WordPress vs Next.js vs Shopify.
Hybride : quand un wrapper web suffit
L'an dernier, un fabricant industriel à Tanger nous demande une app desktop pour son atelier : suivi des ordres de fabrication, scan de codes-barres, impression d'étiquettes. Première réaction : .NET WPF, 5 mois de dev. On creuse, on découvre qu'ils ont déjà un dashboard Next.js que les bureaux utilisent. Décision : empaqueter le même Next.js dans Tauri pour les postes atelier.
Résultat : 9 semaines au lieu de 22, une seule base de code à maintenir, et l'atelier a accès offline aux ordres synchronisés. Le binaire fait 11 Mo, démarre en 600 ms sur des postes Windows 10 avec 4 Go de RAM.
Les bénéfices d'un wrapper Tauri/Electron sur un projet PME :
- Réutilisation de l'équipe et du code web existant
- Mises à jour gérées comme du web (push d'un nouveau bundle, pas d'installeur)
- Cross-platform Windows/macOS/Linux pour le même prix
- Accès filesystem et périphériques USB via plugin officiel
Les pièges, qu'on n'oublie pas de mentionner :
- Taille de bundle : Electron tape 200 Mo, Tauri reste à 10-15 Mo. Si vous déployez sur du matériel ancien ou via une connexion limitée, Tauri gagne.
- Accès matériel exotique : un lecteur de carte spécifique avec pilote propriétaire passe mieux en natif pur. Pour de l'USB standard ou du port série, les plugins Tauri/Electron suffisent.
- Auto-update : à câbler correctement dès le départ, sinon migration douloureuse plus tard.
Si vous hésitez entre desktop natif et hybride, démarrez par un POC de 2 semaines en Tauri. Si ça tient la charge, vous économisez 4 mois.
Conformité loi 09-08 et stockage local
Une app desktop manipule par définition des données qui restent sur le poste utilisateur. Au Maroc, dès que ces données contiennent des informations personnelles (nom, téléphone, RIB, CIN, historique d'achat), la loi 09-08 supervisée par la CNDP s'applique.
Ce qu'un éditeur de logiciel desktop doit prévoir au design :
- Déclaration du traitement auprès de la CNDP avant la mise en production. Le formulaire est en ligne, l'instruction dure 4 à 8 semaines.
- Chiffrement de la base locale. SQLite avec SQLCipher, LiteDB chiffrée, ou chiffrement disque BitLocker imposé en GPO chez le client. Ne pas stocker en clair une base qui contient des CIN.
- Journalisation des accès. Qui a consulté quel dossier client, quand, depuis quel poste. C'est ce que la CNDP demande en cas de contrôle. Une simple table
audit_logavec utilisateur + action + horodatage + IP fait l'affaire. - Procédure de droit à l'effacement. L'utilisateur final doit pouvoir demander la suppression de ses données. Concrètement, prévoir un bouton "Supprimer ce client" dans l'interface admin qui fait un vrai DELETE en cascade.
- Politique de rétention documentée. Combien de temps gardez-vous les factures, les emails, les logs ? 10 ans pour les factures (obligation fiscale), 5 ans pour les contrats, 1 an pour les logs techniques sauf incident.
- Sauvegarde et restauration sécurisées. Si vous sauvegardez vers le cloud (S3, Azure Blob), c'est un transfert hors Maroc — clauses contractuelles spécifiques à prévoir avec le client.
Pour un projet manipulant des données bancaires ou de santé, ajoutez un audit sécurité indépendant avant la mise en production. Ça coûte à 5 chiffres HT et ça évite l'amende qui en coûte cent fois plus.
Comment Deadline structure un projet desktop
Notre méthodologie type sur les six derniers projets desktop livrés.
Phase 1 — Cadrage métier (1-2 semaines)
Ateliers avec les utilisateurs finaux, pas avec le DG. Le pharmacien qui scanne 400 boîtes par jour sait ce qui marche et ce qui pénible. On documente : workflows actuels, périphériques utilisés, contraintes réseau, volumétrie de données, profils d'utilisateurs.
Phase 2 — POC ergonomique (1-2 semaines)
Maquette interactive Figma + prototype Tauri minimal qui tourne sur 2-3 postes pilotes. Pas de logique métier complète, juste valider que l'ergonomie tient sur la cible réelle. Tradeoff important : on perd 10 jours, on évite 6 semaines de réécriture après livraison.
Phase 3 — Architecture data sync (1 semaine)
Comment se synchronise la base locale avec le serveur, qui gagne en cas de conflit, comment on gère les coupures de plusieurs jours en zone offline. Document de 6-8 pages, validé par le DSI client.
Phase 4 — MVP (8-12 semaines)
Développement itératif sur sprints de 2 semaines, démo à chaque fin de sprint avec les utilisateurs pilotes. Modules livrés dans l'ordre de criticité métier — facturation avant reporting, encaissement avant statistiques.
Phase 5 — Packaging signé (1-2 semaines)
Installeur MSI ou MSIX pour Windows, DMG notarisé pour macOS, AppImage pour Linux le cas échéant. Signature de code avec certificat Authenticode. Mise en place de l'auto-update. Documentation technique et utilisateur.
Phase 6 — Support N1 (3-6 mois inclus)
Hotline mail + téléphone, monitoring des crashes via Sentry intégré dans l'app, correctifs sous 5 jours ouvrés pour les bugs bloquants. Au-delà, contrat de maintenance annuel à à 5 chiffres HT/an selon le périmètre.
Pour les projets qui démarrent en desktop puis ajoutent une couche mobile (commerciaux nomades qui veulent saisir des commandes), on connecte le même backend à une app mobile en partageant l'API REST. Pour cadrer ce type de projet multi-plateforme, voir aussi notre guide sur Odoo vs SAP pour les PME marocaines — beaucoup d'apps desktop modernes finissent par s'intégrer à un ERP.
FAQ rapide
Desktop c'est quoi en une phrase ? Un logiciel installé sur votre ordinateur qui s'ouvre depuis le bureau et tourne en local, par opposition à un site web qui tourne dans un navigateur.
Quelle différence avec une web app ? Le desktop tourne sur votre machine, accède au matériel et fonctionne offline. La web app tourne sur un serveur distant et nécessite une connexion internet permanente.
Quel langage en 2026 ? .NET pour Windows pur, Tauri pour cross-platform léger, Electron pour cross-platform rapide à livrer, Qt pour l'industriel, Java seulement pour le legacy.
Coût au Maroc ? à 5 chiffres HT pour un outil simple, à 6 chiffres HT pour un logiciel métier complet, plus 10-15 % par an de maintenance et support.
Offline garanti ? Oui, c'est le terrain naturel du desktop. Base locale SQLite ou LiteDB, synchronisation différée vers le serveur.
Et le mobile ? Si l'usage est nomade (commercial sur la route, livreur, technicien terrain), prenez du mobile. Sinon, restez sur desktop ou web.
Pour aller plus loin
- Conseils développement web , guide complet , la pillar du silo
- Site vitrine vs catalogue vs e-commerce — l'autre versant des projets web
- WordPress vs Next.js vs Shopify — choisir sa stack web
- Odoo vs SAP pour PME marocaines — quand le desktop rejoint l'ERP
- Nos services développement — desktop, web, mobile
- Développement application mobile — l'option nomade
En résumé
Le desktop n'est pas mort, et ne le sera pas en 2026 ni en 2030. Il a juste arrêté d'être le choix par défaut. Aujourd'hui on part en web pour 70 % des projets, en mobile pour 20 %, et en desktop pour les 10 % où les contraintes matériel, offline ou performance ne laissent pas le choix. La bonne question n'est plus "lequel je préfère" mais "qu'est-ce qui interdit à mon usage de tourner en web". Si rien ne l'interdit, allez en web — c'est moins cher à maintenir, plus simple à déployer, plus facile à faire évoluer.
Échangez 20 minutes avec notre équipe — on regarde votre cas, on vous dit franchement si le desktop est justifié ou si un wrapper Tauri suffit. Devis transparent, périmètre détaillé, pas de surfacturation déguisée.
Création de site web au Maroc : le guide complet 2026
Choisir le bon format, la bonne technologie, la bonne agence — le guide stratégique pour réussir son projet web au Maroc en 2026.
Lire le guide pillar



















