Pourquoi moderniser mes applications ?
Experienced developers know that retaining users can be a challenge, so they continuously invest in making their applications faster, more functional and more user-friendly. This effort isn't for the user alone - cleaning up unused and inefficient code makes it easier for the developer to maintain apps moving forward.
- Préserver la compatibilité Windows. D’anciennes versions de Windows arrivant en fin de vie, c'est le moment idéal pour capitaliser sur les dernières fonctionnalités de Windows 10 et pour anticiper la prise en charge des prochaines plateformes Windows.
- Incontournables applications multiplateformes... Alors que 73 % des utilisateurs d’Internet utilisent leur mobile en « première intention », opter pour une application uniquement bureautique en limite naturellement la portée et l’utilité.
- Attirer les utilisateurs avec des interfaces épurées. Les utilisateurs ont tendance à abandonner les applications au « look » obsolètes ou qui ne sont pas optimisées pour leur appareil. Il est grand temps de les impressionner en actualisant le design de vos interfaces grâce à la nouvelle simplicité offerte par les frameworks graphiques VCL et FMX.
- Reconcevoir et optimiser le code. Avec le temps, le code vieillit jusqu’à devenir inopérant voire complétement inutile... En prenant le temps de l'optimiser, vous bénéficierez de mises à jour plus rapides, d'une maintenance simplifiée et de meilleures performances applicatives.
- Modernize your application and leverage REST API's with RAD Server
Par où commencer ?
Les applications modernes se doivent de proposer des interfaces élégantes, intuitives et performantes – conçues pour faciliter l'intégration et le déploiement continus.
RAD Studio 12 is here and it's AWESOME. Join Ian Barker as he run through some of the features with some cool examples
Join Embarcadero's Developer Advocate as he takes us through the easy way to track down security holes, hidden backdoors, malicious code, and code flaws using automated analysis.
Yesterday's Tools Won't Cut It
Vous avez fait le bon choix de moderniser vos applications ! Pour réussir, vous devez mettre à votre service les meilleurs outils de développement du moment regroupés au sein de RAD Studio Rio.
- La prise en charge des applications mobiles dans toutes ses éditions (Professional, Enterprise et Architect) vous permettra de gérer en toute simplicité grâce à avec une base de code unique des applications natives iOS et Android et de créer facilement des interfaces mobiles avec FMX.
- Avec la mise à jour de VCL, vous concevez des interfaces avancées Windows UI/UX prenant en charge des résolutions supérieures et offrant une ergonomie rénovée et une réactivité inégalée.
- Implémentez les meilleures fonctionnalités de prise en charge native de Windows (meilleures que celles de Microsoft !).
- Réutilisez votre code pour créer des micro-services à hautes performances et/ou pour tirer parti de la « conteneurisation ».
- Create Web Clients with RAD Server using REST API technology
- Préservez les performances des applications grâce à des frameworks éprouvés.
- Améliorez l'intégration des données grâce aux nouvelles options de connectivité.
- Exploitez les compétences existantes de développement et réduisez les délais et les charges de migration du code – en vous affranchissant de lourdes réécritures en d’autres langages.
Découvrez ci-dessous des stratégies et technologies spécifiques de migration ou obtenez RAD Studio Rio dès maintenant.
Unicode
La prise en charge d'Unicode a été ajoutée à RAD Studio, Delphi et C++Builder à partir de la version 2009. De nombreuses ressources de migration ont été développés à cette époque dont certaines restent utiles pour migrer des versions pré-Unicode (2007 ou antérieures).
Si les migrations Delphi ont été particulièrement indolores pendant des décennies, elles peuvent parfois s'avérer plus complexes ; le passage à Unicode exige en particulier une certaine attention...
Avant tout, dans de nombreux cas, les applications Delphi existantes peuvent être converties pour la dernière version avec peu ou pas de modifications. Si vous travaillez principalement avec des composants VCL (pour lesquels la prise en charge d'Unicode a généralement été gérée avec soin) ou des composants de fournisseurs tiers qui ont pris le temps de comprendre les implications d'Unicode, vous avez un avantage certain…
Même si vous utilisez des millions de chaînes dans vos applications ; cela ne signifie pas que vous devrez modifier l'ensemble du code...
Présentation générale d'Unicode
Le facteur clé de la migration Unicode est de savoir comment vous utilisez les chaînes et à quelles fins. Si vous ne faites pas de manipulations ni de traitements lourds de texte et vous en tenez à des opérations standard, il est probable que votre code fonctionnera « en l'état ». En outre, même si vous utilisez beaucoup de chaînes littérales, cela ne signifie pas nécessairement que vous devrez modifier le code. Les points les plus importants à considérer sont les E/S fichier et l'interfaçage avec des bibliothèques et/ou DLL externes non-Delphi.
Ressources Unicode
Pour commencer, veuillez consulter nos différents livres blancs, articles techniques, vidéos et outils de migration pour vous aider à gérer la migration Unicode de Delphi :
Delphi and Unicode
Delphi et Unicode La vocation de ce livre blanc est d'aider les développeurs qui utilisent des versions de Delphi ou RAD Studio diffusées avant le lancement de Delphi 2009. Lisez cette étude pour savoir comment et pourquoi migrer sous Unicode une base de code développée avec une version pré-Unicode.
Astuces et conseils du front !
Que vous soyez dans les premières étapes de planification de la migration d'une application existante vers une version Unicode de RAD Studio, ou au milieu du processus, le guide de Migration Delphi Unicode peut vous aider… Rédigé avec la participation de nombreux leaders d'opinion de la communauté RAD Studio, ce livre blanc propose de précieux conseils et techniques pour vous simplifier la tâche.
Webinaire: Migration d'applications existantes vers une version Delphi Unicode avec Cary Jensen (en anglais)
Cary Jensen a collaboré avec des experts de Delphi dans le monde entier (auteurs, éditeurs leaders, développeurs, etc.) pour savoir comment ils ont approché leurs conversions Unicode, les problématiques qu'ils ont rencontrées et les solutions qu'ils ont adoptées. Apprenez les meilleures pratiques de migration vers Unicode grâce à ce webinaire informatif.
Migration d'applications existantes C++Builder vers Unicode
Blog
La page Unicode du Dr Bob et 8 astuces Unicode – Présentation du format d'Unicode et des différents types de chaînes
docwiki
Article Unicode essentiel dans la documentation en ligne DocWiki "Unicode dans RAD Studio"
outil statistique Unicode
Utilisez l'outil statistique Unicode sur votre application Delphi pour vérifier si des modifications sont nécessaires.
Cet outil vous aidera à collecter des statistiques utiles quant au temps et aux efforts nécessaires pour migrer vos applications Delphi sous Unicode.
Après avoir examiné votre code, il vous indiquera où se situent les éléments que vous aurez très probablement besoin de modifier. Cela vous offrira une estimation du nombre de lignes à examiner.
REMARQUE : cet outil statistique ne « sait » pas si vos lignes de code auront vraiment besoin d'être modifiées voire remplacées, mais il vous signalera qu'un certain nombre de lignes méritent d'être regardées de prés. Il se peut que vous n'ayez aucun changement à opérer. Tout cela dépendra essentiellement de la façon dont vous utilisez les chaînes et caractères dans votre application.
Le résultat est que Delphi est 100 % Unicode. La migration est facile, la bibliothèque VCL et le compilateur gèrent l'essentiel des tâches.
L'outil répertorie toutes les unités utilisées, y compris les unités Delphi (et combien de fois chacune est utilisée) ainsi que le nombre de fichiers, de lignes et d'instances (String, Read, Write, SizeOf, etc.).
Blog
Migrer un projet conçu avec d'anciennes versions de Delphi – Les écueils
Craig Chapman revient sur différentes problématiques de migration notamment :
- Migration multiplateforme
- Windows 64bit
- Migration Unicode
Migration 64 bits
Depuis Delphi XE2, il est possible de créer des applications 64 bits avec la même base de code que le code traditionnel Delphi pour Windows 32 bits. Découvrez des cas d'utilisation métier des applications 64 bits dans cette étude technique : L'impact potentiel des applications 64 bits sur votre rentabilité.
Dans l'ensemble, la migration 64 bits (sous Windows mais aussi sous iOS) est remarquablement simple à réaliser ! Il suffit d'ajouter une plateforme cible 64 bits dans le gestionnaire de projet et de lancer la reconstruction du projet. Il s'agit d'un avantage considérable par rapport à d'autres langages qui ont besoin de déclarer différents types pour gérer les différences entre plateformes.
Ressources 64 bits
Construire des applications 64 bits avec Delphi
Découvrez comment construire des applications Delphi 64 bits grâce à ce bref didacticiel. (en anglais)
[7m16sec]
Blog
Code Delphi 64 bits par Stephen Ball couvrant les similitudes et différences, la prédéfinition des options de compilation conditionnelles et l'utilisation du code assembleur.
Code Delphi 64 bits
Migrations de bases de données et middleware
Modernize your application with RAD Server
Migrate existing Delphi or C++ client/server business logic to a modern services-based architecture that is secure and scalable. RAD Server supports REST with JSON (or XML) parameter passing and return results. Publish APIs, manage connected users and devices, capture analytics about the use and users of applications, and connect to local and enterprise databases using FireDAC components. RAD Server also supports user authentication, push notifications, geolocation, and data storage.
Get the RAD Server Technical Guide Watch the RAD Server WebinarMigration à partir du moteur de base de données Borland (BDE) ou DBExpress
Le moteur de base de données Borland (BDE) n'est plus commercialisé et a été retiré de l'installation de Delphi depuis la version XE8 mais il reste disponible comme téléchargement séparé sur Code Central. Il est recommandé de migrer toutes les applications utilisant BDE vers FireDAC. Si vous débutez avec les composants d'accès aux données de FireDAC, consultez les liens de prise en main et d’aide au démarrage.
dbExpress est également en mode maintenance et il est recommandé de migrer vers FireDAC qui donne accès à un plus grand nombre de bases de données, est plus rapide et offre des fonctionnalités additionnelles.
Ressources pour bases de données
FireDAC Skill Sprints - Migration des applications BDE vers FireDAC & InterBase - David I
Outil RAD Studio reFind
DocWiki Migration dbExpres vers FireDAC
Cet article propose un didacticiel démontrant comment migrer une application dbExpress client-serveur vers FireDAC grâce aux composants d'accès aux données dbExpress tels que TSQLConnection, TSQLQuery, TSQLTable
docwiki
FireDAC Skill Sprints est une série de 12 vidéos de 20 minutes pour vous faire découvrir les fonctionnalités avancées de FireDAC
Migration de bibliothèques/composants tiers
Quelles bibliothèques (composants) tiers utilisez-vous dans votre ancienne version de Delphi ?
Les modules externes tiers (bibliothèques) doivent être reconstruits dans la version actuelle de Delphi. Disposer du code source rend les choses plus faciles... Vous devrez recompiler vos composants/bibliothèques de versions antérieures de Delphi dans la version actuelle (Delphi 10.1) afin que les composants et bibliothèques puissent être utilisés dans de nouveaux projets Delphi.
En l’absence de code source, les bibliothèques/composants tiers peuvent nécessiter des versions actualisées pour Delphi 10.1.
La version actuelle de Delphi intègre le nouveau gestionnaire de packages GetIt pour naviguer, télécharger, acheter et installer des packages GetIt pour la dernière version de Delphi. GetIt comprend actuellement 31 des packages gratuits de bibliothèques, composants, extensions EDI et SDK – tels que les composants Open Source « Turbopack », la bibliothèque de composants visuels JEDI, etc. – certifiés pour fonctionner avec la dernière version de Delphi !
10 astuces pour réussir vos applications mobiles
-
Monétisez vos applications en y intégrant un système de paiement et des publicités
Les annonces publicitaires sont un bon moyen de monétiser vos applications. Vous pouvez notamment utiliser des « annonces interstitielles » plein écran au lancement de votre application ou en insérer d'autres à des points d'arrêt « naturels ». Vous pouvez également insérer des bannières (320x50) dans l'en-tête, le pied de page et partout où cela est logique dans votre IHM. En outre, AppBrain Stats maintient une liste des réseaux publicitaires les plus populaires (Admob, Millennial Media, InMobi, Chartboost, Tapjoy etc.). Vous pouvez également ajouter un système de paiement à vos applications (consommables, achats ponctuels, abonnements, etc.), proposer une version gratuite et une version payante (sans publicité) de vos applications ou encore offrir un moyen de désactiver les annonces dans la version gratuite via un achat intégré.
-
Sécuriser les connexions aux données de vos applications avec SSL
La mobilité des utilisateurs est aujourd'hui considérable et nombre d'entre eux passent plusieurs fois par jour d'accès sécurisés, à des connexions 4G ou des hotspots non sécurisés. Pour les protéger contre les espionnages malveillants (voire de simples « renifleurs » de paquets), vous pouvez implémenter des outils de cryptage normalisés tels que TLS / SSL (Transport Layer Security / Secure Sockets Layer) en vous appuyant sur des bibliothèques tierces parfaitement fiables et éprouvées.
-
Encouragez les utilisateurs à noter vos applications
L'obtention d'une bonne note est un facteur critique dans beaucoup d'App Stores... Malheureusement, les clients insatisfaits ont généralement tendance à se manifester plus que les autres... C'est pourquoi il est important d'encourager ceux qui sont positifs à évaluer votre application en leur indiquant la bonne direction. La troisième utilisation est considérée comme le moment idéal pour leur demander de consulter la page de notation de votre application sur l'App Store de votre choix.
-
Créez et déployez des icônes applicatives
La qualité esthétique des icônes de vos applications est un important gage de succès dans les différents App Stores. Il existe plus de 30 dimensions d'icônes que vous pouvez créer et déployer pour vos applications Android et iOS. Cela peut par conséquent s'avérer une véritable corvée que de créer toutes les icônes nécessaires. Certains utilitaires peuvent vous faciliter la tâche tels que Mobile Gfx Setup, Paint.net ou Adobe Flash CC qui est un programme commercial plus avancé sous Windows proposant une version gratuite d'évaluation pour créer et exporter simplement vos icônes.
-
Gérer les cycles d'activation et désactivation des applications
Une fois l'application développée, le travail n'est pas encore terminé... Sa finalisation peut en effet nécessiter un certain nombre de raffinements additionnels. Il est notamment important de gérer les événements d'activation/désactivation (sous Android et iOS) pour que votre application offre une expérience utilisateur plus fluide. C'est pourquoi il est capital de tester les applications dans ces situations : passage en mode veille, réactivation, utilisation du bouton retour, etc.
-
Soyez clairvoyant ! Ajoutez des outils analytiques à votre application
Vous pouvez mettre en œuvre des outils analytiques grâce à différentes bibliothèques tierces (Google Analytics, Flurry Analytics, GameAnalytics, Parse Analytics, etc.) proposant leurs propres SDK REST que vous pourrez intégrer simplement sous Android ou iOS. Cela vous permettra notamment de superviser des données critiques telles que le temps passé à utiliser l'application, les écrans les plus utilisés, les points problématiques, les échecs et abandons, etc. Le plus important est naturellement de prendre des mesures en fonction de ces analyses... En itérant et testant... Toujours et encore !
-
Mise en œuvre de notifications Push
Les notifications Push constituent un mécanisme important pour fidéliser vos utilisateurs. Il faut néanmoins trouver un équilibre entre trop et pas assez de notifications... Les notifications push Android sont disponibles via Google Cloud Messaging et sous iOS par l'intermédiaire du service de notification Push d'Apple. La mise en œuvre de notifications peut s'avérer complexe mais des fournisseurs tiers tels que Parse, PushWoosh et Upsight (anciennement Playhaven) peuvent vous simplifier la tâche.
-
Utilisez des « Threads » pour maximiser la réactivité de vos applications
Les « Threads » permettent d'exécuter les procédures les plus longues dans un processus séparé. Ils peuvent être utilisés à tous les niveaux où vos utilisateurs pourraient être bloqués (téléchargements, traitements, chargement de données, etc.) et tentés de quitter l'application pour passer à une autre. Chaque fois que votre application génère une attente, il est recommandé de revoir son architecture pour que ces événements se produisent en tâche de fond.
-
Vérifiez la connectivité réseau avant de tenter de vous connecter
La connectivité des appareils mobiles est parfois aléatoire. Si votre application a besoin d'accéder à Internet, vous devez prévoir la possibilité qu'aucune connexion ne soit disponible. Il est ainsi souhaitable d'utiliser des files d'attente pour les téléchargements et de mettre en œuvre des procédures de reprise des téléchargements. Il peut également être souhaitable de prévoir un mode hors ligne ne désactivant que les fonctions ayant impérativement besoin d'une connexion Internet.
-
Optimisez le nom, la description et la distribution de vos applications
Il est conseillé de choisir un nom fonctionnel, descriptif ou unique (ou une combinaison) pour maximiser le succès de votre application – tout en évitant tout terme déposé. Une bonne description, définissant votre application, vos concurrents et quelles technologies vous avez utilisé joue également un rôle essentiel pour qu'elle soit localisée par ses utilisateurs potentiels. Développer une application n'est que la première étape... Ses modalités de distribution sont également essentielles et si vos applications fonctionnent sous Android et iOS, il vous faudra les déployer systématiquement sur les plus grands App Stores (Google Play, App Store, Amazon Appstore, Samsung Apps, etc.). Chacun de ces App Stores a ses propres règles et principes mais le jeu en vaut la chandelle ! En effet, il est possible que pour diverses raisons votre marché de niche soit adressé idéalement à travers Amazon Appstore ou Samsung Apps…