-
Builder et Linux
Bonjour à tous :)
Je reviens au C, et notamment pour Linux. J'ai pratiqué le C... il y a vingt ans. Oui : je vais tout réapprendre ;)
Ma question : le C++ Builder, inclus dans Delphi XE7, permet-il de programmer Linux ? J'ai lu cet article, et, si j'ai un peu de mal à comprendre. Builder fonctionne uniquement sous les versions serveur de Linux ?
A mes yeux, Builder ayant la même implantation que Delphi (composants, notamment, écrits pour la Pascal et le C ), Builder m'attirerait davantage que Visual Studio. Lequel peut générer du code pour la plateforme Linux. Mais, avec ce dernier, je vais devoir et réapprendre le C, et apprendre à manipuler cet IDE particulièrement lourd.
Alors : pourquoi pas Builder ? La différence profonde entre les deux ? On reste en C++, non ?
Merci :)
-
Tu ne nous dis pas vraiment ce que tu souhaites faire (but, contexte, temps imparti), ce n'est donc pas évident de faire une réponse complète, tant sur Builder vs Visual Studio que sur C vs C++ ;)
A ma connaissance, Linux serveur ou Linux pas serveur, ça reste Linux.
-
Si je comprend ce que dit l'article, c'est juste que C++ builder pour Linux n'offrirait pas ses extensions permettant de faire interface graphiques.
Ca ne change pas grand chose, puisque que le langage en lui-même ne fournit rien sur ce thème.
-
Salut,
Je présumes que, par Builder, tu entends C++builder de Embarcadero (anciennement Borland) :question:
Si tel est le cas : j'ai plus ou moins perdu C++ builder de vue depuis sa version 5 (ou était-ce la six :question:), et je ne promet donc pas que tout ce que je dirai est à 100% d'actualité, mais :
- Le dernier compilateur de chez eux que j'ai testé n'avait qu'un respect... pour le moins médiocre de la norme de l'époque,
- Leur "portage" de c++ builder sous linux (incluant leur portage de la VCL) ne m'avait vraiment pas convaincu
- Il semblerait avoir vu passer un article indiquant qu'il décidaient de passer au compilateur clang, ce qui devrait déjà améliorer le respect des normes "plus ou moins récentes" (en fonction de la version de clang utilisée) et faciliter l'écriture d'application "portables", pour autant que l'on se limite au respect de la norme.
- je ne sais pas du tout quelle orientation a pris le développement de leur VCL (leur bibliothèque "graphique"), mais si elle n'a pas été (pour ainsi dire) entièrement refondue depuis, je n'en voudrais plus vraiment depuis que j'ai appris Qt; ne serait-ce que parce que toutes les classes de cette bibliothèques utilisent par défaut l'héritage virtuel (ce qui peut directement donner une idée des problèmes de conception sous-jacents ;) )
(je tiens à précisé que j'étais littéralement un "fan" de BCB 5 à l'époque, mais que, depuis, mon point de vue a énormément évolué, comme tu t'en seras sans doute rendu compte ;) ).
Au passage : fais attention au fait que, même si C++ revendique (de moins en mois fort) son héritage acquis de C, ce sont bel et bien devenus des langages fondamentalement différents au fil des évolutions qu'ils ont tous deux suivis en vingt ans. Maintenant, il est pour ainsi dire sacrilège de C/C++ : si une telle expression était plus ou moins "tolérée"(bien que pas forcément admise par tout le monde) à l'époque, elle ne l'est maintenant plus du tout ;)
Maintenant, il existe des compilateurs qui sont disponibles aussi bien sous linux que sous windows (je pense essentiellement à clang et à Gcc, qui est disponible sous windows au travers du projet MinGW-w64) qui ont, en outre, l'énorme intérêt d'être totalement gratuit.
Je ne sais pas si ton objectif est de développer des applications "console" ou des applications "graphiques", mais Qt est une bibliothèque d'iHM qui mériterait sans doute largement que tu y prêtes un peu attention tant par ses fonctionnalités, sa stabilité à l'usage et sa portabilité que par les licences d'utilisation qu'elle propose. En plus, L'IDE développé spécialement pour elle (QtCreator) gagne de plus en plus en "maturité" et est disponible aussi bien sous linux qu sous indows. Enfin, elle est facilement intégrable aux IDE de chez microsoft (les différentes versions de VisualStudio) en cas de besoin.
Maintenant, si tu restes définitivement accro à embarcadero, je souhaiterais avoir tu "feed back" une fois que tu t'y sera réhabitué ;)
-
Bonjour à tous, et merci pour vos réponses. :hello:
Je m'acheminais vers ce que je lis ici.
1) Builder pour Windows, et un autre pour Linux.
2) @Koala01 : ce que tu dis de Builder pour Linux est-il aussi valable, selon toi, pour Windows ? Le problème, c'est qu'il y a un avantage pour Builder, sous Windows : les mêmes composants (Jedi et TMS) sont aussi écrits pour Builder, et pas seulement Delphi.
2) De toute façon, pour réapprendre le C++ et surtout sous Linux, bien plus difficile à programmer, je commencerai par des applications console. Du coup, l'environnement graphique, c'est pour plus tard.
3) Reste à choisir un bon IDE. J'ai compris que, par exemple, avec C::B, je devrais lier à celui-ci un compilateur C++ . L'important, pour moi, reste avant tout de pouvoir déboguer en pas à pas. C'est faisable aussi compilant en ligne de commande, mais, même sous MSDOS, quand j'ai découvert Turbo Debugger, je ne pouvais plus m'en passer. Alors sous LInux....
-
QtCreator est un IDE à part entière et n'est pas spécifique aux IHMs. Il y a aussi Vim avec YouCompleteMe, Kdevelop, CLion, etc.
Perso, j'utilise très peu le débogueur que j'ai en grande partie remplacé par les avertissements et sanitizers des compilateurs, valgrind et un script qui utilise le débogueur pour afficher des infos (sans interaction).
En regardant Turbo Debugger, j'ai l'impression que ce qui s'en rapproche le plus sont des configurations de gdbinit: peda, gdb dashboard, dotgdb, etc (http://stackoverflow.com/questions/2...gging/17341335) ou des trucs comme radare2 ou plus simplement cgdb. Les IDEs intègrent également un débogueur, cela peut suffire, il y a aussi KDbg comme programme externe.
-
Sauf besoin bien particulier, pour développer des interfaces graphiques portables sous GNU/Linux et Windows, utilise
- un compilateur qui respecte la norme ;
- Qt ;
..et choisis quelle plateforme sera le master (Windows ou Linux), point barre. On est en 2017, inutile de recourir à des technos propriétaires bancales, exorbitantes et / ou obsolètes.
Le choix de l'IDE (ou de pas d'IDE) vient ensuite. N'importe quel IDE digne de ce nom te fournira également l'interface vers un débugger professionnel (qu'il s'agisse de gdb, du débugger VS ou autre).