Pour ma part je dispose de visual studio et d'un gros bouquin sur visual C++ (Visual C++ de chez Eyrolles)
Je trouve cet éditeur-compilateur très complexe. J'ai celui de Sybex. Il n'est pas bon.
Avec les indications de jean-marc je n'ai eu aucune difficulté à faire des dll pour que la partie calcul de mon programme Vb se fasse en C.
J'en ai fait également une Dll dans les mêmes conditions fin 2004 et ce sont Patrick, Olivier et Nicolas qui m'on aidé sur le groupe C++.
Pour être plus précis, je dispose d'un tableau de 60000 double qui sont les coordonnées terrestres de 30000 points et je dois recalculer à chaque clic sur une carte les coordonnées de ces points projetés sur un plan tangent à la surface du globe (le point de tangence changeant régulièrement) et je ne parle même pas de ramener tout ce calcul à la dimension de l'écran dont l'origine n'est pas au centre.
J'avais déjà signalé à l'époque que le gain de temps par le passage au C était des 2/3, c'est à dire que là où le processeur était utilisé 15 secondes, il ne l'était plus que 5.
Il s'agissait pour moi de rechercher les données du WAB, donc c'était du texte.
Par contre j'ai essayé de me mettre à java et j'ai l'impression de perdre au niveau du temps d'exécution : est-ce une illusion ou une mauvaise méthode ? Peut-on intégrer des dll en C dans du code java que cela reste portable sur toute plate-forme ?
Bon week-end à tous.
Dito
Henri
Hello Patrice Henrio,
Tu as savamment écrit :
Pour ma part je dispose de visual studio et d'un gros bouquin sur
visual C++ (Visual C++
de chez Eyrolles)
Je trouve cet éditeur-compilateur très complexe.
J'ai celui de Sybex. Il n'est pas bon.
Avec les indications de jean-marc je n'ai eu aucune difficulté à
faire des dll pour que la partie calcul de mon programme Vb se fasse
en C.
J'en ai fait également une Dll dans les mêmes conditions fin 2004 et ce sont
Patrick, Olivier et Nicolas qui m'on aidé sur le groupe C++.
Pour être plus précis, je dispose d'un tableau de 60000 double qui
sont les coordonnées terrestres de 30000 points et je dois recalculer
à chaque clic sur une carte les coordonnées de ces points projetés
sur un plan tangent à la surface du globe (le point de tangence
changeant régulièrement) et je ne parle même pas de ramener tout ce
calcul à la dimension de l'écran dont l'origine n'est pas au centre.
J'avais déjà signalé à l'époque que le gain de temps par le passage
au C était des 2/3, c'est à dire que là où le processeur était
utilisé 15 secondes, il ne l'était plus que 5.
Il s'agissait pour moi de rechercher les données du WAB, donc c'était du
texte.
Par contre j'ai essayé de me mettre à java et j'ai l'impression de
perdre au niveau du temps d'exécution : est-ce une illusion ou une
mauvaise méthode ?
Peut-on intégrer des dll en C dans du code java que cela reste
portable sur toute plate-forme ?
Pour ma part je dispose de visual studio et d'un gros bouquin sur visual C++ (Visual C++ de chez Eyrolles)
Je trouve cet éditeur-compilateur très complexe. J'ai celui de Sybex. Il n'est pas bon.
Avec les indications de jean-marc je n'ai eu aucune difficulté à faire des dll pour que la partie calcul de mon programme Vb se fasse en C.
J'en ai fait également une Dll dans les mêmes conditions fin 2004 et ce sont Patrick, Olivier et Nicolas qui m'on aidé sur le groupe C++.
Pour être plus précis, je dispose d'un tableau de 60000 double qui sont les coordonnées terrestres de 30000 points et je dois recalculer à chaque clic sur une carte les coordonnées de ces points projetés sur un plan tangent à la surface du globe (le point de tangence changeant régulièrement) et je ne parle même pas de ramener tout ce calcul à la dimension de l'écran dont l'origine n'est pas au centre.
J'avais déjà signalé à l'époque que le gain de temps par le passage au C était des 2/3, c'est à dire que là où le processeur était utilisé 15 secondes, il ne l'était plus que 5.
Il s'agissait pour moi de rechercher les données du WAB, donc c'était du texte.
Par contre j'ai essayé de me mettre à java et j'ai l'impression de perdre au niveau du temps d'exécution : est-ce une illusion ou une mauvaise méthode ? Peut-on intégrer des dll en C dans du code java que cela reste portable sur toute plate-forme ?
Bon week-end à tous.
Dito
Henri
jean-marc
"Patrice Henrio" a écrit dans le message de news:
Pour ma part je dispose de visual studio et d'un gros bouquin sur
visual C++
(Visual C++ de chez Eyrolles)
Avec les indications de jean-marc je n'ai eu aucune difficulté à faire
des
dll pour que la partie calcul de mon programme Vb se fasse en C.
Pour être plus précis, je dispose d'un tableau de 60000 double qui
sont les
coordonnées terrestres de 30000 points et je dois recalculer à chaque
clic
sur une carte les coordonnées de ces points projetés sur un plan
tangent à
la surface du globe (le point de tangence changeant régulièrement) et
je ne
parle même pas de ramener tout ce calcul à la dimension de l'écran
dont
l'origine n'est pas au centre.
J'avais déjà signalé à l'époque que le gain de temps par le passage au
C
était des 2/3, c'est à dire que là où le processeur était utilisé 15 secondes, il ne l'était plus que 5.
Cela semble tout à fait OK, c'est le gain attendu pour ce type d'opérations.
Par contre j'ai essayé de me mettre à java et j'ai l'impression de
perdre au
niveau du temps d'exécution : est-ce une illusion ou une mauvaise
méthode ?
Ni l'un ni l'autre. En calcul brut, Java est plus lent que C.
Peut-on intégrer des dll en C dans du code java que cela reste
portable sur
toute plate-forme ?
[Je ne suis pas un expert Java: ce qui suit sous réserve]
On peut appeler des fonctions écrites en C et compilées dans une dll depuis une appi en Java. Quand à la portabilité, il faut voir. Bien évidemment, si on parle de compatibilité binaire, elle disparait: une machine Unix ne saurait même pas ce qu'est une dll, envore moins compilées sous Windows.
MAIS, si on écrit les fonctions en C ANSI (ce qu'on doit bien sur TOUJOURS faire), alors pas de soucis. Il suffit de recompiler sur la plateforme souhaitée avec le compilateur adéquat, et ça roule. Par exemple sous Unix, les librairies dynamiques (équivalent des dll) existent.
-- Jean-marc Tester mon serveur (VB6) => http://myjmnhome.dyndns.org "There are only 10 kind of people those who understand binary and those who don't." mailto: remove '_no_spam_' ;
"Patrice Henrio" <patrice.henrio@laposte.net> a écrit dans le message de
news:edTi3uKjGHA.4044@TK2MSFTNGP03.phx.gbl...
Pour ma part je dispose de visual studio et d'un gros bouquin sur
visual C++
(Visual C++
de chez Eyrolles)
Avec les indications de jean-marc je n'ai eu aucune difficulté à faire
des
dll pour que la partie calcul de mon programme Vb se fasse en C.
Pour être plus précis, je dispose d'un tableau de 60000 double qui
sont les
coordonnées terrestres de 30000 points et je dois recalculer à chaque
clic
sur une carte les coordonnées de ces points projetés sur un plan
tangent à
la surface du globe (le point de tangence changeant régulièrement) et
je ne
parle même pas de ramener tout ce calcul à la dimension de l'écran
dont
l'origine n'est pas au centre.
J'avais déjà signalé à l'époque que le gain de temps par le passage au
C
était des 2/3, c'est à dire que là où le processeur était utilisé 15
secondes, il ne l'était plus que 5.
Cela semble tout à fait OK, c'est le gain attendu pour ce type
d'opérations.
Par contre j'ai essayé de me mettre à java et j'ai l'impression de
perdre au
niveau du temps d'exécution : est-ce une illusion ou une mauvaise
méthode ?
Ni l'un ni l'autre. En calcul brut, Java est plus lent que C.
Peut-on intégrer des dll en C dans du code java que cela reste
portable sur
toute plate-forme ?
[Je ne suis pas un expert Java: ce qui suit sous réserve]
On peut appeler des fonctions écrites en C et compilées dans une dll
depuis une
appi en Java.
Quand à la portabilité, il faut voir. Bien évidemment, si on parle de
compatibilité binaire, elle disparait: une machine Unix ne saurait même
pas
ce qu'est une dll, envore moins compilées sous Windows.
MAIS, si on écrit les fonctions en C ANSI (ce qu'on doit bien sur
TOUJOURS faire),
alors pas de soucis. Il suffit de recompiler sur la plateforme souhaitée
avec
le compilateur adéquat, et ça roule.
Par exemple sous Unix, les librairies dynamiques (équivalent des dll)
existent.
--
Jean-marc
Tester mon serveur (VB6) => http://myjmnhome.dyndns.org
"There are only 10 kind of people
those who understand binary and those who don't."
mailto: remove '_no_spam_' ; _no_spam_jean_marc_n2@yahoo.fr
Pour ma part je dispose de visual studio et d'un gros bouquin sur
visual C++
(Visual C++ de chez Eyrolles)
Avec les indications de jean-marc je n'ai eu aucune difficulté à faire
des
dll pour que la partie calcul de mon programme Vb se fasse en C.
Pour être plus précis, je dispose d'un tableau de 60000 double qui
sont les
coordonnées terrestres de 30000 points et je dois recalculer à chaque
clic
sur une carte les coordonnées de ces points projetés sur un plan
tangent à
la surface du globe (le point de tangence changeant régulièrement) et
je ne
parle même pas de ramener tout ce calcul à la dimension de l'écran
dont
l'origine n'est pas au centre.
J'avais déjà signalé à l'époque que le gain de temps par le passage au
C
était des 2/3, c'est à dire que là où le processeur était utilisé 15 secondes, il ne l'était plus que 5.
Cela semble tout à fait OK, c'est le gain attendu pour ce type d'opérations.
Par contre j'ai essayé de me mettre à java et j'ai l'impression de
perdre au
niveau du temps d'exécution : est-ce une illusion ou une mauvaise
méthode ?
Ni l'un ni l'autre. En calcul brut, Java est plus lent que C.
Peut-on intégrer des dll en C dans du code java que cela reste
portable sur
toute plate-forme ?
[Je ne suis pas un expert Java: ce qui suit sous réserve]
On peut appeler des fonctions écrites en C et compilées dans une dll depuis une appi en Java. Quand à la portabilité, il faut voir. Bien évidemment, si on parle de compatibilité binaire, elle disparait: une machine Unix ne saurait même pas ce qu'est une dll, envore moins compilées sous Windows.
MAIS, si on écrit les fonctions en C ANSI (ce qu'on doit bien sur TOUJOURS faire), alors pas de soucis. Il suffit de recompiler sur la plateforme souhaitée avec le compilateur adéquat, et ça roule. Par exemple sous Unix, les librairies dynamiques (équivalent des dll) existent.
-- Jean-marc Tester mon serveur (VB6) => http://myjmnhome.dyndns.org "There are only 10 kind of people those who understand binary and those who don't." mailto: remove '_no_spam_' ;
jean-marc
"Aski" a écrit dans le message de news:
Hello jean-marc,
Tu as savamment écrit :
>> nous >> conseille quant au C pur sans IHM. :-) > > Ce sera avec joie, mais quels genre de conseils?
Pardon, je parlais de l'éditeur, compilateur.
Difficile de donner des "conseils".
Note que le tutorial que j'avais indiqué pour compiler une dll est tout à fait utilisable pour faire un programme classique (un exe): http://users.skynet.be/candide/tuto/cetvb.htm
Il suffit ce choisir "Win32 Console Application" au lieu de "Win32 Dynamic Library", le reste est identique.
Perso, je suis familier de cet IDE, je l'utilise depuis plus de 10 ans (lui ou son prédécesseur). Il n'est pas compliqué, juste riche. J'ai formé une collègue au début de l'année, elle n'avait jamais utilisé cet environnement, en une matinée, elle était opérationelle et en savait autant que moi.
En revanche, il faut être familier avec la façon dont on fabrique un programme (ce que cache VB, en fait): - Préprocesseur, - Compilation, - Edition des liens.
Bien connaitre aussi les notions d'unité de traduction, de librairies statiques ou dynamiques, etc...
En fait, l'IDE de Visual C++ n'est pas plus compliqué à utiliser qu'un autre, il est même très agréable quand on le connait bien, tout aussi sympa que celui de VB. Pour l'anecdote, je ferais une page web un de ces jours qui explique comment on compile un programme en C sur un mainframe IBM sous z/OS... Tout un programme, vous pouvez me croire :-))
Pour ceux qui sont rétifs aux IDE, on peut tout à fait compiler sous Windows en utilisant gcc (gratuit) par exemple, qui est un des standards reconnus. Il y en a d'autres.
-- Jean-marc Tester mon serveur (VB6) => http://myjmnhome.dyndns.org "There are only 10 kind of people those who understand binary and those who don't." mailto: remove '_no_spam_' ;
"Aski" <aski@asci.asc> a écrit dans le message de
news:OHS5HUKjGHA.4504@TK2MSFTNGP03.phx.gbl...
Hello jean-marc,
Tu as savamment écrit :
>> nous
>> conseille quant au C pur sans IHM. :-)
>
> Ce sera avec joie, mais quels genre de conseils?
Pardon, je parlais de l'éditeur, compilateur.
Difficile de donner des "conseils".
Note que le tutorial que j'avais indiqué pour compiler
une dll est tout à fait utilisable pour faire un programme
classique (un exe):
http://users.skynet.be/candide/tuto/cetvb.htm
Il suffit ce choisir "Win32 Console Application" au lieu
de "Win32 Dynamic Library", le reste est identique.
Perso, je suis familier de cet IDE, je l'utilise depuis
plus de 10 ans (lui ou son prédécesseur). Il n'est pas
compliqué, juste riche. J'ai formé une collègue au début de
l'année, elle n'avait jamais utilisé cet environnement, en
une matinée, elle était opérationelle et en savait autant
que moi.
En revanche, il faut être familier avec la façon dont on fabrique
un programme (ce que cache VB, en fait):
- Préprocesseur,
- Compilation,
- Edition des liens.
Bien connaitre aussi les notions d'unité de traduction, de librairies
statiques ou dynamiques, etc...
En fait, l'IDE de Visual C++ n'est pas plus compliqué à utiliser qu'un
autre, il est même très agréable quand on le connait bien, tout aussi
sympa que celui de VB. Pour l'anecdote, je ferais une page web un de ces
jours qui explique comment on compile un programme en C sur un mainframe
IBM sous z/OS... Tout un programme, vous pouvez me croire :-))
Pour ceux qui sont rétifs aux IDE, on peut tout à fait compiler sous
Windows
en utilisant gcc (gratuit) par exemple, qui est un des standards
reconnus.
Il y en a d'autres.
--
Jean-marc
Tester mon serveur (VB6) => http://myjmnhome.dyndns.org
"There are only 10 kind of people
those who understand binary and those who don't."
mailto: remove '_no_spam_' ; _no_spam_jean_marc_n2@yahoo.fr
>> nous >> conseille quant au C pur sans IHM. :-) > > Ce sera avec joie, mais quels genre de conseils?
Pardon, je parlais de l'éditeur, compilateur.
Difficile de donner des "conseils".
Note que le tutorial que j'avais indiqué pour compiler une dll est tout à fait utilisable pour faire un programme classique (un exe): http://users.skynet.be/candide/tuto/cetvb.htm
Il suffit ce choisir "Win32 Console Application" au lieu de "Win32 Dynamic Library", le reste est identique.
Perso, je suis familier de cet IDE, je l'utilise depuis plus de 10 ans (lui ou son prédécesseur). Il n'est pas compliqué, juste riche. J'ai formé une collègue au début de l'année, elle n'avait jamais utilisé cet environnement, en une matinée, elle était opérationelle et en savait autant que moi.
En revanche, il faut être familier avec la façon dont on fabrique un programme (ce que cache VB, en fait): - Préprocesseur, - Compilation, - Edition des liens.
Bien connaitre aussi les notions d'unité de traduction, de librairies statiques ou dynamiques, etc...
En fait, l'IDE de Visual C++ n'est pas plus compliqué à utiliser qu'un autre, il est même très agréable quand on le connait bien, tout aussi sympa que celui de VB. Pour l'anecdote, je ferais une page web un de ces jours qui explique comment on compile un programme en C sur un mainframe IBM sous z/OS... Tout un programme, vous pouvez me croire :-))
Pour ceux qui sont rétifs aux IDE, on peut tout à fait compiler sous Windows en utilisant gcc (gratuit) par exemple, qui est un des standards reconnus. Il y en a d'autres.
-- Jean-marc Tester mon serveur (VB6) => http://myjmnhome.dyndns.org "There are only 10 kind of people those who understand binary and those who don't." mailto: remove '_no_spam_' ;
Aski
Hello jean-marc,
Tu as savamment écrit :
Difficile de donner des "conseils".
Note que le tutorial que j'avais indiqué pour compiler une dll est tout à fait utilisable pour faire un programme classique (un exe): http://users.skynet.be/candide/tuto/cetvb.htm
Il suffit ce choisir "Win32 Console Application" au lieu de "Win32 Dynamic Library", le reste est identique. ...............
Merci pour ces conseils que tu n'as pas donnés. lol rofl lol -- Cordialement Aski
Hello jean-marc,
Tu as savamment écrit :
Difficile de donner des "conseils".
Note que le tutorial que j'avais indiqué pour compiler
une dll est tout à fait utilisable pour faire un programme
classique (un exe):
http://users.skynet.be/candide/tuto/cetvb.htm
Il suffit ce choisir "Win32 Console Application" au lieu
de "Win32 Dynamic Library", le reste est identique.
...............
Merci pour ces conseils que tu n'as pas donnés. lol rofl lol
--
Cordialement
Aski
Note que le tutorial que j'avais indiqué pour compiler une dll est tout à fait utilisable pour faire un programme classique (un exe): http://users.skynet.be/candide/tuto/cetvb.htm
Il suffit ce choisir "Win32 Console Application" au lieu de "Win32 Dynamic Library", le reste est identique. ...............
Merci pour ces conseils que tu n'as pas donnés. lol rofl lol -- Cordialement Aski