Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Quel compilateur C++ pour développer sous Windows

19 réponses
Avatar
Marc
Bonjour à tous,
je développe actuellement en C++ Builder 6 et je dois réaliser un gros
projet (environ 10 mois) pour Windows exclusivement. Comme la VCL est
abandonnée, je ne souhaite pas le faire avec C++ Builder 6.
Comme l'apprentissage d'un environnement demande un certain investissement
et que je veux pouvoir maintenir cette application plusieurs années, quel
compilateur me conseillez vous ?
C++ Builder X ou Visual C++.NET ?
Est-on certain qu'il y aura maintenance pour ces compilateurs ?
Borland/Inprise ne risque t-il pas d'abandonner C++ Builder X ?
Merci de vos conseils éclairés.
Marc

10 réponses

1 2
Avatar
Fabien LE LEZ
On Wed, 30 Jun 2004 11:30:53 +0200, "Marc" :

je développe actuellement en C++ Builder 6 et je dois réaliser un gros
projet (environ 10 mois) pour Windows exclusivement. Comme la VCL est
abandonnée, je ne souhaite pas le faire avec C++ Builder 6.


AMHA, l'apprentissage de l'environnement de développement n'est pas un
si gros investissement que ça -- sauf peut-être si l'environnement en
question est Emacs ;-)
Ce qui est vraiment un investissement, c'est l'apprentissage du
langage et de la bibliothèque GUI utilisée. J'imagine que le premier
point est acquis, je répondrai donc sur le second.

Note que si tu veux vraiment te cantonner à la programmation Windows,
fr.comp.os.ms-windows.programmation t'apporera vraisemblablement plus
d'aide sur ta question.
Perso, je travaille actuellement avec les OWL de Borland (bibliothèque
maintenant maintenue par des bénévoles, accessible uniquement aux
possesseurs d'un compilo Borland -- ce qui est ton cas), sur un projet
débuté en été 2000, alors que je n'avais pas tellement le choix
(c'était ça ou les MFC... berk).
Si je devais recommencer un projet maintenant, je crois que
j'utiliserais une bibliothèque portable, comme wxWidgets qui a l'air
assez sérieuse. Ça me permettrait d'apprendre à utiliser cette
bibliothèque (ce qui ne devrait pas être trop dur, car elle ressemble
pas mal à OWL), et, même si le projet en question n'est pas prévu pour
être portable, ça permettra à mon patron de changer d'avis a
posteriori, et ça me permettra aussi, à l'avenir, de créer rapidement
une application portable.

Les alternatives propriétaires (.net et C++ builder X) ont toutes les
deux le même défaut AMHA : leurs éditeurs respectifs ne semblent pas
aimer les solutions pérennes. Microsoft a décidé d'abandonner les MFC
pour une solution peut-être plus adaptée à son langage propriétaire C#
qu'au C++, et Borland a abandonné successivement OWL et VCL (tout en
autorisant quand même que le développement d'OWL continue
indépendamment).

Donc, en résumé, je préfère une bibliothèque portable et open-source
qu'une bibliothèque liée à un OS ou à un éditeur, surtout quand cet
éditeur est Borland (dont j'ai vraiment du mal à cerner la politique)
ou Microsoft (dont je ne connais que trop bien la politique).



--
schtroumpf schtroumpf

Avatar
Alexandre BACQUART
Marc wrote:

Bonjour à tous,
je développe actuellement en C++ Builder 6 et je dois réaliser un gros
projet (environ 10 mois) pour Windows exclusivement. Comme la VCL est
abandonnée, je ne souhaite pas le faire avec C++ Builder 6.
Comme l'apprentissage d'un environnement demande un certain investissement
et que je veux pouvoir maintenir cette application plusieurs années, quel
compilateur me conseillez vous ?
C++ Builder X ou Visual C++.NET ?


Ben puisque tu connais déjà C++ Builder 6, pourquoi ne pas passer à C++
Builder X ? Cela devrait être plus souple et tu as 10 mois pour un gros
projet...

Est-on certain qu'il y aura maintenance pour ces compilateurs ?


Pour Visual, il y en a certainement pour au moins quelques années encore
(jusqu'à ce qu'ils nous pondent une autre usine totalement incompatible
avec la précédente, mais je ne m'étendrai pas plus sur ces ridicules
suppositions non-fondées sur une société dont l'honnêteté n'est plus à
prouver).

Borland/Inprise ne risque t-il pas d'abandonner C++ Builder X ?


Egalement, j'imagine mal Borland abandonner sa poule aux oeufs d'or
avant quelques années. Mais si l'un décide de racheter l'autre, même ma
grand-mère sait qui survivra.

Sinon, il y a du libre comme mingw32/GCC pour faire des applications
Windows... les environnements GNU/GCC, c'est un investissement de temps
quand on ne connaît pas mais le jour où ce sera abandonné, je pense que
Visual ou Builder ne seront déjà plus que de vagues souvenirs :)

Il est possible aussi d'avoir à considérer la politique de ton client...
certains veulent les sources et n'aiment pas trop (encore hélas) qu'on
utilise des technologies non-propriétaires, ça les dépasse... mais
normallement la plupart s'en moquent, à raison (et ceux que ça gène
devraient au contraire s'y intéresser).


--
Tek

Avatar
Alexandre BACQUART
Fabien LE LEZ wrote:

On Wed, 30 Jun 2004 11:30:53 +0200, "Marc" :

je développe actuellement en C++ Builder 6 et je dois réaliser un gros
projet (environ 10 mois) pour Windows exclusivement. Comme la VCL est
abandonnée, je ne souhaite pas le faire avec C++ Builder 6.


AMHA, l'apprentissage de l'environnement de développement n'est pas un
si gros investissement que ça -- sauf peut-être si l'environnement en
question est Emacs ;-)


Et Vi alors ? Emacs est certes maximaliste, mais ça reste un éditeur,
pas un environnement de développement (à la limite si tu ne fais que du
ELisp). Si tu connais ton compilateur et la manière de l'invoquer, ce
n'est pas Emacs qui va compliquer les choses. Tu peux très bien invoquer
GCC dans un GUI genre Visual et te passer de VC, c'est moins pratique,
mais tu peux le faire.


--
Tek


Avatar
Loïc Joly
Fabien LE LEZ wrote:
Si je devais recommencer un projet maintenant, je crois que
j'utiliserais une bibliothèque portable, comme wxWidgets qui a l'air
assez sérieuse. Ça me permettrait d'apprendre à utiliser cette
bibliothèque (ce qui ne devrait pas être trop dur, car elle ressemble
pas mal à OWL), et, même si le projet en question n'est pas prévu pour
être portable, ça permettra à mon patron de changer d'avis a
posteriori, et ça me permettra aussi, à l'avenir, de créer rapidement
une application portable.

Les alternatives propriétaires (.net et C++ builder X) ont toutes les
deux le même défaut AMHA : leurs éditeurs respectifs ne semblent pas
aimer les solutions pérennes. Microsoft a décidé d'abandonner les MFC
pour une solution peut-être plus adaptée à son langage propriétaire C#
qu'au C++, et Borland a abandonné successivement OWL et VCL (tout en
autorisant quand même que le développement d'OWL continue
indépendamment).

Donc, en résumé, je préfère une bibliothèque portable et open-source
qu'une bibliothèque liée à un OS ou à un éditeur, surtout quand cet
éditeur est Borland (dont j'ai vraiment du mal à cerner la politique)
ou Microsoft (dont je ne connais que trop bien la politique).



Du même style, j'utilise maintenant QT depuis pas mal de temps, et j'en
suis assez content. Et même si elle est prpriétaire, elle existe aussi
sous forme libre, ce qui assure une certaine pérennité.

--
Loïc

Avatar
Loïc Joly
Alexandre BACQUART wrote:

Il est possible aussi d'avoir à considérer la politique de ton client...
certains veulent les sources et n'aiment pas trop (encore hélas) qu'on
utilise des technologies non-propriétaires, ça les dépasse... mais
normallement la plupart s'en moquent, à raison (et ceux que ça gène
devraient au contraire s'y intéresser).


En tant que client en même temps que développeur (on sous-traite pas
mal), je dirais que ce que les clients n'aiment pas, ce sont les
technologies propriétaires introduites sans concertation avec eux, et
sans respect des choix technologiques existants.

Il serait absurde pour un client, simplement parce qu'il a confié 5
bouts de son logiciel à 5 boîtes différents de devoir gérer par la suite
(maintenance, évolution qui rapproche les bouts...) du code type
Win32MFCVCLWxWidgetsQT écrit en JavaC+#BasicPrologCLASM et des
commentaires en Tchèquefrançaisanglaisewebasquefinnois.

--
Loïc

Avatar
Marc
Merci de ta réponse détaillée.
Mais j'avoue que je reste perplexe. Tu utilises toujours OWL et je pourrai
bien rester sur C++ Builder 6...
Ce qui m'embête le plus, c'est la classe AnsiString, obligatoire pour
utiliser la VCL et qui rend le code non portable. Après tout l'interface
(quelques clics par-ci par là) n'est pas ce qu'il y a de + important dans
mon projet et le moment venu, je pourrai toujours la réécrire. Il paraît que
cette classe a disparu dans C++ Builder X. Est-ce vrai ? Dans ce cas, ça
permet de faire des classes en C++ standart, complètement indépendantes de
l'interface...
J'ai un peu regardé le site de Borland, et la communication sur C++ Builder
X y est tellement réduite, que honnêtement, je me suis demandé si c'était
pas déjà abandonné.
Marc
Avatar
Marc
Merci de ta réponse
Mon client, c'est moi-même puisque je vends juste un produit dont je reste
propriétaire...
Donc si c'est un succès commercial (enfin pas un échec complet), j'aurai le
temps et l'argent (enfin je l'espère) pour remettre à jour tout ça...
Je commence à me dire que l'important, c'est de produire un exe qui marche
sur les systèmes actuels et à venir (style Longhorn), ce qui devrait être le
cas même avec C++ Builder 6...que personnellement je trouve très stable.
Mais je vais voir si je peux trouver une version d'évaluation C++ Builder X.
Marc
Avatar
kanze
Alexandre BACQUART wrote in message
news:<40e2e616$0$10283$...

Il est possible aussi d'avoir à considérer la politique de ton
client... certains veulent les sources et n'aiment pas trop (encore
hélas) qu'on utilise des technologies non-propriétaires, ça les
dépasse... mais normallement la plupart s'en moquent, à raison (et
ceux que ça gène devraient au contraire s'y intéresser).


Il y a certains où l'attitude est bien : c'est impossible que ça vaut
plus qu'on ne l'a payé. Mais ça fait belle lurette que pour eux, Cygnus
et d'autres sont d'accord à vendre un g++ -- même plus cher que VC++,
s'ils insistent.

Il y en a d'autres qui ont peur que s'ils utilisent des logiciels GPL,
ils seront obligés à rendre leurs sources disponibles gratuitement à
tout le monde. Je ne vois rien dans la GBL qui puisse donner cette idée,
même de très loin, mais les avocats des sociétés ne savent que partir du
principe que tout license est un essai de les rouler d'une façon ou
d'une autre, et d'y trouver ce qu'il n'y est pas. Il faut dire que la
machine à propagande de Stallman n'a pas aidé à cet égard.

Mais je crois que ces deux attitudes sont en train d'évoluer.

--
James Kanze GABI Software http://www.gabi-soft.fr
Conseils en informatique orientée objet/
Beratung in objektorientierter Datenverarbeitung
9 place Sémard, 78210 St.-Cyr-l'École, France, +33 (0)1 30 23 00 34

Avatar
Fabien LE LEZ
On 1 Jul 2004 03:06:01 -0700, :

Il y en a d'autres qui ont peur que s'ils utilisent des logiciels GPL,
ils seront obligés à rendre leurs sources disponibles gratuitement à
tout le monde.


Faut dire que la GPL est un sacré pavé, pas forcément facile à lire et
à comprendre...

A comparer avec la licence de la Zlib, une licence comme je les aime,
en 15 lignes : <http://www.gnu.org/licenses/gpl.txt>



--
schtroumpf schtroumpf

Avatar
Alexandre
bonjour,

"Marc" a écrit dans le message de
news:40e3cfcc$0$2854$
Ce qui m'embête le plus, c'est la classe AnsiString, obligatoire pour
utiliser la VCL et qui rend le code non portable.


oui et non. Si tu isoles bien la partie de ton code qui utilise AnsiString
(donc les interfaces) tu n'a pas de souci... Perso j'utilise C++ Builder 6,
en séparant au maximum le code non lié à l'interface (dans lequel donc je
n'utilise pas AnsiString mais std::string par exemple) du code lié à
l'interface (en général très peu : de la réaction aux évenements et de
l'appel de classes qui, elles, sont portables.

Après tout l'interface
(quelques clics par-ci par là) n'est pas ce qu'il y a de + important dans
mon projet et le moment venu, je pourrai toujours la réécrire. Il paraît
que

cette classe a disparu dans C++ Builder X. Est-ce vrai ? Dans ce cas, ça
permet de faire des classes en C++ standart, complètement indépendantes de
l'interface...
J'ai un peu regardé le site de Borland, et la communication sur C++
Builder

X y est tellement réduite, que honnêtement, je me suis demandé si c'était
pas déjà abandonné.
Marc




1 2