Wrath of Code : la frontière du low-code | Mendix

Passer au contenu principal

Wrath of Code : la frontière du low-code

Vignette du blog – La colère du code v2

Le low-code est devenu de plus en plus présent dans la presse ces dernières années. Les gens ont prédit, et constatent, un boom des applications développées à l'aide du low-code. Cependant, il existe encore une certaine stigmatisation au sein de la communauté des développeurs. Cela vient en partie de la confusion autour des plateformes sans code, et en partie du marketing historique ciblant les développeurs suggérant qu'elles ne seront plus nécessaires, et pour d'autres encore, c'est simplement parce qu'ils doutent que l'on puisse réaliser des systèmes complexes sans utiliser un langage de code élevé.

Dans cet article, je vais examiner certaines des questions que je me suis posées lorsque j'ai découvert le low-code pour la première fois et ce que j'ai appris depuis.

Que dirais-je à ma version plus jeune si je le pouvais ? (À part « Achetez du Bitcoin »).

Vous serez assimilé…?

« Les gens n’arrêtent pas de me dire que le low-code remplacera les développeurs »

Ce n'est pas du tout notre objectif. Nous souhaitons permettre à davantage de personnes de développer des applications, mais nous sommes également conscients que certains projets nécessitent un état d'esprit et une approche que seul un développeur peut apporter. C'est en partie la raison pour laquelle nous avons deux IDE : Studio et Studio Pro.

Studio dispose d'un point d'entrée plus accessible qui permet aux utilisateurs de se lancer dans le développement d'applications et de créer ce dont ils ont besoin à l'aide d'un ensemble d'outils standard et de fonctionnalités supplémentaires du marché.

Studio Pro, quant à lui, donne aux développeurs plus expérimentés accès à des fonctionnalités avancées telles que l'extension de code Java et la personnalisation SASS. En utilisant Studio Pro, vous constaterez que le low-code ne signifie pas que vous simplifiez votre développement, mais plutôt qu'il s'agit de la prochaine évolution logique du développement d'applications.

Au début du codage, le développeur était responsable de tout. Il gérait les allocations de mémoire, les pointeurs et toutes sortes de fonctionnalités de bas niveau. Puis des langages comme C et C++ ont été créés. Ils ont abstrait la gestion de bas niveau et ont grandement facilité la création d'applications. Ensuite, l'orientation objet est apparue pour rendre le code plus réutilisable et maintenable dans des langages comme Java et C#. Même à cette époque, il fallait encore créer des bases de données et maintenir des connexions, créer des interfaces et gérer des serveurs.

Le low-code est désormais disponible. Il offre tous les avantages d’un langage de programmation moderne, plus l’abstraction de la création et de la maintenance de bases de données, la création simplifiée du front-end, la création et la consommation faciles d’API et les serveurs gérés. Il élimine toutes les tâches ennuyeuses, toutes celles qui prennent du temps à faire mais ne posent pas de réel défi. Le low-code vous donne ensuite les outils pour créer des fonctions avancées à l’aide du développement par glisser-déposer, avec l’avantage supplémentaire de pouvoir étendre cela avec des fonctions Java. Vous pouvez également créer des composants React pour étendre le front-end !

1_Capture d'écran de Wrath of Code

Il existe encore de nombreux outils pour satisfaire même les exigences les plus ardues, ainsi que la simplicité pour créer rapidement les éléments de base, vous laissant le temps de vous concentrer sur le développement intéressant !

Je suis une plateforme low-code, pas no-code !

« Il doit y avoir un moment où les éléments prêts à l'emploi que vous glissez-déposez ne répondent pas à mes besoins. Que se passe-t-il alors ? »

Il s'agit de low-code, pas de no-code. Il y a une différence, même si les deux semblent être synonymes pour le moment. L'objectif du low-code est de vous aider à écrire moins de code, beaucoup moins en fait, et non pas d'écrire zéro code du tout. Nous voulons toujours vous permettre d'étendre ce que nous proposons grâce à l'utilisation de codes et d'extensions lorsque cela est nécessaire. C'est la grande différence entre le no-code et le low-code.

Les outils sans code fonctionnent uniquement par glisser-déposer. Vous disposez d'un ensemble fixe d'outils pour créer ce que vous souhaitez créer. Ces types de plateformes sont généralement associées à la modélisation des processus métier, aux flux de travail et aux créateurs de sites Web. Elles sont utiles dans leur niche et si vous vous en tenez à des cas d'utilisation courants, mais si vous devez sortir de ce domaine, les choses deviennent plus compliquées.

Les plateformes low-code ne s'arrêtent pas à la boîte à outils. En matière de logique, il existe de nombreux outils pré-intégrés que vous pouvez utiliser pour créer votre application, mais vous avez également la possibilité de créer vos propres fonctions. Mendix c'est un processus simple pour ajouter un nœud Java à votre Microflow (c'est un peu comme une méthode ou une fonction en termes de programmation). Ensuite, vous pouvez écrire votre propre code Java dans ce nœud, transmettre des objets et interagir avec le Mendix plateforme utilisant le SDK Java.

Si vous constatez que vous avez besoin d'un traitement personnalisé sur le front-end ou si vous souhaitez utiliser un widget ou une bibliothèque JavaScript particulier, vous pouvez l'encapsuler dans un widget enfichable React. Cela vous permettra de créer des contrôles front-end personnalisés et, encore une fois, d'accéder à un Mendix SDK pour interagir avec la plateforme.

C'est la puissance du low code. Oui, nous vous permettons de faire les choses rapidement avec des contrôles prédéfinis par glisser-déposer, mais nous vous permettons également d'étendre les fonctionnalités. D'où le low code et non le no code !

2_La colère du code

Le low-code, la dernière frontière…

« OK, disons que je te crois, à quels avantages puis-je m’attendre ? »

Commençons par la création et la maintenance simplifiées de la base de données. Vous créez des entités, ajoutez des attributs, puis faites glisser les relations entre elles. Cela crée automatiquement une table de base de données pour vous, gère les jointures entre les tables et vous permet d'utiliser les actions de requête intégrées. Plus besoin d'écrire des instructions de requête. Utilisez simplement l'une des actions, ajoutez un peu de filtrage avec XPath, et il récupère les objets pour vous. Mieux encore, si vous avez un objet parent, disons un client, et que vous souhaitez obtenir les enregistrements associés, des commandes peut-être, vous pouvez simplement demander les enregistrements associés au client. Pas besoin d'écrire une requête supplémentaire. De plus, tous les index sont gérés et vos requêtes sont optimisées.

3_La colère du code

Ensuite, il existe plusieurs types d'applications. Vous voulez un site Web ? Aucun problème. Vous souhaitez en faire une Progressive Web App ? Nous pouvons également le faire. Vous voulez une application mobile native qui fonctionne sur Android et iOS ? Bien sûr !

Ensuite, le frontend. Construit sur le framework bootstrap Mendix est équipé d'un générateur de pages Web graphique et réactif. Cela vous permettra de créer et de personnaliser rapidement des applications sans avoir besoin de réglages avancés. Vous pouvez également trouver de nombreux contrôles personnalisés prédéfinis et maintenus sur le Mendix Marketplace. Vous avez toujours la possibilité de l'étendre davantage avec SASS et des widgets enfichables React personnalisés.

Qu'en est-il de la sécurité ? La sécurisation d'une application et d'une base de données est l'un des points les plus cruciaux dans le développement d'un système. Mendix Vous pouvez vous attendre à un ensemble standardisé de contrôles de connexion qui éliminent le risque de sécurisation d'un système et peuvent être utilisés avec des connexions locales ou un fournisseur d'authentification unique. Vous disposez également de rôles d'utilisateur intégrés qui peuvent être utilisés non seulement pour contrôler l'accès aux pages, mais également la sécurité de la base de données au niveau des lignes. Cela signifie que toute personne qui utilise votre application n'aura la possibilité d'accéder et de modifier que les données pour lesquelles elle a reçu l'autorisation. Il n'y a aucun risque d'exposer accidentellement des données à des personnes qui ne devraient pas les voir.

Tout cela et la plateforme elle-même sont constamment vérifiés et mis à jour pour garantir leur sécurité.

Avec tous ces outils réunis, vous pouvez vous attendre à ce que votre vitesse de développement soit multipliée par quatre. Je suis passé du développement C# au low-code et dans certains cas, je dirais même que c'est même plus que cela. En fait, nous sommes arrivés au point, dans la plupart des projets, où le goulot d'étranglement dans la création d'applications était en fait les user stories plutôt que les ressources de développement.

En parlant de cela, il y a aussi tous les outils de gestion de projet et de collaboration intégrés à la plateforme. Des outils pour collaborer avec d'autres développeurs de l'entreprise. Pour rassembler des histoires et gérer des sprints. Le widget de commentaires qui permet aux utilisateurs et aux testeurs de prendre des captures d'écran et de soumettre directement des commentaires qui peuvent ensuite être transformés en rapports de bugs ou en demandes de fonctionnalités.

À la découverte de nouveaux mondes étranges…

« Les générateurs de code et les systèmes low-code/no-code sont désormais partout, qu'est-ce qui vous rend spécial ? »

Il y a eu plusieurs tentatives pour obtenir des générateurs de code efficaces dans le passé et de nombreuses applications promettaient qu'elles élimineraient le besoin de développeurs et généreraient du code maintenable pour vous. Mendix est différent car ce n'est pas un générateur de code. Nous ne promettons pas de produire du code à partir de ce que vous faites. Tout ce que vous créez est stocké sous forme de modèle de métadonnées et exécuté par une plateforme dédiée.

Ce découplage de la plateforme et du code signifie que les deux peuvent recevoir des mises à jour indépendamment. Il n'est pas nécessaire de les synchroniser tous les deux. Dans une application générée par code, vous devez toujours vous assurer que la version que vous créez compile dans la version correspondante de votre environnement et que toutes les mises à jour doivent être appliquées aux deux.

Sur un système basé sur un interpréteur, il est beaucoup plus facile d'offrir des améliorations aux développeurs sans avoir d'impacts majeurs sur les environnements hébergés. Il est également beaucoup plus rapide de créer et de tester des applications, car il n'est pas nécessaire de générer un bloc de code à chaque fois que vous souhaitez l'exécuter.

À la recherche d’une nouvelle vie et de nouvelles civilisations…

« J'ai StackOverflow et tous mes pairs pour me soutenir, qu'est-ce que vous apportez à la table ? »

Le low-code prend désormais pleinement son essor et autour de lui se développe une communauté dynamique fondée sur les principes de collaboration et de réutilisation.
Vous trouverez de nombreux modules personnalisés et widgets enfichables disponibles sur notre Marketplace qui sont créés et maintenus non seulement par Mendix mais aussi notre communauté. Mendix Les créateurs aiment partager ce qu'ils ont construit et montrer ce qu'ils ont créé.

De plus, entre nos parcours d'apprentissage, notre documentation, nos articles de blog et nos forums, vous pouvez trouver des réponses à presque toutes les questions auxquelles vous pouvez penser. Si vous ne trouvez pas la réponse, posez la question sur le forum et vous obtiendrez sans doute une réponse, car elle est constamment surveillée par Mendix

Des experts toujours prêts à vous offrir un coup de main. (Cela ne fait pas de mal que vous puissiez gagner Mendix des points en étant un membre actif de notre communauté que vous pouvez ensuite échanger contre Mendix des vêtements swag comme des t-shirts, des sweats à capuche et des tongs !)

Aller avec audace là où le low-code est allé auparavant !

« J'ai passé des années à apprendre à coder, suis-je censé simplement abandonner et dessiner des organigrammes ? »

Cela ressemble à un diagramme de flux, n'est-ce pas ? Les gens utilisent des diagrammes de flux car ils sont faciles à suivre et constituent un moyen clair de représenter des systèmes logiques. Qu'est-ce que le code sinon l'expression logique d'un système ?
Les outils fournis par les plateformes low code comme Mendix sont fondamentalement des expressions des mêmes choses que vous utilisez tous les jours en programmation, comme les variables, les objets, les instructions IF et les boucles. Toutes les mêmes techniques que vous avez apprises en programmation s'appliquent toujours au low code. Il faut toujours la compréhension d'un développeur pour prendre un problème et le résoudre grâce à une expression d'instructions logiques.

Toute l'expérience que vous avez acquise peut, à l'aide de blocs visuels, être appliquée pour résoudre des problèmes en allant rapidement au cœur du problème. Vous pouvez passer moins de temps sur les fondations et les détails qui les entourent et plus de temps sur le cœur important du système et sur ses fonctionnalités.
Ensuite, si vous êtes vraiment bloqué ou avez besoin de quelque chose de plus, vous pouvez toujours étendre avec du code ou un widget enfichable.

4 alt_Wrath of Code

 

Low-code et prospérez.

J'aimerais penser que cela a répondu à certaines des questions fondamentales et des réserves que les développeurs professionnels pourraient avoir, mais je sais très bien que nous pouvons être un groupe curieux et sceptique. N'hésitez pas à nous contacter sur LinkedIn pour toute question que vous pourriez avoir ou pour tout ce que vous souhaitez clarifier.

Si vous retenez quelque chose de ce billet de blog, j'aimerais que ce soit que vous essayiez MendixNe le considérez pas d'emblée comme un autre produit low/no-code qui « ne fonctionnera tout simplement pas ». Au lieu de cela, essayez-le.

 

Choisissez votre langue