Une alternative à WinDev et WebDev ?

a marqué ce sujet comme résolu.

Bonsoir ! :)

Cela fait un moment que je n’avais pas posté sur ce forum. Mais là, j’ai besoin d’un petit coup de pouce !

Au travail, on m’a montré un logiciel de développement : WinDev de PCSoft.

Et j’ai adoré. Je ne saurais dire ce qui m’a plus le plus, mais je trouve cet outil franchement génial, même si certains dirons qu’il est propriétaire. Mais, faisons abstraction de cela, si vous le voulez-bien.

Le soir même, j’ai donc cherché à me le procurer, sauf que :

  • Ils ne vendent qu’à des professionnels (et non, l’entreprise ne peut pas m’aider là dedans)
  • Le prix, bien que pas si cher que ça pour une entreprise, représente une somme non négligeable pour un particulier (on parle de plus de 1000€).

Je suis donc à la recherche d’une solution similaire. C’est à dire :

  • Un client lourd (donc pas de version "cloud sur le web")
  • Possibilité de développer des applications web et prise en compte du SEO (donc pas comme Flutter par exemple)
  • Un gain de temps dans le développement
  • Un logiciel "tout en un", puisque WebDev propose tout une panoplie de truc super utiles, comme la base de données, l’éditeur de code, l’éditeur en glisser-déposer, …
  • (Vraiment optionnel) de pouvoir développer des applications Desktop et mobile avec la même base de code (c’est possible avec WinDev pour le desktop, WebDev pour le Web, et WinDev Mobile pour les applications mobiles).

Avec un petit supplément :

  • Un prix pas exorbitant, pour un particulier. Achat One-Time préférable, mais un abonnement peut convenir (voir du gratuit aussi ! :) ).
  • Quelque chose d’un minimum sérieux, pas un truc trouvé au fin-fond du web.
  • (Un vrai plus) Disponible sur macOS

J’ai cherché "RAD" sur Google, pour "Rapid Application Development", qui, si j’ai bien compris, caractérise bien WinDev/WebDev. Mais ce que j’ai trouvé ne m’a pas franchement convaincu.

Peut être connaissez-vous des alternatives ?

Toutes les recherches que j’ai fait ne m’ont pas vraiment aidées.

Merci ! :)

+0 -0

Salut,

Je ne suis pas sûr de comprendre quel est le « gain de temps » que tu recherches, mais est-ce qu’une technologie plus « classique » (Python, Java, JS, etc.) ne pourrait pas convenir ?

En Python par exemple tu retrouverais cet aspect « tout en un » avec une bibliothèque standard très bien fournie.

Salut,

Au vu de ta demande, je pense que tu souhaites plus t’orienter vers ce que l’on appelle les outils "no-code/low-code". Faire une recherche avec ces termes te donneras sûrement de meilleurs résultats qu’avec "RAD".

Je pense que tu as déjà croisé les outils d’Embarcadero (Delphi and co). Ça ressemble à ce que tu recherches, mais je suppose que ça coûte cher. En alternative OSS, tu peux trouver Lazarus. Pas sûr qu’il y ait une communauté très active par contre…

Sinon, côté no-code/low-code, tu peux trouver Webflow, Bubble, Retool, etc… mais là tu pars sur des clients web.

Après, je partage le scepticisme d’entwann. La sensation de productivité est souvent illusoire et décroit avec le temps, ou alors viens avec un coût dans un autre domaine (argent, performance, …) extrêmement important et souvent bien caché par l’éditeur du logiciel. Soit sûr de bien comprendre les trade offs avant de t’investir à fond dedans.

Salut,

Je plusseoie mon voisin du dessus : ce que tu cherches, pour moi ça ressemble plus à des outils no-code/low-code. Les bons outils de ce type sont très bons et très efficaces pour faire exactement ce pourquoi ils sont prévus, et absolument rien d’autre : tu peux gagner énormément en productivité dans un cas très précis, mais tu perds dans les mêmes proportions dès que tu tentes le moindre écart de ce cadre. Par contre, je suis d’accord avec toi sur un point : bien utilisés, ces outils peuvent être très impressionnants tant que tu restes dans le cadre (d’où le côté impressionnant).

Pour avoir été aussi du côté « développeur » de la barrière (un produit qui ressemble mais ne réponds pas du tout à ton besoin), je peux te garantir que l’immense majorité des problèmes venait des projets qui essayaient de tordre l’outil pour faire un truc imprévu avec. Avec une responsabilité partagée entre le client (qui a un marteau et donc pour qui tout ressemble à un clou) et les commerciaux (très pressés de dire « oui » au client pour qu’il signe, qu’importent les conséquences)… De plus, les besoins remplis par ces outils sont très standardisés et assez simples (pour cause : dès qu’il y a de la complexité, il faut pouvoir gérer cette complexité, et ça n’est clairement pas des outils qui vont la faire pour toi).

Et donc j’abonde sur ce point : avant de se lancer là-dedans, c’est extrêmement important de bien comprendre les limites du produit.

Les frameworks généralistes bien conçus peuvent avoir des démos « un machin en 15 secondes » impressionnantes et manquer de documentation par ailleurs ; mais tu t’en sors à un cout raisonnable parce que le framework est conçu pour ça. Les outils de no-code/low-code sont conçus pour répondre à un cas, mais ne sont pas généralistes.

Si le but derrière est de pouvoir enchainer les projets rapidement en te concentrant uniquement sur les besoins client, une autre possibilité est d’empiler les frameworks et bibliothèques de composants (là encore en connaissant leurs limites) (par exemple : VueJS + ses potes + Vuetify + …) mais il faut accepter de perdre la maitrise des détails et les performances. Ce qui ne devrait pas te poser de problème vu ta question d’origine.

Merci à tous pour vos réponses :)

Vous remettez en cause la pertinence d’un tel outil, et c’est une très bonne chose.

En effet, j’ai lu livre papier de présentation WebDev, et on peut dire qu’ils sont super fort pour vendre leurs produits. Et donc, je ne me suis pas posé plus de questions.

En revanche, je vais quand même vous expliquer pourquoi que cherche une solution comme celle-ci. Peut être que cela me permettra de résoudre mon problème, d’une façon dont je n’avais pas pensé.

En fait, il y à globalement deux problèmes, les deux aussi embêtants l’un que l’autre, mais de manière différente.

La première, c’est que, bien que j’adore le code, je trouve cela de plus en plus pénible de devoir en écrire pour des trucs basiques, alors qu’un outil en glisser-déposer, ou une interface permettrais d’avoir la même chose, en étant plus visuel et beaucoup moins pénible à réaliser (voir plus rapide si l’outil est bien fait). Cependant, je sais que cela à un coût dont parle SpaceFox : On ne peut pas tout faire avec.

En gros, écrire 100 fois la même chose, en boucle, c’est pénible. Et ça prend du temps pour un gain pas franchement évident au sein de l’application.

Le second problème, c’est que j’ai l’habitude de travailler avec le couple VueJS (Nuxt plus précisément) et ExpressJS, mais, encore une fois, il n’y au aujourd’hui rien que je trouve plus casse-pied de switcher sans arrêt entre l’API et le Front pour développer un truc. J’ai l’impression de perdre un temps énorme, et en vrai, faire ça c’est pas super agréable.

Pour le moment, j’essaye de repasser sur Laravel. Ca m’enlève au moins la partie "Switch entre API et Front", et j’avais acheté par le passé Nova, qui me permet d’avoir une administration en un claquement de doigt.

Là où j’ai du mal avec ça, c’est que comme je suis habitué à VueJS, je réfléchi trop "Application très dynamique", et donc forcément, ça marche beaucoup moins bien avec Laravel. Je pense que c’est un coup à prendre, de me réhabituer avec des choses plus "classique".

Ca répond donc en partie à ceci :

Je ne suis pas sûr de comprendre quel est le « gain de temps » que tu recherches, mais est-ce qu’une technologie plus « classique » (Python, Java, JS, etc.) ne pourrait pas convenir ?

En vrai, je travail depuis un peu plus d’un an exclusivement avec Express et Nuxt. C’est ce qu’on utilise au travail (et, je ne sais pas pourquoi, quand je bosse ne serait-ce que quelques mois avec un truc, j’oublie absolument tout ce que je sais sur l’outil avec lequel je travaillais avant).

Cependant, si un framework ou une techno quelconque permettais d’aller un peu plus vite, avec des éléments pré-fait (ne serait-ce qu’une administration (…comme Django ? :D), un système d’authentification, un système d’envois de mail, un système d’autorisations, et puis d’autres choses encore ), je suis preneur. Si en plus faire du "multi-tenancy" est facile, alors là c’est juste parfait.

Bien sûr, si en plus ça peut répondre au premier problème que j’ai énoncé, c’est encore mieux.

D’ailleurs, en écrivant ce message, je me rend compte que le second problème est plus important que le premier. ^^

Après, je partage le scepticisme d’entwann. La sensation de productivité est souvent illusoire et décroit avec le temps, ou alors viens avec un coût dans un autre domaine (argent, performance, …) extrêmement important et souvent bien caché par l’éditeur du logiciel. Soit sûr de bien comprendre les trade offs avant de t’investir à fond dedans.

En tout cas, j’ai bien vu qu’il y avait toujours un coût non négligeable en terme de billets. :D Je suis même tombé sur des outils "A partie de 3000$ par mois".

Au final, je ne suis tout simplement pas la cible de ces logiciels.

Les bons outils de ce type sont très bons et très efficaces pour faire exactement ce pourquoi ils sont prévus, et absolument rien d’autre : tu peux gagner énormément en productivité dans un cas très précis, mais tu perds dans les mêmes proportions dès que tu tentes le moindre écart de ce cadre.

C’est un peu la crainte que j’ai, en effet. J’ai pas l’impression que ce soit le cas avec WinDev/WebDev, mais je n’ai pas pu réellement les tester à fond, je n’ai que lu les documents qu’ils m’ont envoyés. Peut être que je suis tout simplement passé à côté du problème.

[…] mais il faut accepter de perdre la maitrise des détails et les performances.

Côté "maitrise des détails", je suis plutôt du genre à aimé quand c’est magique (dès l’instant ou les conventions sont claires). J’aime bien comprendre les choses aussi, mais disons que je ne ressent pas le besoin de les comprendre "dans les moindres détails".

Pour les performances, bien que ce soit une chose importante, ce n’est généralement pas bien grave dans mes projets si elles ne sont pas parfaite.

Bien sûr, il ne faut pas que le site mettent trois ans à charger, et que chaque clique fait apparaître une barre de chargement. Mais si j’ai une légère augmentation du chargement, ce n’est pas grave.

Bref, pour résumé, je dirais qu’une alternative à WebDev, c’est pas forcément ce qui répondrais à mes deux principaux problèmes. Donc déjà, merci pour vos réponses qui m’ont déjà faites avancer.

+0 -0

Hmm, à priori tu peux très bien utiliser Laravel avec Vue.js, non ? Sinon, j’ai l’impression que tu as voulu utiliser les frameworks "à configurer" comme Laravel (Flask étant plus ou moins l’équivalent en Python, si j’ai bien compris), là où tu as déjà à disposition des outils comme Symfony ou Django qui permettent d’avoir tout de suite un outil complet.

+0 -0

PCSoft propose un tarif 'Echange concurrentiel’, et je crois qu’ils ne sont pas très regardants sur les justificatifs exigés. Tu dois aussi pouvoir trouver des licences sur les versions passées (24 ou 25…) . Le seul intérêt d’avoir la dernière version, c’est qu’elle te donne accès à la hot-line. Pendant 1 an du coup.

Ceci dit, autant les retours utilisateurs sur Windev sont positifs, autant ceux sur Webdev sont mitigés.

La doc : très bien faite, c’est le point fort du produit.

La base de données intégrée : bof bof. Pour un bricoleur, elle convient, mais très vite, tu basculeras vers une BDD autre (et il faudra probablement à nouveau payer pour avoir un accès natif). J’imagine que dans la boite où tu bosses, ils n’utilisent pas la base de données intégrée.

Cependant, si un framework ou une techno quelconque permettais d’aller un peu plus vite, avec des éléments pré-fait (ne serait-ce qu’une administration (…comme Django ? :D), un système d’authentification, un système d’envois de mail, un système d’autorisations, et puis d’autres choses encore ), je suis preneur. Si en plus faire du "multi-tenancy" est facile, alors là c’est juste parfait.

Si des outils code conviennent aussi, pour absolument tous les éléments cités, Django répond très bien au besoin, d’expérience : il a des composants classiques pré-faits via les class-based views et sa gestion des formulaire évitant de réinventer la roue, génère l’administration comme tu le disais (tout en permettant de la personnaliser, y compris assez loin), gère l’auth/autorisation (via permissions et groupes), gère les mails (faut juste lui donner un serveur smtp), et y’a énormément de “plugins” à Django qui existent.

Il faut bien sûr prendre le coup (comme n’importe quelle techno), mais une fois en main c’est diablement efficace. Leur slogan ne ment pas. Et je trouve que contrairement à pas mal d’autres outils où, comme le disait SpaceFox, si on sort du cadre mâché c’est compliqué, là Django a la délicatesse de ne pas se mettre en travers si tu veux faire autrement.

+0 -0
Connectez-vous pour pouvoir poster un message.
Connexion

Pas encore membre ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte