Applications Internet

La conception et le développement d'applications Web sont le service le plus fréquemment choisi en aveneo. Ces dernières années, les solutions exécutées dans les navigateurs Web ont effectivement remplacé d’autres programmes informatiques : applications de bureau (classiques) et applications mobiles. Il existe de nombreuses raisons, mais parmi les plus importantes figurent une disponibilité illimitée sans compromis. Bien que l'architecture de nos solutions se compose de plusieurs couches, dans nos applications Web, une attention particulière doit être accordée à la forte division en deux couches : backend et frontend. Grâce à cette approche, nous avons séparé la couche UI et UX (interface utilisateur) de la logique métier, du modèle et de la base de données, ou de l'intégration avec d'autres solutions.

Côté serveur (backend)

La partie de l'application Web responsable de la logique des processus métiers, du traitement et du stockage des données, de l'intégration avec d'autres solutions ou de la puissance de calcul pour les opérations complexes et l'intelligence artificielle. Le tout s'effectue sur l'infrastructure de serveur, qui peut être distribuée et librement évolutive, de sorte que cela ne constituera jamais une limitation pour l'entreprise.

.NET

Microsoft .NET Core

Microsoft .NET Core constitue une base solide pour chacune de nos solutions. La solution d’entreprise disponible sur de nombreuses plateformes est facilement évolutive, sécurisée et surtout efficace.

En savoir plus sur .NET Core

Côté serveur (backend)

La partie de l'application Web responsable de la logique des processus métiers, du traitement et du stockage des données, de l'intégration avec d'autres solutions ou de la puissance de calcul pour les opérations complexes et l'intelligence artificielle. Le tout s'effectue sur l'infrastructure de serveur, qui peut être distribuée et librement évolutive, de sorte que cela ne constituera jamais une limitation pour l'entreprise.

.NET

Microsoft .NET Core

Microsoft .NET Core constitue une base solide pour chacune de nos solutions. La solution d’entreprise disponible sur de nombreuses plateformes est facilement évolutive, sécurisée et surtout efficace.

En savoir plus sur .NET Core

Côté client (frontend)

Logiciel qui s'exécute dans la zone du navigateur Web et est responsable de la couche visuelle qui garantit l'expérience utilisateur dans l'application Web. Il propose non seulement une interface interactive, mais surtout connecte les personnes aux processus et aux données de la manière la plus naturelle possible. Et c'est beau.

React

ReactJS+Redux

Le framework aveneoaveneoJS combiné à Redux constitue le fondement de chacune de nos solutions Web, y compris le aveneo.SDK. C'est l'une des solutions les plus populaires, choisies là où l'efficacité et les possibilités de développement sont les valeurs les plus importantes.

En savoir plus sur le framework ReactJS

Frontend basé sur aveneoaveneoJS, Redux et aveneo.SDK


D'innombrables composants

En développant aveneo.SDK, nous avons créé un très grand nombre de composants prêts à l'emploi qui nous permettent de réduire au minimum le temps de développement des applications web. Visualisation des données, formulaires, communication, authentification des utilisateurs, ce ne sont là que quelques-uns des éléments que vous n'avez pas à vous soucier de développer. Pourquoi démarrer un projet en concevant un cercle à chaque fois ?

Grâce à cela, créer une application permettant une gestion complète des données (CRUD - créer, lire, mettre à jour, supprimer) nous prend quelques minutes. De plus, une application créée dans un modèle passe-partout rapide, une API prête et nous avons une recette pour un prototype en un temps record.

aveneo.Schéma d'architecture frontale SDK

Back-office extrêmement simple

Nos solutions de backoffice sont standardisées jusqu’à la limite. Toutes les données tabulaires auront la même apparence et se comporteront de la même manière si vous le souhaitez. Explorer et gérer des données n’a jamais été aussi simple et agréable. De plus, nous mémorisons les paramètres des utilisateurs et des appareils, afin qu'ils ne voient que ce qui est le plus important pour eux.

Performances et disponibilité

La spécificité de la solution basée sur ReactJS avec Redux est l'arborescence DOM virtuelle et les mises à jour réactives lorsque l'état de l'application change. En pratique, cela signifie que toute modification des données entraîne des mises à jour instantanées de l'application et de la visualisation des données sans attendre le « chargement » de la page.

Multilinguisme et mondialisation

Le multilinguisme et la possibilité de fournir une interface utilisateur dans n'importe quelle langue sont des standards dans nos solutions. Cependant, nous allons plus loin : nous traduisons, mais nous présentons également les données en fonction de la localisation de l'utilisateur. Nous attribuons des données à la géolocalisation et construisons ainsi des solutions internationales centrées sur les marchés locaux.

aveneo.Composants SDK

Les composants fournissent des fonctionnalités complètes avec une interface utilisateur. Nous disposons également de notre propre modèle par défaut qui nous permet de fournir une solution commerciale prête à l'emploi en quelques jours. Ceci peut être réalisé, par exemple, grâce à des formulaires génériques (les formulaires sont générés automatiquement sur la base des métadonnées du modèle) et des grilles prenant entièrement en charge le tri, le filtrage, la pagination et bien d'autres fonctionnalités.

Découvrez à quoi ressemble le aveneo.SDK

aveneo.Bibliothèques SDK

Nous avons beaucoup de code que nous partageons entre les projets. Extensions de framework, algorithmes, modèles de conception, architecture multicouche. Nous mettons à disposition tout ce qui peut être réutilisé en interne. Lors du développement d’un tel code, nous maintenons des normes internes élevées et le documentons, puis formons toute l’équipe sur la façon de l’utiliser.

Découvrez la structure de aveneo.SDK

Backend basé sur .NET Core et aveneo.SDK


aveneo.Bibliothèques SDK

Nous avons beaucoup de code que nous partageons entre les projets. Extensions de framework, algorithmes, modèles de conception, architecture multicouche. Nous mettons à disposition tout ce qui peut être réutilisé en interne. Lors du développement d’un tel code, nous maintenons des normes internes élevées et le documentons, puis formons toute l’équipe sur la façon de l’utiliser.

Découvrez la structure de aveneo.SDK

Architecture monolithique modulaire multicouche

L'architecture monolithique modulaire signifie que nous fournissons une solution avec des limites de modules visibles résultant des valeurs commerciales de l'activité dont le logiciel répond aux besoins. Cela signifie que nous essayons de granuler durablement les logiciels en modules qui peuvent être mis à l'échelle individuellement au fil du temps, peuvent utiliser des ressources de données distinctes, avoir leurs propres intégrations et peuvent même être complètement interchangeables. Grâce à une communication basée sur un bus externe, ils restent indépendants et mutuellement fiables, ce qui augmente en outre le confort d'utilisation de la solution et facilite l'intégration avec des solutions tierces.

Schéma de l'architecture multicouche du monolithe modulaire aveneo.SDK
Les modules peuvent être remplacés
Développement de modules indépendant
Intégrations illimitées
Toute évolutivité
Rest Logo

+

Web Socket Logo

Communication via l'API REST et WebSocket

Pour la communication entre le frontend et le backend, nous utilisons deux protocoles : HTTP sans connexion avec architecture REST et WebSockets de connexion. La première technologie fonctionne très bien lors du téléchargement et de l’envoi de grandes portions de données. La seconde nous permet de proposer des solutions dont le contenu change en temps réel et le contenu transmis est minimisé aux seules données nécessaires. Grâce à cela, les solutions peuvent réagir en temps réel à l'évolution des données et réagir dans diverses situations, par exemple le manque d'accès au réseau et au serveur.

(à)Liberté d'intégrer d'autres solutions

La solution Internet offre des possibilités d'intégration illimitées. Les logiciels côté serveur peuvent communiquer avec des solutions tierces, allant des logiciels locaux existants aux solutions et services cloud d'entreprises telles que Google, Amazon et Microsoft.

Schéma des intégrations possibles de aveneo.SDK avec d'autres solutions

Évolutivité et multiplateforme

Le backend de nos applications Web peut fonctionner sur pratiquement n'importe quelle plate-forme matérielle. Tout cela grâce à la plateforme .NET, disponible à la fois pour les systèmes natifs Microsoft - Windows et Windows Server, mais aussi pour les plateformes Linux/Unix et macOS. De plus, nous enfermons les solutions dans des conteneurs et pouvons les mettre à l'échelle en deux dimensions : dans le sens de la longueur et dans le sens de la largeur. Sans aucune intervention de programmation particulière - juste comme ça.

Windows Logo

Windows

Linux Logo

Linux

macOS Logo

macOS

UNIX Logo

UNIX

Docker Logo

Docker

Kubernetes Logo

Kubernetes

Sécurité

La sécurité des utilisateurs et des données est la caractéristique la plus importante des logiciels à laquelle quiconque souhaite éviter les problèmes doit prêter attention. L'utilisation de l'authentification intégrée en deux étapes, l'intégration avec des centres d'identification externes utilisant OAuth ou OpenID, et enfin l'authentification à l'aide de comptes Google/Microsoft/Facebook/Apple. Le chiffrement de bout en bout des communications, le stockage des données dans des conteneurs chiffrés ne sont que quelques-unes des solutions que nous utilisons. Nos applications web ont fait l'objet à plusieurs reprises d'audits de sécurité très rigoureux réalisés selon le modèle du « hacking éthique », et aucune vulnérabilité grave menaçant la sécurité des données, des organisations ou des utilisateurs n'a jamais été détectée.

Cryptage SSL 3.0
Authentification utilisateur en deux étapes
Chiffrement de bout en bout
Architecture orientée redondance
Protection contre les DDoS
Audits « hacking éthique »

Technologies « héritées »


Le monde technologique se développe de manière très dynamique, tout cela grâce à l’évolution de l’environnement et des attentes des utilisateurs. Nous avons identifié les technologies suivantes comme étant obsolètes pour de nombreuses raisons différentes : elles ne répondent pas aux normes de sécurité, elles ne sont pas prises en charge et développées par leurs créateurs, elles ne sont pas transférables ou elles ne sont pas aussi efficaces que des solutions plus récentes. Étant donné que dans le passé nous avons développé des logiciels dans les technologies suivantes, nous pouvons offrir leur support et leur maintenance, et dans le cadre du développement, la migration vers des solutions plus récentes, indiquées ci-dessus.

Étude de cas


Êtes-vous prêt à parler de votre projet ?