windev, webdev sont-ils un bon investissement?

Cyril GROS

Nouveau membre
moi j'utilise windev, qui certe n'est pas parfait mais qui pour des applications de gestion fonctionne tres biens et évolue dans le bon sens. Je suis tres sensible au fait que c'est un produit francais et lorsque je paye mes licences je favorise les emplois en france plutot que d'acheter des produits américains a des firmes qui font tout pour ne pas payer d'impots dans les pays ou ils font leur bénéfices.
 

Zoobye

Nouveau membre


Bonjour,

Je souhaite créer des programmes multi-plateforme sur PC, tablette et smartphone et communicant par un serveur mais je ne sais pas part où commencer.
Donc pourrais tu me dirais quel langage va avec avec quel type d'application (jeux, bureautique, GPS, ..)
Il est vrai que dans un premier temps que Windev m'intéressé beaucoup mais je ne suis pas fermer car complétement ignorant dans le domaine

Merci
 

DavDev

Nouveau membre
Pour moi c'est la CATA !!!!
Après 23ans de développement (Pascal, C/C++, Java, PHP, Perl, VB,...) chez une multinationale j'ai tombé sur un client qui pleure les performances de son application développé par un autre programmeur. J'ai commencé par vérifier son infrastructure informatique (serveur, pc, réseau, anti-virus,...) c'est impeccable avec un nouveau serveur dell hyper puissant! pour s'assurer encore, j'ai installé un erp pour tester son infrastructure, c'est nickel!
J'ai donc décidé de mettre les mains dans le code et vérifier l'existant! ça l'air très simple comme code, lisible et rien de compliquer!
j'ai donc décidé d'examiner sa base de donnée (9GO); la conception est correcte
il me reste que à développer par moi même de simple fenêtres pour je sois sûr de tout! surprise! je découvre la cata! d'une connerie qui s'appelle Windev V17!
Exemple : j'ai besoin d'un tableau qui affiche des données de 3 tables!
SELECT SUM(C1.champ1), C2.champ2, C3.champ3
FROM table1 C1
LEFT JOIN table2 AS C2 ON C1.id = C2.id
LEFT JOIN table2 AS C3 ON TRIM(C1.col2) = C3.colX
GROUP BY C1.champ1, C2.champ2, C3.champ3

horribles!!!!!! les jointures!!!! avec windev! Le temps d’exécution de cette très simple requête est de quelque dizaine de minutes! énorme!
après des tests, le fait d'ajouter le trim ça coince l'exécution de la requête et il faut des minutes pour elle se termine sur des tables de 100 milles lignes (tables tronqué pour réduire les temps)
j'ai migré les 3 tables sur mysql et l’exécution de cette requête n'a pas dépassé les 9ms après plusieurs tests

je vous parle pas de sous requête!!!
l'obligation de déclarer le nom de chaque table pour une application client/serveur (sans analyse)
des bugs à gogo!
des trucs qui font rire!
des temps d’exécution énormes pour des fonctionnalités un peu avancées
...

Windev ne peut pas être appelé un outil de développement pour des développeurs mais une connerie pour des bricoleurs qui se contente d'afficher les données d'une table dans un tableau!

à déconseiller ABSOLUMENT pour les débutants! (pour moi pascal/ada, puis C++/Java, sont les meilleurs pour apprendre les notions de la programmation)
Pour les sociétés/Investisseurs/Clients vous arriviez à un impasse une fois vos applications se développent un peu! et vous devrez refaire le boulot de a-Z!
c'est une perte d’énergie, de temps, d'argent, de nerfs!,...

@à l'équipe de Windev! : je vous déteste pour le temps perdu de ma vie avec vos conneries!!!!

pour les autres, je suis prêt à s'investir dans des benchmarks s'il y a un courageux qui y est prêt de faire un pari! sur des tables de + 100 milles lignes :)

La pire connerie que j'ai rencontré dans ma vie professionnel! :fou:
 

gedd

Expert
@davdev c'est hard quand même, mais je peux comprendre la colère engendrée par le temps perdu à un prix fou. Si je ne suis pas fan de windev, il ne me semble pas avoir été décrit comme un dieu du langage SQL. Bref le tout intégré au final ...
 

DavDev

Nouveau membre
@gedd : voici un très simple et basique exemple du langage SQL que ce x18 hyperfilesql (en 2013) ne le gère pas encore! :

SHOW TABLES;

Autre exemple : tu peux pas faire une recherche sur l'ensemble des tables (mon client avait plus de 70 tables...)
Je ne suis pas très sûr qu'on peut créer une vue via sql de ce très puissant (x18) hyperfilesql! hhh : CREATE VIEW .... il faut passer par des fonctions WLangage à la créevue
....
....
(je reviens vers vous (chers pro windev!) chaque fois je me souviens de mes cauchemars!)
 

zeb

Modérateur
@DavDev : Ce que tu proposes n'est pas du SQL. Désolé. Ce n'est qu'une commande de MySQL.
 

DavDev

Nouveau membre
@zeb je parlais sur l'équivalent de show tables chez hyperfilesql! généralement tout moteur de base de donnée y en a une commande

voici d'autres limite de hyperfilesql :
L'égalité dans une jointure de deux champs identique mais qui possèdent des espaces complété NE fonctionne pas (ex. '1234 ')
Si tu fais RPAD ça fonctionne mais le temps d’exécution de la requête est de X18! (ça fait rire!)
Like ne fonctionne pas dans une jointure si la valeur est un champ (ex. LEFT OUTER JOIN Tbl2 C2 ON (C2.Y LIKE C1.Y)
...
des trucs qui font rire! j'espère qu'un jour vont recruter un directeur technique expérimenté car là en dirait un amateur qui pilote une équipe de développeur de Visual Basic françalisé :D
 

zeb

Modérateur
Eh, tu ne vas quand même pas me prendre pour un défenseur de Windev, non !
Relis mes posts.

Aujourd'hui, j'en ris aussi, mais quand il a fallu à l'époque que je m'en serve, je ne rigolais pas, ça je te l'assure. :(

 

ddneveu

Nouveau membre
Bonjour,
Je pense pouvoir donner un avis pertinent sur les produits PcSoft que j'utilise depuis le début de leur existence (aux alentours de 1995).
Comme dans beaucoup de forum et c'est très bien comme cela, il y a des partisans et des détracteurs. Chose que je déplore cependant dans ce que je viens de lire, c'est le manque de connaissance ou de pratique en ce qui concerne les avis négatifs.
J'ai eu l'occasion de développer de nombreuses applications petites ou grandes en France ou en Amérique du Nord (et oui on utilise WinDev en Amérique) et WinDev a toujours été à la hauteur.
Pour conclure je dirais que WinDev est une boîte à outils complète, ce qui n'est pas forcément le cas des autres langages.
N hésitez pas à me contacter si vous avez besoin de plus de détails.




 

zeb

Modérateur
Mouais...
Quels autres langages, quels autres outils maîtrises-tu pour comparer ?

Parce qu'il y a boîte à outils complète et boîte à outils complète !

Vous devez être connecté pour voir les images.
Vous devez être connecté pour voir les images.
 

nanoseifer

Nouveau membre
Bonjour !

Moi j'effectue actuellement mon projet de fin d'études avec une entreprise qui souhaite changer d'outil de dev. Ils se sont orienté vers VS C# mais hésitent finalement avec windev. C'est principalement pour des développements d'applis de bureau (compta, impression, exportation), mais pas uniquement, et les développements mobiles devraient bientôt commencer. Dois-je les convaincre d'utiliser VS C#, et quels arguments donner dans ce cas?
 

ECA

Nouveau membre
Bonjour à tous,

Pour ma part, ça fait maintenant un peu plus de 2 ans que je travaille activement avec Windev. J'ai eu l'occasion d'expérimenter les versions 16 (Pas longtemps), 17 et 18 (Et bientôt la 19).
Je n'ai donc pas d'expérience sur les anciennes versions, mais d'après ce que j'ai pu lire sur les forums & cie, effectivement, il y a eu beaucoup de progrès effectués, notamment depuis la v11.

Ce que j'en pense ? Il est vraiment excellent, mais pour moi, à ne pas mettre entre toutes les mains. A noter que je ne parle ici que de Windev. J'ai eu l'occasion de voir les sorties de code de Webdev, et clairement, si Windev est un atout, Webdev est à fuir comme la peste pour de la prod de sites et applis web.

Déjà, je le déconseille clairement pour débuter, car l'un de ses gros points fort est qu'il mache pas mal de boulot pour nous, et donc pour apprendre, c'est clairement pas une bonne chose.
En gros, j'estime que pour bien utiliser Windev, il faut déjà savoir faire tout ce qu'il fait dans un autre langage de programmation "à la paluche". Ca permet de bien comprendre ce qui se passe, et de ne pas faire n'importe quoi.

Pour résumer les points forts :
- L'interface graphique des applis se fait en visuel. Pas de code à réaliser.
- Programmation sous forme événementielle, particulièrement adaptée à de l'informatique de gestion. Par exemple, pour un bouton, on a le code d'initialisation, le code déclenché au clic, au survol, au double clic, etc. Pour un tableau (une table, dans le vocabulaire Windev), on va avoir le code d'initialisation, de sélection d'une ligne, d'entrée et de sortie d'une ligne (on peut modifier des contenus de tables à la volée), etc., et la même chose colonne par colonne. Bref, une gestion d'événement sur les différents éléments graphiques assez complète, qui laisse un grand nombre de possibilités.
- Editeur d'analyse bien foutu, permettant une représentation graphique MERISE de la BDD, avec une gestion des contraintes d'intégrité bien foutue aussi.
- Multi-BDD
- Editeur de requête plutôt bien foutu, qui accélère grandement la rédaction de requêtes (il a aussi ses limites, j'en parlerai dans les points négatifs)
- Gestion de la POO
- Gestion de composants plutôt bien faite. Ca permet de réaliser des fonctions, fenêtres & autre dans un composant, réutilisable ensuite dans plusieurs applis. L'intégration dans les applis est bien gérée, la mise à jour du composant aussi, bref, c'est agréable. (En composant, j'ai fait un éditeur de règles de calcul formel avec les fonctions réalisant le calcul à partir de valeurs données et un gestionnaire de licences pour les logiciels que je développe).
- Pas mal d'éléments internes bien foutus, avec leurs limites, certes, mais qui aident beaucoup quand même. Par exemple, les champs Agenda et Planning, qui fonctionnent très bien (sauf l'alimentation automatique des rendez-vous depuis la base de données, qui fonctionne, mais est très restrictive. Perso, je gère l'alimentation en manuel, et utilise le reste des fonctions automatiques de ces deux champs).
- J'en oublie sûrement ^^

Et les points faibles :
- Si on ne sait pas faire à la paluche ce que fait une fonction ou un champ "tout fait" de Windev, on se demande assez vite comment il fonctionne exactement
- L'éditeur de requête a ses limites. Particulièrement en cas de jointures multiples avec un mix de jointures internes et externes sur un nombre de tables assez important (au dela de 6/7 tables, il se viande régulièrement). Par contre, je vois souvent des personnes râler à cause de ça, mais pourtant, il existe une solution extrêmement simple à la portée de tout développeur digne de ce nom : On retrousse ses manches, on passe en édition manuelle de la requête, et on tape son code SQL à la paluche ! On le fait bien dans d'autres langages, pourquoi ne pas le faire ici quand l'éditeur atteint ses limites ?
- Les tableaux associatifs sont encore très limités (et ça, ça m'emm**** sérieusement). Notamment, on ne peut pas faire de recherche sur les clefs. Cela dit, comme tout problème, il peut se contourner. Pour le cas des tableaux associatifs, même si ça fait deux lignes de code en plus, on contourne le pb en alimentant un tableau de chaines avec les clefs utilisées dans le tableau associatif, et on a résolu le problème.
- Je vais détailler un peu plus un des gros points noirs de Windev, pour tenter de mieux décrire le genre de problème qu'on peut rencontrer.
Windev dispose d'un mécanisme permettant d'accéder et de modifier très facilement la BDD. Par exemple, je veux ajouter un contact dans ma table contact. Je fais ainsi :
Code:
Contact.Nom = "DUPOND"
Contact.Prénom = "Jean"
Contact.age = 32
hAjoute(Contact)
nIDNouveauContact est un entier = Contact.IDContact
A noter que ces deux dernières lignes peuvent se noter en anglais sans pb :
Code:
HAdd(Contact)
nIDNouveauContact is int = Contact.IDContact
Toutes les fonctions Windev, les mots-clef, etc. en français ont leur homologue en anglais, et peuvent être traduits via un simple clic dans l'éditeur de code.

MAIS ! Contrairement à ce que préconise Windev dans son aide (plutôt bien faite, il faut le reconnaître), je déconseille FORTEMENT l'utilisation de ce mécanisme pour parcourir les données d'une table si vous n'êtes pas sûr que ces données ne peuvent pas être modifiées ailleurs au même moment. En effet, si vous lisez le contact d'ID 5, pour modifier son âge :
Code:
HLitRecherchePremier(Contact,IDContact,5)
Contact.age++
hModifie(Contact)

Pas de pb. Seul l'enregistrement d'ID 5 est concerné.

Mais si vous avez des fonctions travaillant en Ping-Pong, par exemple : Vous recherchez dans une première fonction les "Contact" correspondant à une personne adulte :
Code:
HLitRecherchePremier(Contact,DateNaissance,Vrai)
TANTQUE HTrouve(Contact)
	AfficheLesEnfantsDuContact(Contact.IDContact)
	HLitSuivant(Contact)
FIN
et que dans la fonction AfficheLesEnfantsDuContact(), vous refaites une nouvelle recherche sur le fichier contact avec HtlitRecherchePremier (ou toute autre fonction Hxxx de Windev), vous "cassez" le parcours intial, car la couche d'accès à la base en utilisant le nom des tables et de leurs rurbriques (Sous la forme table.colonne) est globale, et non locale à la fonction en cours. Si vous lisez un enregistrement de Contact dans une fonction, c'est celui-là qui sera accessible via Contact.xxx dans TOUTES les fonctions/fenêtres/classes & autres parties de votre logiciel.
C'est encore pire quand vous devez gérer l'accès aux données dans une fonction récursive.

Mais alors comment faire pour palier à ça ? Bah c'est très simple, on programme correctement : On fait des requêtes ! :D

Le mécanisme décrit ci-dessus est par contre vraiment très pratique pour gérer les ajouts/modifications/suppressions d'enregistrements, et personnellement, j'en use sans modération, sans problème. :)


Bref, pour conclure, Windev est loin d'être parfait, c'est indéniable. Mais chacune de ses lacunes peut être comblée en mettant les mains à la pâte, sans en faire plus que dans un autre langage de programmation.
Mais passé ces quelques lacunes, il permet vraiment de gagner un temps considérable, particulièrement pour tout ce qui est logiciels de gestion.

Le gros défaut à ne pas attraper en utilisant Windev (Je l'ai chopé au début, je l'ai corrigé depuis) : Tout va tellement vite que quand on atteint une des limites de Windev, on peste parce que ça marche pas. Il faut juste prendre son mal en patience, coder à la main ce qui pose problème, comme on l'aurait fait avec un autre langage, et c'est fait. Même si c'est plus long qu'avec les mécanismes internes de Windev, c'est pas plus long qu'avec un autre langage, et au final, sur le reste, on continue de gagner du temps.

Cela dit, comme je l'ai dit au début, et j'insiste sur ce point, si vous ne savez pas programmer convenablement dans un autre langage, et que vous ne savez pas faire l'essentiel de ce que "mache" Windev à la paluche, oubliez de suite ce logiciel, sinon, vous ferez immanquablement une véritable usine à gaz.

Désolé pour le pavé, et en espérant que ça aidera d'autres personnes dans leur choix ! :)
 

niko9600

Nouveau membre
Hello,

Je me tate également à acquérir windev, j'ai eu l'occasion de le tester et c'est vrai que c'est très pratique pour faire rapidement une application ergonomique.
Avec notamment plein de fonctions et composants intégrés (ex tout bête DsauveimagePNG qui permet d'enregistrer un champ image au format PNG, existe aussi avec les autres formats classiques..).
Ce qui pêche un peu comme cela a été dit c'est leur base de donnée, mais pour attaquer une base externe SQLserveur ou autre c'est niquel (une fois qu'on a piger les quelques pièges à éviter).

En tout cas pour faire une appli moderne c'est top (avec par exemple une gestion simplifiée du drag and drop, des API windows etc...)
Seul hic : c'est pour Windows uniquement, MAIS, on peut exporter en Java (attention quelques fonctions ne sont pas dispo) pour passer sur mac.

Et j'ai vu pour la version 19 qui va sortir d'ici 1 mois qu'il y a encore pleins d'ajout et corrections interessantes (par contre faut raquer encore..)

Pour débuter néammoins je conseille Access 2007 ! et oui personne n'en a parlé mais c'est le top, très simple, il permet vraiment de comprendre le fonctionnement d'une BDD. On a accès aux tables directement, l'éditeur de requete est juste ENORME, on peut convertir sa requête en SQL directement etc.

Perso j'ai eu un peu de mal à passer sur windev après access car avec access en 2 min tu fait un formulaire des tables et des requetes et tu les visualise en live. Sous windev le fichier (=table) n'est pas généré tout de suite, il faut créé un champ dédié pour le visualiser ou utiliser le WDmap qui est pas top je trouve.

Bref, pour développer une petite appli rapide, si tu n'as pas besoin d'une belle IHM => ACCESS, sinon Windev.

Et a tout ceux qui parle de C#, java etc... ce n'est pas le même monde. Maintenant il y a deux type de développement.
Le développement lourd, code à fond, IHM pourrie (c, java etc..) qui permet de faire quelque chose de très fiable/rapide, et de concevoir des EDI performants. Et ensuite il y a le développement adapté à l'utilisateur, simplifié, avec pleins d'outils intégrés qu'on a pas besoin de coder, et là tu as access, windev etc.. Bientot tous les développeur d'application utilisateur n'utiliserons que ce type d'EDI.
Les autres développeur continueront à utiliser des pages et des pages de codes pour créer les dites EDI :) enfin ce n'est que ma vision de l'avenir..
 

koala-37

Nouveau membre
Bonjour
WinDev est une bonne solution, facile à mettre en œuvre. Il faut utiliser les outils de développement pour ce qu'ils savent bien faire. Pour ma part, la prise en main a été facile et le développement multi plate formes oracle, hyperfile ne m'a pas posé de problèmes. Les interfaces sont faciles à utiliser, anglais ou français, à partir du moment où l'on sait de quoi on parle il n'y a pas de problèmes. Les déploiements sont faciles et la maintenance par patch à partir du réseau très efficace, gestion multi langue des interfaces intégrée. Je recommande même pour des applications complexes avec des bases de données assez volumineuses (400go, >200tables), si les index ont bien été pensés il ne doit pas y avoir de soucis de temps de réponses. Bref un développement WinDev se pense et se prépare comme tout projet informatique. PS: je travaille avec WinDev depuis un peu plus de 2 ans et sans regrets. C'est simple et efficace et répond à mon besoin.
 

zeb

Modérateur
Et gna gna gna
Et gna gna gna...

La version 19 est en vente depuis peu. Alors il faut absolument en dire du bien partout sur tous les forum.
Les posts précédents puent l'agence de promotion Web !

Je les laisse pour vous montrer le pouvoir lénifiant d'une bonne communication, bien orchestrée.

----------------------------

Avant de vous faire une idée, échangez avec de vrais membres du forum.
Un auteur cumulant 1 message et qui ne réagit pas est sans doute un faux-nez d'une agence de promotion !
Surtout en période de promotion... :pfff:
 

efzfzefezf

Nouveau membre
de la plaisanterie que je ne connais pas un seul AGL au niveau de windev , visual studio est puissant mais ds la realisation d un projet windev t evite tous soucis de design et falicite l utilisation du logiciel avec ces champs qui regorgent d options

 

ECA

Nouveau membre


Pour ma part, j'ai posté bien avant que la v19 soit sortie, je suis un lecteur, même s'il est vrai que je n'ai jamais participé activement au forum (en général, je me contente de la newsletter), et non, je n'ai pas la moindre affiliation avec eux. Je suis juste utilisateur de Windev pour une partie des développements que je réalise avec ma société.

Mais comme j'ai dit : Entre de bonnes mains, c'est un outil très puissant. Entre de "mauvaises" mains, ça fait de la m**** (Mais ça, c'est valable pour toute forme de programmation ;) )
 

Berboral

Nouveau membre
40 ans dans l'informatique.
Assembleur, Cobol, RPG, Fortran, Basic, Pascal, C, C++, je connais et j'ai pratiqué.
Les environnements de développement tels que Delphi et Visual Basic je connais également !
Java Javascript Html CSS and so one, j'ai également utilisé
Windev est avant tout un environnement de développement et non pas un langage comme semble le dire pas mal de commentaires.
Le langage utilisé par cet environnement se nomme WLangage.
Mise à part l'interface visuel, ce même langage est utilisable pour les smartphones (Ios, Android et windows) et sur les plateformes Linux Mac et Windows. D'une manière générale le code est à 80% compatible quelque soit le système d'exploitation.
Effectivement Windev ne fait pas le café mais avec le matériel adapté et trois lignes de code avec un programme développé avec Windev vous pouvez déclencher la mise en marche de la cafetière ou piloter un drome et également fermer les voler de votre maison.
La manière dont sont développées les fonctions le développeur Windev s'en moque, c'est le résultat qui compte et pour cela le WLangage est pratiquement imbattable.
Ensuite pour la petite histoire si vous désirez postuler chez PCSoft la connaissance du WLangage ne sera pas pour vous un atout, il recherche avant tout des développeurs C, C++, javascript, html etc. connaissant parfaitement les différents OS du marché. Charge à eux de faire en sorte que les contraintes d'exploitation soient minimisées pour les utilisateurs de leurs logiciels.

On ne demande pas à un boulanger d'être meunier ni à un meunier d'être agriculteur

PS pour zeb
Je n'ai rien à voir avec PCSoft ceci est un avis personnel
J'ai remarqué que vous critiquez allègrement ECA avec votre
Et gna gna gna
Et gna gna gna...
en ajoutant : Un auteur cumulant 1 message et qui ne réagit pas est sans doute un faux-nez d'une agence de promotion !
Pourtant au premier message de DavDev du 1 juillet 2013 critiquant Windev ce dernier a eu droit à un joli LOL.
Soyez cohérent! c'est avant tout ce qu'on demande à un développeur ......
 

ECA

Nouveau membre
Merci Berboral de recadrer les choses.

@zeb : Autre précision, si j'avais vraiment voulu faire de la pub pour PCSoft, vous croyez vraiment que j'aurais relevé les lacunes de Windev, et que j'aurais dit qu'il est déconseillé pour les débutants, alors que c'est le "credo" même de PCSoft ?
Pour ma part, je bosse sur un projet où on en est à plus de 45000 lignes de code. Alors croyez-moi, les avantages et les lacunes de Windev, j'ai eu le temps d'en faire le tour !

Et pour ceux qui se demandent si Windev vaut le coup, je vous invite à relire mon message un peu plus haut. (En gros, ça dépend avant tout de vos compétences, et notamment de votre capacité à vous adapter et à développer des solutions personnalisées quand les automatismes font défaut)
 
Vous devez vous inscrire ou vous connecter pour répondre ici.
Derniers messages publiés
Statistiques globales
Discussions
730 143
Messages
6 718 274
Membres
1 586 409
Dernier membre
Artorias75
Partager cette page
Haut