VB ? C++ ? je prend quoi à votre avis ?

Résolu
scottmat
Messages postés
438
Date d'inscription
samedi 24 mai 2003
Statut
Membre
Dernière intervention
23 janvier 2011
- 28 avril 2006 à 02:53
cs_casy
Messages postés
7741
Date d'inscription
mercredi 1 septembre 2004
Statut
Membre
Dernière intervention
24 septembre 2014
- 28 avril 2006 à 18:22
Bonjours à tous





J’ai besoin d’un petit conseil,



Je développe actuellement en Visual Basic.NET 2005 et j’ai en projet un petit logiciel de comptabilité. Quel langage devrais-je utiliser selon vous ? C++ je suppose.






Le souci c’est que j’utilise VB depuis quelques années maintenant et donc je commence à être à l’aise, et je ne connais pas du tout le C++. A votre avis cela vaut vraiment le coup d’apprendre le C++ en gain de performance ?




Merci d’avance à tous ;)

9 réponses

cs_DARKSIDIOUS
Messages postés
15814
Date d'inscription
jeudi 8 août 2002
Statut
Membre
Dernière intervention
4 mars 2013
131
28 avril 2006 à 06:54
pour faire un prog de compta, je pense que le VB suffira amplement : le C++ n'est pas si rapide que cà selon l'utilisation que tu en fait (surtout si tu compare C++.NET avec VB.NET), comparé à VB, mais tout dépend les versions que tu prends bien entendu.

Avec VB6 par exemple, une fois ton programme compilé, en général, tu y gagne du temps en éxécution en le faisant en C++, mais perso, je trouve que c'est vraiment négligeable au vu du temps passé à développer !

Si en plus tu utilise les API Windows pour toutes les tâches lourdes (du style traitement d'image par exemple), tu n'y gagnera vraiment pas grand chose de tout coder en C++.

En VB.NET par contre, c'est une autre histoire : le programme est bien plus lourd qu'un prog C++ pur. De plus, ca évitera de devoir être dépendant du framework .NET, ce qui n'est pas négligeable selon moi. (si tu fait ton prog en C++ pur bien entendu, et non en C++.NET !).

Donc si tu crois y gagner un facteur 2 fois plus rapide en passant de VB à C++, ne rêve pas trop (ce sera le cas pour certaines tâches, voir plus, mais pas du tout dans le cas général). Il vaut mieux passer plus de temps à chercher de bons algo rapides que tu codera en VB plutôt que de perdre du temps à implémenter un algo plus basique en C++ en croyant que le C++ le rendra plus performant qu'en VB !

Je m'étais lancé dans l'expérience C++ après avoir développé durant 5 ans en VB (bon à l'époque, j'étais loin d'avoir le niveau d'aujourd'hui), et j'avais vite laissé tombé.
Maintenant, je préfère toujours développer en VB (voir même en java !) plutôt que de coder en C++ : le C++ est un langage assez spécial à apprehender, avec une syntaxe vraiment peu pratique, avec ses int* variable, *variable, &variable, const* int* variable, etc. bref, tout pleins de syntaxe qui font qu'il faut réfléchir un minimum avant même d'écrire une déclaration de variable ! De plus, c'est un langage ou il faut penser à tout : est-ce que je dois détruire telle variable ? Est-ce que je dois passez par un pointeur ? Ce paramètre de fonction doit-il être constant ? Pleins de question que l'on ne se pose généralement pas en VB...

Donc perso, je serais toi, si tu ne cherche pas les performances à tout prix, et que tu veux éviter de te prendre la tête (surtout pour faire un prog de compta !), reste sous VB (si tu cherche néanmoins un minimum de performances, tente l'expérience VB6 à la limite... ;).

_
Avant de poster dans le forum,
prière d'aller lire ceci :
http://www.codes-sources.com/reglement.aspx
<s></s>
3
radcur
Messages postés
282
Date d'inscription
lundi 29 septembre 2003
Statut
Membre
Dernière intervention
15 août 2012
2
28 avril 2006 à 04:18
Il y a plusieurs facteurs que nous ignorons.  Tu développes pour le plaisir (passe-temps) ? pour affaires ? pour le travail ?  Y-a-t-il un temps limite ? Ton niveau d'expérience en programmation, etc.

C'est relatif à ton projet selon moi.

Si le niveau de difficulté de ton projet est élevé, tu es peut-être mieux d'y aller avec ce que tu connais le mieux.

Si tu développes pour le plaisir et qu'il n'y a pas de date limite, essaies-toi en C++.

Si c'est pour affaires ou pour le travail : si tu peux prouver que le temps qu'il te faudra en plus pour apprendre le C++ et programmer ton projet sera économiser à l'utilisation parce que tu auras utilisé C++ alors tente ta chance en C++. 
Exemple: tu prévois 1 mois de plus pour apprendre C++ et faire ton projet mais que tu économisera 1 seconde par telle ou telle opération qui sera faite à telle fréquence (disons 2 fois par jour * 20 jours ouvrables par mois (en moyenne) = 40 secondes par mois)   Si tu fais cet exercice en général tu auras un temps moyen que tu économiserais à l'utilisation.  Ensuite à toi de voir si ça vaut le coût !
0
crenaud76
Messages postés
4172
Date d'inscription
mercredi 30 juillet 2003
Statut
Membre
Dernière intervention
9 juin 2006
28
28 avril 2006 à 09:06
Il est clair que pour faire un soft de Comptabilité le VB (même en version 6) s'en sortira honorablement bien !
0
BruNews
Messages postés
21041
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
26
28 avril 2006 à 11:16
Dark > va voir la source sur algos de tris (je n'ai plus l'url), quicksort en C = VB * 22.
Il est clair qu'une suite d'appels API faite depuis VB ou C ou tout autre langage ne variera pas de beaucoup mais dès qu'il y a du code interne au prog, plus rien ne peut se comparer à du natif (correctement écrit bien entendu).

ciao...
BruNews, MVP VC++
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
BruNews
Messages postés
21041
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
26
28 avril 2006 à 11:20
URL retrouvée:
http://www.vbfrance.com/code.aspx?ID=37093

ciao...
BruNews, MVP VC++
0
cs_DARKSIDIOUS
Messages postés
15814
Date d'inscription
jeudi 8 août 2002
Statut
Membre
Dernière intervention
4 mars 2013
131
28 avril 2006 à 11:31
Je suis tout à fait d'accord avec toi BruNews, mais comme je l'ai dit précédement :
"Donc si tu crois y gagner un facteur 2 fois plus rapide en passant de
VB à C++, ne rêve pas trop (ce sera le cas pour certaines tâches..."
ET SURTOUT :
"Il vaut mieux passer plus de temps à chercher de bons algo rapides que
tu codera en VB plutôt que de perdre du temps à implémenter un algo
plus basique en C++"

Le quicksort est plus rapide, d'accord, mais est-ce que ca vaut le coup d'apprendre un langage bien plus compliqué que VB pour y gagner 10 à 20 secondes sur une opération (je te rappelle que c'est pour faire un logiciel de compta, donc qui ne nécessite pas forcément beaucoup d'opération de calculs long et compliqués, mais plutôt des petits calculs utilisant des tables de bases de données...).

Pour faire un logiciel de gestion, je pense vraiment que le VB est plus adapté, non pas en rapidité d'éxécution mais en facilité et rapidité de codage.

Après c'est sûr, ceux qui s'y connaissent en C++ je ne leur conseillerai pas de le développer en VB, à moins qu'ils aient des contraintes de temps pour distribuer le soft, mais là, autant qu'il reste en VB tu crois pas ?

_
Avant de poster dans le forum,
prière d'aller lire ceci :
http://www.codes-sources.com/reglement.aspx
<s></s>
0
BruNews
Messages postés
21041
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
26
28 avril 2006 à 11:37
C'est certain que s'il utilise une DB et 2 ou 3 datagrid, dotnetterie est toute indiquée.

ciao...
BruNews, MVP VC++
0
scottmat
Messages postés
438
Date d'inscription
samedi 24 mai 2003
Statut
Membre
Dernière intervention
23 janvier 2011
1
28 avril 2006 à 14:08
merci beaucoup à tous
je vois que ca a fait couler de l'encre lol
j'avais essayer d'apprendre le C++ moi aussi il y'a quelques mois et j'ai lacher l'affaire, tout comme toi DARKSIDIOUS.
D'après vos conseils je pense que je vais rester en VB
Je vais y gagner du temps en temps de programmation.

Merci encore à tous ;)
0
cs_casy
Messages postés
7741
Date d'inscription
mercredi 1 septembre 2004
Statut
Membre
Dernière intervention
24 septembre 2014
41
28 avril 2006 à 18:22
Pour remettre un peu d'huile sur le feu, je dirrait qu'il existe une solution intermédaire, celle que j'utilise quelques fois lorsque je veux un peu de performance sans me prendre la tete.

Il s'agit de dévolopper toute l'ossature du soft en VB (5 ou 6 pour moi, j'ai encore peu d'expérience en . NET) et tout ce qui est traitements internes, gros calculs, choses sur lequelles je veux récupérer de la performance, je les déporte dans une DLL en C (en C pur, pas en C++, je n'ai jamais réussi à me faire aux histoires de classes, héritages, et le reste de la famille, lol).

Mon conseil :
- Tu connais VB (classique et .NET à priori), tu ne connais pas le C++,
- Tu veux développé un soft relativement performant en un minumum de temps --> VB classique
- Tu as plusieurs mois devant toi et envie de t'éclater à apprendre un nouveau langage, fonce sur le C++
- Tu ne cherche pas de grosse performances, et tu as un peu de temps pour le faire, tu peux tenter l'aventure en VB.NET.

En gros, tout dépend de ton envie et surtout de tes contraintes.

0