Programation d'exécutable

Répondre
Partager Rechercher
J'aurais besoin de conseil pour comprendre les différents langage existant pour programmer un fichier exécutable (sur Windows principalement) avec les principaux avantages/inconvénients.
Je ne connais rien sur le sujet donc, j'aimerais comprendre tout ça pour tenter de faire des .exe tout simple.

Et quelque bonne série de liens (genre comme le w3c pour le HTML) si possible.

Merci!
Pour réaliser un programme (exécutable) tout bête, il faut connaître un langage de programmation. Parmi les plus fréquemment utilisé : C, C++, Java, Visual Basic, Delphi.

Il faut des bases en algorithmique pour commencer puis avoir des notions en interface graphique pour que ça ressemble à quelque chose.

Si tu veux de l'aide, voici 2 communautés très utiles à connaître :
- développez.com (tutoriels, forums d'entraide, ...)
- codes-sources (tutoriels, forums, sources, ...)

Le langage C est à connaître car c'est un peu la base mais il reste un langage rustique et n'est plus d'avant garde, par contre, on sait ce qu'on fait !

Le C++ et le java sont très à la mode pour la programmation objet (notion algorithmique d'objet à maîtriser absolument) et puissant pour créer de bons programmes.

Le visual basic a le mérite d'être facile à prendre en main mais a le défaut d'avoir un environnement de programmation payant (microsoft).

Le delphi : il paraît que c'est bien ... mais je ne connais pas.

Voilou.
C++, Java, Delphi, VB, C# ...

Les plus facile pour débuter sont Delphi et VB.
Ensuite, C#, C++/Java.

Personnellement, j'aime bien C#, qui est un mélange entre Java et VB (pour l'appel d'objet).

Enfin, personnellement, j'ai l'habitude du C++, et je me suis lancée dans le C#, mais vraiment, si tu débutes, je te conseille Visual Basic.

Ben .. LA source par excellente...
http://msdn.microsoft.com
Pas parmi ceux que je connait:

Turbo Pascal:
Avantage:
Facile a apprendre (d'ailleurs c'est fait pour ca a l'origine)
Gratuit
Defauts:
Desuet
Tres limité
Le mode graphique est hyper limité

Delphi
Avantages:
Comme c'est basé sur le Pascal, c'est tres facile a utiliser.
Une gestion des fenetres graphiques hyper sumplie (je cree ma fenetre, je met mon bouton la etc)
Pas mal de petits plus integrables facilement (connexion a une base de données par exemple)
Defauts:
Payant

Java
Avantages
Assez simple a utiliser
Multi-plateformes
Une doc vraiment pratique (http://sun.java.com)
Pas de pointeurs (donc pas de probleme de liberation de memoire entre autre)
Gratuit
Defauts
Supeer lourd, c'est inimaginable
15000 librairies a inclure pour afficher Hello World
La realisation d'interface graphique est simple, mais c'est souvent lourd quand tu veut faire quelque chose de precis (enfin ca doit etre possible j'ai pas assez appronfondi ce langage)

Pour generer des executables c'est normalement possible, mais en general tu passe par du bycode qui sera interpreté par la machine virtuelle Java.

Et, le meilleur pour la fin

C++ (le language des Dieux )
Avantages
Gratuit
Multi-plateformes pour peu que tu utilise pas certaines librairies (MCF par exemple)
Rapide (treeees rapide meme)
Possibilité d'integrer du C (oui ca peut etre un avantage )
Avec la librairie standart, beaucoup de classes tres pratiques (listes chainées, maps, string etc)
Inconvenients
Si tu gere mal tes pointeurs tu risque vite de remplir ta memoire

Sinon pour les liens utiles, developpez.com est assez utile en general.

Pour le C++, la reference des cours ici: http://casteyde.christian.free.fr/cpp/cours/

Voila pour ma part
Avant de choisir un langage, la question : qu'est-ce que tu veux faire comme type de programme???

Sans préciser ca, aucune des réponses déjà données ne peut être précise, chaque langage ayant ses avantages et ses inconvénients pour des cas de programmation différents.

Au passage, tu n'es pas obligé d'apprendre l'agorithmique avant de te lancer par ex. avec Delphi ou n'importe quel outil de dev. RAD.
J'ai commencé sans et je m'en porte très bien.
Merci bien!
Pour l'instant c'est un truc tout bête pour afficher de façon aléatoire des images, simple exemple de ce que je compte faire)

// edit:

Waow, rapide.
Merci Sarga pour ce petit résumé plutôt pratique.
tenté par le C++, même pas peur..
Commence sur du Delphi, c'est un très bon langage : Simple et puissant et polyvalent et que je conseille à tout débutant qui souhaite "vraiment programmer".

J'ai fait l'erreur de commencer par du Vb et j'ai acquis des lacunes incroyables, je savais programmer sans savoir ce que je faisais ... En fait avec Vb tu apprends très vite à programmer mais tu t'embourbes et tu es vite limité ... Tes .exe nécessitent les DLL Vbs, si tu souhaites faire des traitements rapides tu te rendras compte que le voisin qui fait du Delphi ou du C/C++ va littéralement exploser tes performances ... Bref Vb c'est le langage de programmation de Mr tout le monde, ou du devellopeur qui n'a pas besoin de plus que ce lui apporte Vb ...

Avec Delphi tes possibilités sont exactement les même que Vb sauf que c'est plus puissant

Ensuite quand tu auras acquis une logique de programmation tu pourras attaquer d'autres langages tels que C/C++, voire même un peu l'ASM pour inclure quelques routines dans tes programmes et les optimiser à mort
Au passage je te conseil de commencer par du simple, et donc sûrement pas par du C++.

Je te conseillerais Delphi, qui est un bon langage bien structuré ou il est presque impossible de coder n'importe comment, contrairement au C/C++, d'où une très grande facilité de lecture des sources existants et très nombreux.

Cours pour débuter en programmation : http://fbeaulieu.developpez.com/guide/
et
http://rmdiscala.developpez.com/cours/

L'IDE de programmation Delphi version personnel est gratuit, et suffira amplement pour débuter.

Mais tu veux faire quoi exactement comme programme??
Répondu plus haut, pour l'instant il ne s'agit que de faire un bête truc pour faire défiler des images etc.. pour des présentations d'hôtels ou autre type de chose.
Par la suite, des applications capables de contrôler des serrures sécurisés ou autre forme de chose (bossant dans l'électronique, ça m'avantagera si un jour j'ai besoin de créer des outils moi-même)

Voir aussi programmer pour du contrôle domotique avec interface graphique etc. ..
Citation :
Provient du message de Romuald
Merci Sarga pour ce petit résumé plutôt pratique.
tenté par le C++, même pas peur..
De rien
Mais pour le C++, faudra pas t'attendre tout de suite a pouvoir faire des beaux trucs graphiques, mais aux niveau des bases y'a pas enormement de choses a savoir.

Il faut bien comprendre la notions de classes et d'objets (le Delphi peut aider pour ca), et une notion primordiale, si tu reserve de la memoire, tu la libere avant la fin du programme.

Pour les librairies graphique tu peut utiliser QT (http://www.trolltech.com/) qui a l'avantage d'etre multi-plateformes (enfin perso je l'utilises pas, je laisse d'autres personnes s'occuper de ca )
J'avoue que la chasse au compilateur/outil n'a pas été des meilleurs. (avec restriction gratuit/pas trop lourd, petite connexion)
Quelqu'un peut me conseiller un bon outil? car le système est plutôt complexe encore dans mon esprit. (d'abord on code comme un fichier texte et ensuite on compile, c'est bien ça?)

Je vais opter pour Delphi/C++ C++ pour l'instant n'aimant pas lire les bibles de 3km de long, je vais éviter.
Citation :
Provient du message de Romuald
J'avoue que la chasse au compilateur/outil n'a pas été des meilleurs. (avec restriction gratuit/pas trop lourd, petite connexion)
Quelqu'un peut me conseiller un bon outil? car le système est plutôt complexe encore dans mon esprit. (d'abord on code comme un fichier texte et ensuite on compile, c'est bien ça?)

Je vais opter pour Delphi/C++ C++ pour l'instant n'aimant pas lire les bibles de 3km de long, je vais éviter.
J'ai déjà fait de la programmation d'interface Série avec Delphi, ainsi que des appli multimédia pour cd-roms de présentation de projets. Ca marche très très bien.

Bon courage.
Citation :
Provient du message de Romuald
J'avoue que la chasse au compilateur/outil n'a pas été des meilleurs. (avec restriction gratuit/pas trop lourd, petite connexion)
Quelqu'un peut me conseiller un bon outil? car le système est plutôt complexe encore dans mon esprit. (d'abord on code comme un fichier texte et ensuite on compile, c'est bien ça?)

Je vais opter pour Delphi/C++ C++ pour l'instant n'aimant pas lire les bibles de 3km de long, je vais éviter.
Pour le C/C++ : un très bon soft gratuit qui fonctionne bien sous Windows : devc++

Pour le delphi, désolé, je ne connaîs pas de bon logiciel.
coucou

bien sur si tu comptes te lancer dans un developpement en objet tu maitrises parfaitement la phase de conception amont, le langage UML et bien sur des outils tels que rhapsody et ROSE? quoi non?

ben alors ca ne sert a rien de se lancer dans un developpement sur un langage OBJET si tu ne maitrise pas la conception qui va de paire avec ce type de langage . reste avec des langages simples et FONCTIONNELS tels que le C ou le Pascal.
Personnelement, je pense que pour un debutant le C est adapté et tu trouveras plusieurs logiciels pour faire des IHMs bien plus facilement qu'avec ces *kjlfsjlf*!! de MFCs...
une fois que tu maitriseras le C, les notions de pointeurs, d'architectures et autres, tu pourras passer à des langages comme C++ et java, dont les syntaxes sont proches, maispour maitriser pleinement ces langages compte... 5-6 ans minimum !
Heu UML c'est pas un langage, c'est une methode

Ensuite je suis pas sur qu'il soit utile de maitriser Rational Rose ou autre pour dev'
Evidement tout depend de ce que tu developpe, mais pour des petites applications l'interet d'UML ou autre est pas enorme.

Mais c'est vrai que c'est tres utile de maitriser ca avant, tout comme maitriser Merise peut etre utile pour les BDs, mais une fois que tu as comprit les principes de base tu vas pas toujours utiliser des diagrammes UML, surtout si c'est pour faire un simple visionneur d'image.

C'est sur qu'apres pour les mises a jour et autre evolution du programme une base solide est utile, mais bon.

Sinon tu peut le modeliser en B avant aussi histoire d'etre sur

Quoiqu'il en soit, les methodes a mettre en place, a mon humble avis, doivent surtout dependre de la taille du projet. Et pour les petits, l'analyse d'UML ou autre peut tout a fait etre zappée
Fais du java ( ou du python )
A la limite du C++ si tu en veut ( prepare toi à t'arracher les cheveux lors des erreurs de segmentation )
mais pas du VB... ça t'empechera de bien programmer par la suite !
Commences par le C, si t'as pas de notion "Objet", c'est un peu mort, et tu aura pas la possibilité d'exploiter les langages orientés "objets" au maximum de leurs capacités...

Le C, c'est bin, structuré, facile à comprendre, et c'est très orienté système...
Citation :
Provient du message de - Sarga -
Pas parmi ceux que je connait:
(...)
Java
Avantages
Assez simple a utiliser
Multi-plateformes
Une doc vraiment pratique (http://sun.java.com)
Pas de pointeurs (donc pas de probleme de liberation de memoire entre autre)
Gratuit
Defauts
Supeer lourd, c'est inimaginable
15000 librairies a inclure pour afficher Hello World
La realisation d'interface graphique est simple, mais c'est souvent lourd quand tu veut faire quelque chose de precis (enfin ca doit etre possible j'ai pas assez appronfondi ce langage)

Pour generer des executables c'est normalement possible, mais en general tu passe par du bycode qui sera interpreté par la machine virtuelle Java.
L'adresse c'est http://java.sun.com
Et puis c'est pas supeeeer lourd... Une fois que la virtuelle machine est lancée c'est quasi aussi rapide que du C++. Après ca dépend de ce que tu veux faire, si ton programme doit s'exécuter pendant un cours un instant (genre un script) alors ne prends pas le java, si ton programme s'exécute pendant plusieurs minutes (une application classique) le java est très bien. Il a le gros avantage d'être vraiment un langage orienté Objet, pas comme le C++ ou c'est un bricole au dessus de C.
(Note c'est pas pour ca que c'est pas rapide ou c'est nul, il faut juste faire assez attention à ce qu'on fait, de plus le débogage n'est pas toujours évident).
Oui au temps pour moi pour l'adresse

Sinon pour la rapidité, "Et puis c'est pas supeeeer lourd... Une fois que la virtuelle machine est lancée c'est quasi aussi rapide que du C++" la je demande a voir.
J'ai programmé tout l'an dernier en Java, et meme une fois la machine virtuelle lancée, ca rame a mort. Surtout quand tu commence a avoir une bonne interface graphique, les rafraichissements mettent un temps fou.

Autant pour ce qui est script en mode console, la rapidité des deux doit se valoir (quoique j'ai jamais trop fait de course C++/Java ), autant des que l'interface graphique entre en jeu le Java est a la rue.

Sinon dire que le C+ n'est qu'un bricole par dessus de C c'est un peu beaucoup je trouve, les notions de classes sont autant respectées que dans Java. C'est sur que tu peut toujours faire du code porcin mi-C/mi-C++ (quoique j'en fait encore ), mais si tu t'y prend bien, je voit pas en quoi Java est plus un langage objet que c++
Répondre

Connectés sur ce fil

 
1 connecté (0 membre et 1 invité) Afficher la liste détaillée des connectés