Je transmets le dernier message d'Atanas Popov publié le 12 Février 2018.
Modernisez vos applications
La modernisation continue d'être l'un des sujets les plus importants pour nombre de nos clients… Delphi existe depuis un certain temps et il existe déjà de multiples applications de haute qualité remontant jusqu'à Delphi 7. Bien que ce soit un témoignage de la qualité de nos frameworks de développement, à certains égards, les applications de dix ans d'âge peuvent sembler trop anciennes... Notre communauté de développeurs se tourne par conséquent vers les dernières versions de cette plateforme pour offrir des produits modernes et attractifs à leurs clients. En interne, nous avons suivi cette même logique avec notre produit RAD Studio, et même si cela ne va pas toujours de soi, cela en vaut la peine. À mon sens, nous avons accompli de considérables progrès qui m'incitent à partager quelques leçons apprises qui pourraient vous aider à planifier votre propre évolution.
Rénovation de l'interface utilisateur
Je pense que la partie la plus difficile de tout projet de modernisation en est aussi l'argument le plus convaincant : la mise au goût du jour de l'interface utilisateur. Certes, d'aucuns prétendent que quand une solution fonctionne, peu importe l'aspect de ses icônes... Il est également fréquent que les développeurs s'en désintéressent et se soucient peu des aspects d'ergonomie et d'esthétique. Pourtant, il s'agit indiscutablement d'un aspect CRUCIAL. Nous avons effectué des mises à jour progressives de RAD Studio au cours des deux dernières années et en avons encore quelques-unes en réserve... Lorsque nous effectuons des sondages, l'aspect et la convivialité sont rarement priorisés. Les clients de logiciels d'entreprise admettent rarement acheter une solution pour ses qualités esthétiques. Pourtant, les améliorations apportées à l'IHM ont d'expérience un impact essentiel et plus particulièrement pour les applications Delphi qui portent un lourd « héritage ». C'est donc un combat qui mérite d'être mené et heureusement certaines mises à jour des outils VCL et FMX facilitent les implémentations. Prenez votre temps et faites-le bien… Cela vaut parfois vraiment la peine de s'assurer la collaboration d'un concepteur professionnel (bien que de nombreux développeurs ne le fassent pas). Il ne faut en effet jamais négliger l'impact d'icônes attractives et de haute qualité. Voici quelques exemples d'icônes que nous avons utilisées pour notre version 10.2.2. Il existe sur le marché un grand choix de solutions extrêmement économiques telles que par exemple www.icons8.com .
Passez à la mobilité
L'un des grands avantages actuels de Delphi est FMX. Alors que l'adoption des smartphones ne ralentit pas (~ 70% d'ici 2018), FMX gagne toujours en pertinence. Si vous connaissez VCL, le développement FMX est relativement naturel. Il y a bien sûr des spécificités de style et de comportement, et nous devons certainement améliorer encore les workflows de RAD Studio, mais la productivité est remarquable. La plupart des autres approches nécessitent en effet souvent une équipe et des investissements distincts. Traditionnellement, les applications mobiles sont externalisées en tant que package, mais cela est en train de changer. FMX permet en effet à une équipe Delphi de créer des applications mobiles. Avec FMX, nul besoin de recréer l'application existante mais seulement de lui ajouter des extensions mobiles significatives. Vous en obtiendrez un immense respect et la technologie Delphi sera perçue comme véritablement moderne et fédératrice pour vos équipes. De nombreux supports de formation peuvent vous aider à démarrer. Personnellement, j'aime les styles Delphi qui peuvent offrir des interfaces personnalisées très simples (voir ci-dessous quelques excellents modèles de styles FMX de www.delphistyles.com )
Optez pour une architecture « Multi-Tiers »
L'architecture n'est jamais simple. Malheureusement, même les plus grands développeurs ne sont pas compétents dans tous les domaines, en raison de l'étendue des métiers du développement logiciel. De sorte que la mise en oeuvre de changements architecturaux tels que le passage d'une application bureautique à un système « multi-tiers » peut exiger un long apprentissage même pour les développeurs les plus expérimentés. Il est cependant toujours intéressant d'acquérir de nouvelles compétences ou d'obtenir une aide extérieure pour y parvenir. Pour faciliter ces transitions architecturales, nous avons doté RAD Server d'excellentes fonctionnalités de prise en charge de l'architecture multi-tiers. Ce n'est pas une tâche ardue que de repenser une ancienne application pour un environnement multi-tiers, bien qu'il n'y ait aucune garantie (selon la façon dont elle avait été construite). J'ai échangé avec de nombreux développeurs qui, après une anxiété initiale ont reconnu que l'effort était bien moindre que prévu. Pour sûr, cela est nettement plus économique que de reformater pour une nouvelle plateforme avec un langage différent tel que Java. Encore une fois, une approche simple consiste à commencer petit et à « modulariser » autant que possible. Aussi, ne faites pas l'erreur de vous défaire trop vite de vos clients VCL. La vitesse qu'ils procurent, en particulier dans les environnements sensibles où chaque seconde compte, reste inégalable. J'ai été informé de plusieurs projets de reconstruction Java ayant coûté des millions de dollars qui visaient à remplacer une application VCL et que les utilisateurs n'ont tout simplement pas adopté... un gaspillage incroyable.
« Webifiez ! »
Certes le mot n'existe pas, mais vous aurez compris l'idée... Delphi propose aujourd'hui de nombreuses approches pour y parvenir. Idéalement, vous pouvez créer une application à plusieurs niveaux et créer un client Web indépendant. Bien sûr, nous recommandons Ext JS qui fait désormais partie de la famille, mais il existe de nombreuses autres technologies de client Web. Une autre approche qui peut être plus rapide consiste à utiliser un outil comme UniGui, qui adopte une approche de type VCL et tire parti d'Ext JS pour créer un client Web. Cela ne fonctionne pas dans tous les cas, mais c'est très rapide et productif. Vous pouvez certainement créer un module de votre application rapidement et démontrer que Delphi fonctionne vite et bien sur le Web. Aujourd'hui, de nombreuses interfaces Web pour applications Delphi sont construites avec .NET en raison de sa connexion héritée de Windows. Cela fonctionne bien sûr, mais sur la base de nos dernières expériences et des nouvelles technologies JS, la vitesse et la flexibilité que vous pouvez obtenir avec JS sont excellentes.
Intégration
RAD Studio possède certains des meilleurs frameworks et composants d'intégration. L'un des aspects les plus délicats des autres technologies est généralement l'intégration, et nous le faisons très bien et rapidement. Notre dernière étude produit révèle qu'un pourcentage énorme de nos clients a adopté FireDAC, ce qui est fantastique. Découvrez de nouveaux moyens d'intégration avancée des applications les plus modernes. Que diriez-vous d'afficher l'inventaire d'un ERP ou même de l'alimenter ? Nos connecteurs d'entreprise sont basés sur le framework FireDAC et fonctionnent très bien. Nous les utilisons même en interne pour créer un portail ExtJS vers notre instance SFDC (voir illustration ci-dessous). C'est une formidable expérience de développement !
Innover
Delphi, à travers RAD Studio, prend en charge de nombreuses nouvelles fonctionnalités, notamment les notifications Push, les balises et l'éditeur mobile Woll 2 Woll (www.woll2woll.com/beam ). Il est surprenant que nos clients utilisent encore peu les nouvelles fonctionnalités de Windows 10 ; notamment celles liées à la gestion des balises (Beacons) qui sont maintenant gratuitement incluses dans l'édition Enterprise de RAD Studio. L'éditeur mobile peut accélérer considérablement les applications développées avec cette technologie. Compte tenu du nombre d'applications Delphi gérant la capture des données de localisation, c'est une fonctionnalité extrêmement facile et ergonomique à intégrer. Et de surcroît, avec Delphi l'innovation ne coûte jamais des centaines de milliers de dollars ...
Surmonter les préjugés
Cet argument n'est plus aussi pertinent compte tenu des progrès accomplis par RAD Studio, mais c'est un obstacle que chaque client doit surmonter. La perception que Delphi est une technologie ancienne demeure en dépit des progrès majeurs récemment accomplis dans ce domaine. Aussi ai-je dernièrement adopté une approche légèrement différente qui fonctionne parfaitement. Plutôt que de défendre les nombreux mérites de Delphi, j'en viens en effet à contredire certains préjugés. Et ça marche ! Delphi est aujourd'hui l'un des plus grands écosystèmes commerciaux – alors même que de nombreux environnements open source ont perdu leur élan avec la détérioration économique et la disparition du support. N'oublions pas non plus que Delphi reste l'outil de développement le plus rapide, le plus facile et le plus fonctionnel (un peu subjectif, mais vrai). Notre framework VCL pour Windows offre un support natif inégalé de Windows. FMX propose quant à lui une prise en charge multiplateforme native plus performante que Xamarin et sa popularité, en particulier pour le développement Android se développe rapidement. Je pense que pour toute entreprise souhaitant maîtriser le risque technologique, Delphi et VCL sont des choix beaucoup plus pérennes que des technologies et frameworks plus « à la mode ». Quiconque a été confronté aux multiples itérations d'Angular ou à la charge d'une migration Java comprend cela aisément. La combinaison d'un langage hautement productif, réutilisable et fonctionnant en toute flexibilité avec les interfaces comme avec les systèmes sous-jacents fait de Delphi un acteur technologique de tout premier plan.
Il reste néanmoins un point plus délicat quant à la modernisation qui est plus lié à la perception qu'aux technologies. Certains clients argumentent sur la rareté des compétences Delphi. Il est malheureusement vrai qu'il y a moins de développeurs Delphi qualifiés que de développeurs formés sur d'autres technologies populaires. Les prestataires d'outsourcing sont particulièrement négatifs quant à ces outils dans la mesure où les gains de productivité vont à l'encontre de leur business model... Pourquoi ne vous vendraient-ils que 5 développeurs Delphi quand ils peuvent vous facturer 50 développeurs Java ! Mais c'est aussi un argument gagnant : vous avez besoin de beaucoup moins de développeurs Delphi pour parvenir à vos fins. De surcroît, si vous avez besoin de peaufiner vos compétences ou de former une nouvelle équipe, sachez que le programme Embarcadero Academy poursuit son développement avec de nouveaux cours et thématiques. Selon notre expérience, un développeur expérimenté peut adopter très rapidement Delphi. Alors combattons le scepticisme technologique en développant des applications plus modernes que jamais !