VB VS DELPHI : LE VERDICT

fredlynx Messages postés 662 Date d'inscription mercredi 16 janvier 2002 Statut Modérateur Dernière intervention 16 octobre 2010 - 10 juin 2002 à 09:14
Whismeril Messages postés 19025 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 19 avril 2024 - 8 févr. 2017 à 14:01
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/3584-vb-vs-delphi-le-verdict

Whismeril Messages postés 19025 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 19 avril 2024 656
8 févr. 2017 à 14:01
Bonjour

avant d'exhumer un sujet dont la dernière intervention date de 12 ans, il est peut être bon de se replacer dans le contexte.
  • en 2002 un gars décide de comparer VB6 et Delphi
  • VB6 est abandonné par Microsoft depuis 1999 (soit 3 ans au paravent)
  • Delphi était en plein essor
  • l'essentiel de la conversation revient à dire que
    • le code en VB6 est mal écrit, simplement car VB6 était trop permissif (donc simple à coder, mais aussi simple à merdouiller comme ici)
    • les langages haut niveau gagnent en simplicité, au "détriment" (avec les machines qu'on a aujourd'hui c'est relatif) des performances.


Jusque là y'a rien à reprocher à Brunews, il me semble.

Un autre élément à prendre en compte est qu'il est modérateur et qu'en général, les modérateurs ne sont pas choisi pour leur incompétences....

Je suis à peu prés persuadé qu'à l'époque il pensait à un driver d'un élément de pc (carte graphique, contrôleur usb) et pas à un périphérique qu'elle qu'il soit.
Faut pas te leurrer, si ton appareil biomédical est branché en USB (par exemple) à un moment ou un autre Delphi se sert d'une dll en C pour la communication USB.
on ne peut comparer deux langages quand on ne maîtrise pas les 2 ;)

En Delphi, on peut tout faire, je travail dessus depuis 20 ans et des drivers j'en fait à la pelle en Delphi pour des appareils biomédicaux. Donc avant de critiquer tel ou tel langage, ne surtout pas hésiter à l'apprendre et à le maîtriser (ce qui est impossible) ;)
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
20 oct. 2005 à 00:31
Ah oui, autre perle un peu plus haut:
"delphi sait faire tout ce que c sait faire."
assurément non, écris donc un driver en delphi.
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
20 oct. 2005 à 00:26
Mais Windows "respire" très bien même sans DoEvents, il s'en contrefiche royalement, il n'y a que le prog qui bloque et Windows finira par l'expulser s'il ne répond pas aux messages systèmes qu'il reçoit.
Il ne faut pas analyser un problème en le regardant à l'envers.
cminus Messages postés 4 Date d'inscription mercredi 19 octobre 2005 Statut Membre Dernière intervention 15 mars 2009
19 oct. 2005 à 23:32
L'équivalent de :
en VB : DoEvent
est
en Delphi : Application.ProcessMessages;

Cela permet au système (windows) de respirer; c'est à dire de ne pas bloquer.
romit Messages postés 160 Date d'inscription jeudi 28 août 2003 Statut Membre Dernière intervention 30 juin 2011
20 sept. 2004 à 19:31
Moi je connais parfaitement les deux languages et je puis vous affirmer que VB est meiux par défaut

MAIS !!!! pour certaines fonctions Delphi est mieux.

Et vice-versa.

Le must sera un mixte des deux languages.

Avis à ceux qui cherchent des idées...


Romit.
AeTuOq28 Messages postés 22 Date d'inscription samedi 2 août 2003 Statut Membre Dernière intervention 26 octobre 2004
3 févr. 2004 à 22:16
Ici on est sur VBFrance, on envoie pas de message contre le VB.
Si tu veux dire ça va DelphiFR !
BVSoft Messages postés 3 Date d'inscription mardi 7 janvier 2003 Statut Membre Dernière intervention 19 décembre 2003
11 févr. 2003 à 12:13
Vous ne savez vraiment pas lire ; bien écrit, le code VB met 0,4 seconde pour sortir les nombres premiers de 1 à 10000, Delphi met 40 millisecondes en mode console alors que le C met 0,8 seconde dans les mêmes conditions. Il est évident que Delphi est meilleur que VB (surtout pour des calculs mathématiques...), mais VB n'est pas aussi nul que vous semblez tous le dire !!!
LiqSnake Messages postés 6 Date d'inscription jeudi 18 juillet 2002 Statut Membre Dernière intervention 15 février 2003
5 janv. 2003 à 20:23
Eh, prq ne pas utiliser un Thread pour l'exécution du code de la recherche de ton nombre premier, comme ça tu n'auras pas à utiliser Application.ProcessMessage; et le code se fera sans bloquer la fenêtre.
cs_ProgrammeurFou Messages postés 7 Date d'inscription vendredi 26 juillet 2002 Statut Membre Dernière intervention 28 juillet 2002
28 juil. 2002 à 06:55
ManChesTer a tout a fait raison ... DELPHI POWA
cs_bigane Messages postés 46 Date d'inscription lundi 4 février 2002 Statut Membre Dernière intervention 12 février 2004
21 juin 2002 à 19:44
Salut,
Voici le même code encore plus optimisé.
a+

Private Sub Command1_Click()
Dim iDStart As Long
Dim iDStop As Long
Dim i As Long
Dim j As Long
Dim Chaine As String

On Error Resume Next

iDStart = Val(Text3.Text)
iDStop = Val(Text1.Text)

Chaine = ""
nb = 0
t = Timer
Text2.Text = ""

For i = iDStart To iDStop
prem = (i <> 2)
For j = 2 To i - 1
prem = (i Mod j)
Exit For
Next
If prem Then
Chaine = Chaine & i & ";"
nb = nb + 1
DoEvents
If stopé Then
Exit For
End If
End If
Next

Text2.Text = Chaine
Label1.Caption = Timer - t
Label6.Caption = nb
End Sub
cs_ManChesTer Messages postés 374 Date d'inscription vendredi 20 octobre 2000 Statut Modérateur Dernière intervention 15 janvier 2021
21 juin 2002 à 19:17
Mdr,

Moi j'utilise delphi depuis sa version 1.0.
Il n'y a pas photo delphi est plus proche du c que de vb (essayez donc de faire une gestion correcte de la mémoire en vb).

Vb est un produit m$ et comme tout les produits m$ les correctifs n'en finissent pas, c'est notamment du au changement de personnel + que fréquent chez m$. La méconnaissances et a la non maîtrise du code qui compose vb est courante chez les développer de vb.

Il est certain que vb est bien jusqu'un certain niveau, mais il est loin de rivalisé avec c ou c++ vb n'est pas un outil professionnel, delphi l'est.

Delphi permet une gestion parfaite de tous les paramètres de votre application et il rivalise avec le c.

J'ai choisis delphi plutôt que le c ou c++ pour sa lisibilité, delphi peut se lire comme du français et sait faire tout ce que c ou c++ sait faire.

Essayez donc de mettre de l'assembleur en ligne en vb hemm...

Bref vb est très limité ce qui n'est pas le cas de tous les basics, en effet anciennement j'utilisais Gfa Basic et OmiKron Basic qui sont 2 basics qui rivalisaient avec le c sur Atari ....

Je pense qu'en basic il y a mieux que vb sur pc mais sûrement moins médiatiques.

Arrêtez donc de choisir vos logiciels de développement en fonction du marketing.

Sur ce bon coding.

Ps: Mon langage à moi resteras toujours l'assembleur.

ManChesTer.
cs_iTi Messages postés 1 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 11 juin 2002
11 juin 2002 à 18:21
Delphi, c'est le successeur du Turbo Pascal que les programmeurs du Dos connaissent bien. J'ai beaucoup programmé en Turbo Pascal, en C et en assembleur. J'ai toujours eu une préférence pour Pascal, plus rigide que le C, mais avec lequel il fallait vraiment faire le con pour planter (alors qu'avec le C...). Quant à VB, il nous permet aussi de faire pas mal de conneries (avec les déclarations de variables par ex.), qui alourdissent et ralentissent le code. On n'a rien sans rien.
cs_max12 Messages postés 1491 Date d'inscription dimanche 19 novembre 2000 Statut Modérateur Dernière intervention 7 juillet 2014
11 juin 2002 à 03:41
Je parle de delphi dans lequel je connasi pas grand chose bien sur :)

A+
cs_max12 Messages postés 1491 Date d'inscription dimanche 19 novembre 2000 Statut Modérateur Dernière intervention 7 juillet 2014
11 juin 2002 à 03:41
DelphiCool> Cool moi j'y connais pas grand chose mais pouvoir compresser a mort c'est bon

A+
www.psycomaxter.fr.st
DelphiCool Messages postés 455 Date d'inscription mardi 24 juillet 2001 Statut Membre Dernière intervention 10 mars 2009
11 juin 2002 à 00:52
"Les exe delphi plus gros que vb" c'est vrai si on utilise les compos, mais si tu ne fait que de la prog avec les API, tu as une appli à 20 Ko

regarde ce petit prog de recherche de source
http://delphicool.developpez.com/divers/Recherche_Source_DelphiCool.exe

Il ne fait pas grand chose, ok mais je n'utilise pas l'unitée Forms qui fait grossir ton exe, et regarde le resultat 23,5Ko packé upx.

"VB est plus beau que delphi" chancun ses gout et ses couleurs, je suis passé par VB et je n'ai pas aimé du tout à tout point de vu.

Il y aurras toujours quelqu'un qui diras, "bah ton IDE est bidon essaye plutot celui là tu verras..."
Alors faites ce que vous avez envie de faire, c'est l'essentiel.

PS , ce n'est pas "=:" mais ":="
cs_max12 Messages postés 1491 Date d'inscription dimanche 19 novembre 2000 Statut Modérateur Dernière intervention 7 juillet 2014
10 juin 2002 à 22:14
Bah c'est sur que Delphi est meilleur que VB mais il a quand même le défault d'être très chiant a coder et les OCX et les DLL sont packter dans le .exe ce qui donne un avantage d'autonomie. Le .exe est plus gros ceux de delphi que celui de VB mais PAR CONTRE ! Si ont inclu tout les fichiers nécéssaire a l'exécution de VB dans un pack sa fait quand même jusqua 2.5 mo min, si je me souveint bien (Sa fait longtemps que j'en ai pas fait). Mais Delphi est-il si chiant que sa a coder ? C'est sur que quelqu'un qui part de VB -> Delphi il faut une certaine motivation pour réussir a faire la transition. Est-ce que sa en vaux vraiment la peine ? Quand on peut apprendre un language encore plus puissant, comme l'ASM ou le C.

Mais bon c'est a vous de décider, vous être dans un pays libre (La plupart)

A+
DeAtHCrAsH Messages postés 2670 Date d'inscription vendredi 25 janvier 2002 Statut Membre Dernière intervention 6 février 2013
10 juin 2002 à 21:16
Le langage le plus puissants est celui de bas niveau tel que l'assembleur ....
Maintenant dans la categorie langage de haut niveau, le C est le plus puissants qui existe ...
Faut-il aussi rappeller que le DELPHI n'est rien de plus que du Turbo Pascal orienté objet ...
Cependant, malgré ce que tout le monde croit, le DELPHI n'ecessite des composants equivalent aux ocx de VB et ceci pour quasiment tout ce qui est graphique ... De plus DELPHI fait de plus en plus appelle a ces composants...

CONCLUSION :
VB et DELPHI reste des langages tres basique... Les seuls " vrai" langage sont le C et l'assembleur du fait de leur puissance...

Sur ce A++ et bonne prog :]

DeAtH_-_CrAsH

P.S : pour les amateurs de jeux, tous les jeux du style Max Payne sont fait en C ( 90% des jeux)
WhiteDwarf Messages postés 510 Date d'inscription samedi 29 décembre 2001 Statut Membre Dernière intervention 23 mai 2008
10 juin 2002 à 20:19
Le VB a été créé a ce qu'il me semble avec le C donc le C est plus rapide ke le VB et je ne pense pas ke le delphi ait été créé directement en Assembleur donc le C serai aussi plus rapide ke le Delphi car le C vien directement de l'ASM (l'assembleur)... en gros ca se résume a ca...
cs_thebigbang Messages postés 196 Date d'inscription vendredi 21 décembre 2001 Statut Membre Dernière intervention 25 juillet 2006
10 juin 2002 à 17:11
salut,

Je trouve cette opération très intéressante ... on s'aperçoit vite que VB n'est pas le MEILLEUR language ... lol

mais je pense que le delphi soit mieux que le C patr exemle ... je ne peux pas vraiment dire parce que je code pas beaucoup en C ... Mais bon ...

Informez moi ...

A++

Bigbang
cs_koko Messages postés 654 Date d'inscription lundi 14 janvier 2002 Statut Membre Dernière intervention 20 février 2005
10 juin 2002 à 13:16
c juste une question d'habitude... perso, j'ai pas trop (jamais) programmer en vb mais beaucoup en delphi et je trouve le vb plus difficile. Mais je rappelle c une question d'habitude...
cs_Mercury Messages postés 329 Date d'inscription jeudi 3 janvier 2002 Statut Membre Dernière intervention 7 octobre 2005
10 juin 2002 à 13:04
Il est clair que pour ceux qui ont débuté en programmation avec VB, le passage à Delphie peut être assez dur. La syntaxe est nettement différente, car plus complexe. Toutefois, et comme tu le soulignes dans ton descriptif, Delphi est environ 10 fois plus rapide dans le traitement de bit code, et ne nécessite aucun runtime. De nombreux avantages qui font de Delphi un sérieux concurrent de VB.
cs_Crazyht Messages postés 1522 Date d'inscription mardi 18 décembre 2001 Statut Membre Dernière intervention 21 août 2010 8
10 juin 2002 à 11:40
Bon Delphi est peu etre plus rapide mais essaye de faire la meme chose en VB.Net tu vera que Delphi n'est plus aussi performant par rapport a VB.Net et puis voila Vb est tres lent a partir du moment on l'on ne fait pas un effort pour dimensionner les variables correctement.

@++
Crazyht
cs_piwee Messages postés 34 Date d'inscription lundi 10 juin 2002 Statut Membre Dernière intervention 20 octobre 2009
10 juin 2002 à 09:47
Pour Delphi, le doevent est "application.processmessage" si je me souviens bien.
fredlynx Messages postés 662 Date d'inscription mercredi 16 janvier 2002 Statut Modérateur Dernière intervention 16 octobre 2010 3
10 juin 2002 à 09:14
Bonjour :)
Je ne connais pas delphi, j'avoue... mais j'ai quelques remarques faire sur ton Code !
La premire est au sujet du dimentionnement des Variables... c'est vrai qu'il est plus facile de programmer sans s'en soucier
mais si tu fais un chti "effort" a vaut le coup!
Deuxime chose... le Doevents est trible... mais dans ton cas il est triblement lent, because il "oblige" le rafraichissement de la textBox
donc par rapport Delphi tu perds un temps considrable !!!
Voil ce que je fait ta place ...
Nota j'ai fait le test sous VB5 :) sans toucher franchement au code juste quelque dimentionnements ... et un rem devant le doevents
parce que si tu utilises doevents tu ne peux pas franchement comparer des vitesses...
Sur ma machine le projet compil que tu as donn donne 16,9 Secondes ... le code Modifier donne 0,39 Seconde ... pas trop mal comme gain de temps

Private Sub Command1_Click()
Dim iDStart As Integer
Dim iDStop As Integer
Dim i As Integer
Dim j As Integer
Dim Chaine As String
iDStart = Val(Text3.Text)
iDStop = Val(Text1.Text)

Chaine = ""
stop = False
On Error Resume Next
nb = 0
t = Timer
Text2.Text = ""
On Error Resume Next
For i = iDStart To iDStop
prem = True
If i 2 Then prem False
For j = 2 To i - 1
If i Mod j 0 Then prem False
Next j
If prem True Then Chaine Chaine + CStr(i) + ";": nb = nb + 1
'DoEvents 'scurit pour pas faire planter votre pc
On Error Resume Next
If stop = True Then Exit For
Next i
Text2.Text = Chaine
Label1.Caption = Timer - t
Label6.Caption = nb
End Sub
Rejoignez-nous