IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Discussion :

Quel langage pour programmation sous Windows ?

  1. #1
    Nouveau candidat au Club
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2010
    Messages : 1
    Par défaut Quel langage pour programmation sous Windows ?
    Bonjour,
    mes antécédents de programmation:
    un peu d'opcode sur micoprosseceur
    un peu de basic
    bonne expérience en TurboC sous DOS...et oui, je suis plus tout jeune!
    pas d'expérience du tout en programmation sous Windows

    Voudrais me relancer en programmation pour Windows (aussi CE), que me conseillez vous?
    Visual? C++, C#, basic....autre?

    NB programmation en amateur, donc prix de l'environement important pour moi!

    1er projet: gestion ports série, touchscreen avec interface graphique, curseur pour variation de variables, boutons de sélection

    merci d'avance pour vos conseils/idées.

  2. #2
    Inactif  
    Avatar de Mac LAK
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    3 893
    Détails du profil
    Informations personnelles :
    Âge : 50
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Octobre 2004
    Messages : 3 893
    Par défaut
    Vu qu'Embarcadero a jugé bon de ne plus fournir de versions personnelles de ses environnements Delphi et C++ Builder, le choix va être assez rapide en fait : Visual Studio Express... IDE gratuit, la seule limitation "lourde" étant de ne pas avoir la possibilité d'utiliser les MFC (ce qui serait plutôt un avantage, si tu veux un avis personnel... ).

    Tu pourras avec faire de la programmation native (C ou C++) hors IHM, et côté IHM ou fonctions de plus haut niveau, tu auras accès au C# ou au C++/CLI (C++ sous .NET). Au pire, si tu as besoin d'IHM non basées sur .NET, tu peux installer des frameworks comme Qt.
    Le développement sous Windows CE se fait également à partir de Visual Studio, donc ça ne te changera pas franchement du développement sur PC...

    Voir cette page pour télécharger VS2008 Express.
    Mac LAK.
    ___________________________________________________
    Ne prenez pas la vie trop au sérieux, de toutes façons, vous n'en sortirez pas vivant.

    Sources et composants Delphi sur mon site, L'antre du Lak.
    Pas de question technique par MP : posez-la dans un nouveau sujet, sur le forum adéquat.

    Rejoignez-nous sur : Serveur de fichiers [NAS] Le Tableau de bord projets Le groupe de travail ICMO

  3. #3
    Expert confirmé
    Avatar de Melem
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2006
    Messages
    3 656
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 3 656
    Par défaut
    Tu pourras avec faire de la programmation native (C ou C++) hors IHM
    Pourquoi hors IHM ? VS2008 Express inclut le Windows SDK.

  4. #4
    Inactif  
    Avatar de Mac LAK
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    3 893
    Détails du profil
    Informations personnelles :
    Âge : 50
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Octobre 2004
    Messages : 3 893
    Par défaut
    Citation Envoyé par Melem Voir le message
    Pourquoi hors IHM ? VS2008 Express inclut le Windows SDK.
    Parce faire des IHM à coup d'appels Win32 lorsque l'on est débutant sous Windows serait du masochisme primaire...
    Mac LAK.
    ___________________________________________________
    Ne prenez pas la vie trop au sérieux, de toutes façons, vous n'en sortirez pas vivant.

    Sources et composants Delphi sur mon site, L'antre du Lak.
    Pas de question technique par MP : posez-la dans un nouveau sujet, sur le forum adéquat.

    Rejoignez-nous sur : Serveur de fichiers [NAS] Le Tableau de bord projets Le groupe de travail ICMO

  5. #5
    Expert confirmé
    Avatar de Melem
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2006
    Messages
    3 656
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 3 656
    Par défaut
    Ah, tu aurais quand même pu le préciser. Bin sinon, SharpDevelop aussi est un excellent EDI gratuit pour développer pour la plateforme .NET, en C# ou en VB.NET.

  6. #6
    Inactif  
    Avatar de Mac LAK
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    3 893
    Détails du profil
    Informations personnelles :
    Âge : 50
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Octobre 2004
    Messages : 3 893
    Par défaut
    Citation Envoyé par Melem Voir le message
    Ah, tu aurais quand même pu le préciser.
    Ben, l'OP ayant précisé "pas d'expérience du tout en programmation sous Windows", ça me semblait largement suffisant...


    Même en connaissant bien l'OS, c'est franchement plus que lourd de faire des IHM directement avec Win32, et personne ne conseille un truc similaire sous Linux (faire ses IHM directement en attaquant X).

    Je ne voyais donc absolument pas l'intérêt de faire croire que VS Express permettait un développement simple d'IHM natives C/C++, à part celui de se dégoûter définitivement de Windows.
    Mac LAK.
    ___________________________________________________
    Ne prenez pas la vie trop au sérieux, de toutes façons, vous n'en sortirez pas vivant.

    Sources et composants Delphi sur mon site, L'antre du Lak.
    Pas de question technique par MP : posez-la dans un nouveau sujet, sur le forum adéquat.

    Rejoignez-nous sur : Serveur de fichiers [NAS] Le Tableau de bord projets Le groupe de travail ICMO

  7. #7
    Expert confirmé
    Avatar de Melem
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2006
    Messages
    3 656
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 3 656
    Par défaut
    Citation Envoyé par Mac LAK
    Tu pourras avec faire de la programmation native (C ou C++) hors IHM, et côté IHM ou fonctions de plus haut niveau, tu auras accès au C# ou au C++/CLI (C++ sous .NET). Au pire, si tu as besoin d'IHM non basées sur .NET, tu peux installer des frameworks comme Qt.
    Ça laisse tout simplement croire qu'il n'est pas POSSIBLE de faire des IHM natives en C ou en C++ avec VS2008 à part après avoir installer un truc comme Qt, pas qu'il est possible de le faire mais que c'est pas vraiment recommandé à des débutants.

    Même en connaissant bien l'OS, c'est franchement plus que lourd de faire des IHM directement avec Win32, et personne ne conseille un truc similaire sous Linux (faire ses IHM directement en attaquant X).

    Je ne voyais donc absolument pas l'intérêt de faire croire que VS Express permettait un développement simple d'IHM natives C/C++, à part celui de se dégoûter définitivement de Windows.
    GTK+ est au moins aussi lourd que l'API Win32 mais pourtant personne ne s'en est plaint, plus que conseillé c'est vivement recommandé à ceux qui souhaitent faire des IHMs en C (surtout sous Linux) et ça a rarement suscité le dégoût de Linux. Son seul avantage sur Win32 c'est sa portabilité.

  8. #8
    Inactif  
    Avatar de Mac LAK
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    3 893
    Détails du profil
    Informations personnelles :
    Âge : 50
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Octobre 2004
    Messages : 3 893
    Par défaut
    Citation Envoyé par Melem Voir le message
    GTK+ est au moins aussi lourd que l'API Win32
    Attaquer X et GTK+, c'est pas du même niveau...
    Mac LAK.
    ___________________________________________________
    Ne prenez pas la vie trop au sérieux, de toutes façons, vous n'en sortirez pas vivant.

    Sources et composants Delphi sur mon site, L'antre du Lak.
    Pas de question technique par MP : posez-la dans un nouveau sujet, sur le forum adéquat.

    Rejoignez-nous sur : Serveur de fichiers [NAS] Le Tableau de bord projets Le groupe de travail ICMO

  9. #9
    Expert confirmé
    Avatar de Melem
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2006
    Messages
    3 656
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 3 656
    Par défaut
    Je n'ai jamais parlé de niveau, juste de complexité. Tu dis que faire des IHMs en Win32 c'est rarement une bonne idée, qu'on soit débutant ou pas, sous prétexte que c'est dur à coder et que heureusement, il y a d'autres langages et/ou EDIs plus simples à utiliser. C'est pourtant le même cas avec GTK+, qui est de même complexité que l'API Win32 : sur toutes les plateformes ou elle a été portée, il existe d'autres langages et/ou EDIs, également multiplateformes, permettant de créer des IHMs plus simplement, pourtant elle est toujours très utilisée. Ce que je veux dire, c'est que développer des IHMs en Win32 n'est pas systématiquement une hérésie, tout comme développer des IHMs avec GTK+ ne l'est pas. Seulement, grâce à sa portabilité notamment, beaucoup de gens se tournent vers GTK+ plutôt que Win32 même sous Windows. Sinon, pour de petites ou moyennes applications pour Windows (genre application avec une fenêtre principale et/ou quelques boîtes de dialogue), j'utilise systématiquement Win32 et je n'ai jamais rencontré le moindre problème ni le moindre inconvénient, au contraire il n'y a que des avantages (exe très compacts, autonômes, "portables", performants, etc.). Pour les autres types d'applications, ça dépend. Mais là ce sont juste des notes personnelles, un partage d'expérience, pas une argumentation.

  10. #10
    Inactif  
    Avatar de Mac LAK
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    3 893
    Détails du profil
    Informations personnelles :
    Âge : 50
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Octobre 2004
    Messages : 3 893
    Par défaut
    Citation Envoyé par Melem Voir le message
    Ce que je veux dire, c'est que développer des IHMs en Win32 n'est pas systématiquement une hérésie
    Je n'ai pas dit le contraire... Juste que débuter les IHM sous Windows de cette manière, c'est du masochisme.

    TU n'as pas de problèmes avec le fait de taper directement dans Win32, et moi non plus. Remets-toi dans la peau d'un débutant ne connaissant même pas les principes généraux de Win32, et ne dis pas ça avec ton expérience... Sinon, moi, je vais dire que se passer de 100% des librairies "classiques" (STL incluse) pour taper dans le bas niveau et programmer en MT façon "roots", c'est facile et trivial. On sait tous les deux que si l'on fait commencer le dév MT à un débutant tel que MOI je le pratique au quotidien, il va se tirer une balle...
    Mac LAK.
    ___________________________________________________
    Ne prenez pas la vie trop au sérieux, de toutes façons, vous n'en sortirez pas vivant.

    Sources et composants Delphi sur mon site, L'antre du Lak.
    Pas de question technique par MP : posez-la dans un nouveau sujet, sur le forum adéquat.

    Rejoignez-nous sur : Serveur de fichiers [NAS] Le Tableau de bord projets Le groupe de travail ICMO

  11. #11
    Membre émérite Avatar de 10_GOTO_10
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    890
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 890
    Par défaut
    Citation Envoyé par Mac LAK Voir le message
    Parce faire des IHM à coup d'appels Win32 lorsque l'on est débutant sous Windows serait du masochisme primaire...
    Tiens ? Pourtant, j'ai fait des IHM en Win32 alors que j'étais débutant, avec le Petzold dans une main et à une époque où internet n'existait pas ou très peu, et pourtant mon masochisme n'est pas si primaire ?

    Non, plus sérieusement, je pense que commencer par la base n'est pas si idiot que ça. Même si le débutant n'utilisera ensuite jamais directement ces connaissances, comprendre comment ça fonctionne au plus bas niveau est toujours bénéfique. C'est comme apprendre l'assembleur. On s'en sert ensuite qu'une fois par an, mais ça permet de comprendre des bugs incompréhensibles.

    Ce n'est que mon avis, merci de ne pas troller.

  12. #12
    Inactif  
    Avatar de Mac LAK
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    3 893
    Détails du profil
    Informations personnelles :
    Âge : 50
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Octobre 2004
    Messages : 3 893
    Par défaut
    Citation Envoyé par 10_GOTO_10 Voir le message
    Non, plus sérieusement, je pense que commencer par la base n'est pas si idiot que ça.
    Si tu m'as déjà lu, je pense que tu sais déjà que le bas niveau, c'est mon dada... Toutefois, je ne suis pas partisan de débuter à ce niveau, mais plutôt de débuter d'une façon médiane (ni trop haut, ni trop bas). J'ai fait comme toi, parce qu'il n'y avait pas le choix à l'époque, mais ce n'est pas pour ça que je conseille d'en faire autant.

    MON expérience des débutants en Win32 me fait dire que la plupart "paniquent" devant les boucles de messages, mettent un temps infernal à comprendre qu'une "window" n'est pas ce qu'ils croient, et ont du mal à assimiler qu'un comportement non programmé ne se produit pas... Choses qui sont masquées par des outils tirant vers le RAD, ce qui leur permet de développer des IHM sans se préoccuper de la tripaille tout en se familiarisant avec le reste de l'API Win32. Une fois les concepts de cette API bien ancrés, passer au mode "roots" ne pose alors plus de problèmes... Et cela produit de meilleurs dévs au final.

    Là aussi, ce n'est que mon avis, mais les meilleurs dévs bas niveau que j'ai pu côtoyer ont tous commencé à un niveau médian, et non pas à bas niveau. Et ce n'est pas vraiment paradoxal, en fait, cf. cette discussion qui reprends tout ça de façon exhaustive et avec beaucoup plus de points de vue qu'ici, où l'on reste quand même dans le cas "Win32 brut de fonderie ou pas pour les IHM"...
    Mac LAK.
    ___________________________________________________
    Ne prenez pas la vie trop au sérieux, de toutes façons, vous n'en sortirez pas vivant.

    Sources et composants Delphi sur mon site, L'antre du Lak.
    Pas de question technique par MP : posez-la dans un nouveau sujet, sur le forum adéquat.

    Rejoignez-nous sur : Serveur de fichiers [NAS] Le Tableau de bord projets Le groupe de travail ICMO

  13. #13
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 391
    Par défaut
    Je trouve que commencer par Win32 n'est pas trop un problème si c'est correctement expliqué, mais il y a une barrière à l'accès: L'élève doit déjà avoir appris et compris ce qu'est une fonction callback. qsort() et bsearch() peuvent aider dans ce sens.
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  14. #14
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    206
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Janvier 2010
    Messages : 206
    Par défaut
    Citation Envoyé par Melem Voir le message
    Je n'ai jamais parlé de niveau, juste de complexité. Tu dis que faire des IHMs en Win32 c'est rarement une bonne idée, qu'on soit débutant ou pas, sous prétexte que c'est dur à coder et que heureusement, il y a d'autres langages et/ou EDIs plus simples à utiliser. C'est pourtant le même cas avec GTK+, qui est de même complexité que l'API Win32 : sur toutes les plateformes ou elle a été portée, il existe d'autres langages et/ou EDIs, également multiplateformes, permettant de créer des IHMs plus simplement, pourtant elle est toujours très utilisée. Ce que je veux dire, c'est que développer des IHMs en Win32 n'est pas systématiquement une hérésie, tout comme développer des IHMs avec GTK+ ne l'est pas. Seulement, grâce à sa portabilité notamment, beaucoup de gens se tournent vers GTK+ plutôt que Win32 même sous Windows. Sinon, pour de petites ou moyennes applications pour Windows (genre application avec une fenêtre principale et/ou quelques boîtes de dialogue), j'utilise systématiquement Win32 et je n'ai jamais rencontré le moindre problème ni le moindre inconvénient, au contraire il n'y a que des avantages (exe très compacts, autonômes, "portables", performants, etc.). Pour les autres types d'applications, ça dépend. Mais là ce sont juste des notes personnelles, un partage d'expérience, pas une argumentation.
    Très bien les tuts Win32, ça me donne envie de m'y remettre tiens

    Je pense que ça dépend un peu de la personne et de ses objectifs. Quelqu'un qui est très technique sans objectif précis aura tendance à vouloir commencer par le bas niveau pour vraiment comprendre, d'autres auront l'impression de perdre leur temps.

    Moi je suis entre les deux, j'aime bien comprendre alors de temps en temps je refais un tour à la cave mais comme je sais que je n'ai pas vraiment besoin d'aller aussi bas, je remonte au premier étage

Discussions similaires

  1. Quel langage pour programmer interface webcam .
    Par Venezia33 dans le forum VBScript
    Réponses: 0
    Dernier message: 31/07/2013, 11h50
  2. Réponses: 10
    Dernier message: 17/02/2010, 22h06
  3. Quel langage pour programmer un jeu de cartes en ligne?
    Par R-Cube dans le forum Développement 2D, 3D et Jeux
    Réponses: 8
    Dernier message: 29/08/2008, 15h12
  4. Quel langage pour cette application Windows ?
    Par Zucco dans le forum Langages de programmation
    Réponses: 11
    Dernier message: 08/12/2007, 12h30
  5. Quel langage pour programme ne nécessitant pas d'install ?
    Par burnedsoul dans le forum Langages de programmation
    Réponses: 5
    Dernier message: 09/03/2006, 19h23

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo