Profil technologique
Notre base technique en bref
Nous n’utilisons pas les technologies par effet de mode, mais en fonction de la réalité d’exploitation, de la durée de vie, des besoins d’intégration et de l’adéquation avec l’équipe. Ce qui compte n’est pas le mot-clé, mais que le système reste ensuite proprement exploitable, extensible et reprenable.
Solide pour la logique métier et les clients multiplateformes
Delphi est particulièrement pertinent là où une logique métier historique, des processus proches de la base de données, des rapports et des clients stables pour Windows, macOS et Linux doivent être maintenus sur le long terme.
Voir Delphi
C#
Solide pour REST, les services et les portails
Nous utilisons C# lorsque des portails, des services backend modernes, des API REST et des intégrations doivent s’arrimer proprement aux systèmes d’entreprise existants.
Voir C#
Architecture
Layer-3 plutôt qu’un passif monolithique
Nous séparons volontairement l’interface, la logique métier et l’accès aux données afin que les changements restent planifiables et que de nouveaux services n’aient pas à être construits contre l’existant.
Voir Layer-3
Plateformes
Penser Windows 11 ARM64 dès le départ
En plus des cibles x64 classiques, nous prenons en compte tôt les plateformes actuelles comme Windows 11 ARM64 afin que le nouveau matériel et les déploiements ne deviennent pas ensuite un projet à part.
Voir ARM64
Quand quelle orientation est pertinente
Delphi est pertinent si
- la logique métier existante doit perdurer,
- des processus desktop complexes doivent rester stables,
- des clients Windows, macOS et Linux doivent être développés sur une base métier commune.
C# est pertinent si
- des serveurs et des services REST sont mis en place,
- les API et les intégrations externes sont au centre,
- des architectures de services modernes sont requises.
Une approche hybride est pertinente si
- des applications existantes et de nouveaux portails doivent coopérer,
- desktop, services et web utilisent la même base de données,
- la modernisation doit se faire par étapes et sous forme de structure Layer-3.
Modernisation Delphi en pratique
Lorsqu’une ancienne application Delphi reste précieuse sur le plan fonctionnel, nous ne modernisons pas à l’aveugle. Nous analysons d’abord comment le système fonctionne réellement, quels processus il supporte, où les flux de données se rompent et quelles dettes techniques freinent l’exploitation. Il en résulte une trajectoire de modernisation qui ne paraît pas seulement propre sur le papier, mais qui reste viable au quotidien.
Dans de nombreuses applications ayant évolué au fil du temps, la véritable valeur ne réside pas dans l’interface, mais dans des années de logique métier, de règles spécifiques, d’exceptions et de savoir expérientiel. On ne jette pas cette substance à la légère. Nous séparons proprement les responsabilités, réorganisons la base de données, remplaçons les anciens modes d’accès, créons de nouvelles interfaces REST et, si nécessaire, complétons des clients pour Windows, macOS et Linux sur la même base métier. Il n’en résulte pas une rupture brutale, mais une évolution compréhensible avec un cadrage technique clair.
Souvent, cela signifie aussi ramener des monolithes historiquement constitués à une forme qui redevient maintenable, testable et extensible. L’accès aux données est stabilisé, la logique métier est extraite du code d’interface, les interfaces deviennent planifiables et les extensions futures n’ont plus à être arrachées contre l’existant. L’objectif n’est pas une modernisation cosmétique, mais un système qui redonne à l’entreprise de la marge pour de nouvelles exigences.
Services et serveurs comme partie d’une même architecture
De nombreux systèmes d’entreprise ont aujourd’hui besoin non seulement d’un client, mais aussi de services d’arrière-plan, de services Windows ou Linux et de serveurs REST. C’est précisément pourquoi nous ne planifions pas ces éléments comme un ajout a posteriori, mais comme une partie de la même architecture. Un service qui n’arrive que plus tard, d’une manière ou d’une autre, devient presque toujours un cas particulier.
Lorsque des données doivent être traitées de manière distribuée, des interfaces exposées, des exports exécutés, des imports surveillés ou des tâches planifiées dans le temps exécutées en arrière-plan, la responsabilité technique doit être clarifiée dès le départ. Quelles parties tournent dans le client, lesquelles dans le service, lesquelles sur le serveur, comment rendre les erreurs visibles, comment rendre les changements d’état traçables, comment maintenir la logique métier cohérente ? Nous répondons tôt à ces questions afin que des composants isolés deviennent un système global robuste.
C’est déterminant, en particulier dans les projets multiplateformes. Un client desktop sur Windows, macOS ou Linux ne doit pas exprimer, sur le plan métier, autre chose qu’un serveur REST associé ou qu’un service d’arrière-plan. C’est pourquoi nous pensons toujours ensemble le modèle de données, les processus, les autorisations, les intégrations et l’exploitation. Il en résulte une architecture dans laquelle clients, services et serveurs parlent le même langage.
Notre principe
La technologie n’est pas, pour nous, un système de croyances. L’essentiel est que l’architecture, la capacité à travailler en équipe, l’exploitation et les évolutions futures correspondent à l’entreprise. Ce n’est pas la plateforme la plus bruyante qui gagne, mais celle qui permet de piloter de manière pertinente le risque, la maintenabilité et la croissance.
Certaines tâches, nous les résolvons délibérément avec Delphi, parce que c’est là que la logique métier éprouvée, des clients performants et la capacité multiplateforme déploient leurs atouts. D’autres exigences correspondent mieux à C#, à des services, à un portail ou à une combinaison des deux. Une bonne architecture ne naît pas de la mode, mais de la clarté : quelle responsabilité porte chaque partie du système, quelle durée de vie est à prévoir, quelle est la taille de l’équipe, à quel point l’exploitation est critique et quelles extensions sont réalistement attendues dans les prochaines années ?
C’est précisément là que commence, pour nous, le développement logiciel professionnel. Nous ne voulons pas seulement livrer quelque chose qui fonctionne aujourd’hui, mais créer une base technique qui restera, plus tard aussi, compréhensible, transmissible et économiquement maintenable.
Questions fréquentes sur la technologie et l’architecture
Les décisions technologiques doivent être adaptées à l’équipe, au métier et à l’exploitation. C’est précisément pour cela que nous ne clarifions pas ces questions de manière abstraite, mais toujours à partir du système concret.
Quand Delphi est-il pertinent par rapport à une refonte complète sur une nouvelle plateforme ?
Chaque fois que l’on souhaite continuer à faire vivre, de façon économiquement pertinente, une logique métier mature, des processus Desktop performants et des objectifs multiplateformes, plutôt que de remplacer à la légère une base solide.
Quand utilisez-vous en complément C# ?
Surtout pour des portails, des backends Web, des services REST, des intégrations et des composants d’architecture orientée services, qui s’articulent bien avec des systèmes Desktop existants.
Quelle est l’importance de Layer-3 en pratique ?
Très importante. Seule une séparation propre entre l’UI, la logique métier et l’accès aux données rend la modernisation, les tests, les services et de futurs changements de plateforme maîtrisables.
Prenez-vous en compte tôt de nouvelles plateformes comme Windows 11 ARM64 ?
Oui. Les nouveaux matériels cibles et les voies de déploiement sont évalués tôt, afin qu’ils ne se transforment pas plus tard en projets spécifiques coûteux.
Lire d’autres questions regroupées
Ces réponses courtes restent ici sur la page. Sur la page d’atterrissage FAQ centrale, nous replaçons en plus le sujet dans son contexte, en lien avec l’architecture, la modernisation, les plateformes et l’exploitation.
Vers la page d’atterrissage FAQ avec des réponses approfondies