Forum Programmation.c Bien s'entourer en c, et plus si affinités

Posté par  .
Étiquettes : aucune
0
6
oct.
2004
Bonjour,

je me présente : Attilagab
passionné d'info (mais vrai girouette semble t il ... tant en 2d/3d ou autre), visiteur anonyme de linuxfr.org tous les jours (sissi)

je me remets à l'apprentissage de la programmation C
(non je ne changerais pas de langage)

après 2jours de recherches dans bien des sites concernant le C (ici même dans le forum c, celui de developper.com,
commentcamarche.com, et bien d'autres)

Après m'être perdu dans les sites concernant les RFC/ISO/IEEE,l'unicode
et bien d'autres
(beaucoup en anglais :D, j'aimerais vous transmettre mon dégout de l'anglais depuis 2jours,
mais votre écran ne pourra pas vous donner le 1/4 de mes sentiments)

je souhaiterais donc apprendre le C normalisé car semble t il il est plus simple à transposer entre os différents
d'ailleur je ne sais pas quelle version choisir ... c89 c99 ? une autre ?

car : /me se protège de son bouclier
je suis toujours sous win2k (faut que je vide mon disque dur :|, et linux c'est pas évident sans motivation, le c serait il cette motivation? )
et je souhaiterais passer donc une partie de mon temps-utilisation-ordi sur linux avant de changer complètement de système
(car à part l'os et les jeux, tout ce qui est sur ma bécane est free, voir opensource, et comme je joue de moins en moins...)

bref faire mon mon helloworld évolué mais facilement gérable sous windows et linux avec les mêmes sources (enfin avec le moins de modif possible même si en lisant on découvre que certaines valeurs numériques se gèrent différement selon l'os...)

donc je me reprend : l'ansi est assez limité, j'aime bien ma souris et des icônes,
donc je cherche une librairie graphique multiplateforme
un premier problème se pose : laquelle ? QT/GTK/wxWidgets
un deuxième problème se pose : la licence... compatibilité ?

avec par exemple une du domaine public telle que http://www.sqlite.org/copyright.html(...)
ou une autre http://www.gzip.org/zlib/zlib_license.html(...)
et j'en passe

je sais c'est euh bizarre comme questions... mais ça me chiffone
et depuis 2jours, plus je lis moins je comprend :|

(je sais bien que c'est long, mais encore c'est un résumé... 2jours à taper c'est euh... long)

Agréablement Attilagab
  • # Heu le C ?

    Posté par  . Évalué à -4.

    Personellement j'ai du mal à comprendre le choix du C..
    Le C++ c'est bien mieux, sous toutes les plate formes à mon goût, avec l'approche objet. M'enfin il faut l'objet dans la peau.
    Je n'aime pas le C à cause des pointeurs, alors qu'en C++ j'arrive à n'en avoir presque aucun ! Grâce à la STL principalement, mais n'importe quelle lib comme Qt le permet.
    Ensuite, tu ne peux pas utiliser Qt en C sans bindings, et en plus il te faut une licence pour l'utiliser sous win (enfin, il me semble)
    Pour wxwidgets : c'est du C++ aussi ! Par contre, là la licence ne gêne pas.
    Il ne reste en multi plateforme pour le C que Gtk...
    Je vous invite à lire le blog de l'auteur de Kompose, très instructif à propos du C vs. le C++...
    http://waidlafragger.de/~blog/oisch/(...)
    • [^] # Re: Heu le C ?

      Posté par  (site web personnel) . Évalué à 4.

      quelques petits commentaire rapides:
      - faire du C++ sans connaître le C, c'est un peu essayer de courir avant de savoir marcher. Le C++ est beaucoup plus riche de concepts, il demande énormément d'investissement pour le maîtriser honorablement.
      - je sais pas ce qu'ont les gens contre les pointeurs, mais faut bien réaliser que dès que tu as un objet, tu as un pointeur. Par ailleurs on doit pas utiliser le même Qt, parce que des pointeurs, il y en a dans quasiment tous les constructeurs de la bibliothèque :-) (c'est pas un miracle d'ailleurs, la gui mettant très en avant le concept de conteneur)
      - il faut une licence pour utiliser Qt (ou n'importe quoi d'autre d'ailleurs) partout, le fait qu'elle soit libre ou non est un autre problème.
      • [^] # Ben oui, le C++ !

        Posté par  . Évalué à 1.

        Franchement, je sais qu'il y a déjà eu pas mal de trolls gigantesques sur fr.com.lang.c++ et qu'il ne faudrait pas en faire ici, mais je vois que ça a déjà commencé.

        Et OUI on peut commencer la programmation par le C++
        • [^] # Re: Ben oui, le C++ !

          Posté par  (site web personnel) . Évalué à 5.

          Hmm, on n'a pas dû se comprendre sur ce coup-là :-)

          je sais bien qu'on peut commencer à programmer avec C++, c'est juste beaucoup plus difficile et casse-gueule.
          Mais moi je parlais bien de programmer en C++, pas d'utiliser un langage à 2% de sa capacité. Et je doute franchement (mais alors vraiment hein) que comprendre les templates, les avantages comparés des références et des pointeurs, le bon usage du mot-clé "friend" ou l'héritage virtuel (à ne pas confondre avec les méthodes virtuelles) et ses pièges par rapport à un héritage multiple classique soient vraiment à la portée d'un débutant. (et j'ai oublié tout un tas de mécanismes qui font de C++ une bête de course difficile à maîtriser)
          Et encore, j'ai du mal à imaginer un débutant aux prises avec l'objet s'en tirer sans devenir un maniaque de l'objet inutile, mais là je veux bien admettre que je suis peut-être pessimiste.

          Alors oui, on peut commencer avec C++, c'est juste que la frustration de ne pas connaître tout le langage dure plus longtemps.

          Le C au contraire est un langage relativement simple (avec suffisamment de subtilités pour s'amuser quand même), proche d'un macro-assembleur, on est tout près du CPU, on est au chaud, on se sent bien rapidement :-)
          • [^] # Re: Ben oui, le C++ !

            Posté par  . Évalué à 3.

            on est tout près du CPU, on est au chaud, on se sent bien rapidement :-)

            C'est vrai que lorsque l'on se tient près du CPU, on est vite au chaud, surtout avec les dernières versions. Quoi que maintenant, certaines cartes graphiques doivent pouvoir avantageusement remplacer une cheminée ! :-)

            Sinon, entièrement d'accord avec toi. Même si Bjarne Stroustrup et les puristes objets conseillent parfois aux débutants de commencer directement par le dernier langage, je ne recommanderai à personne de commencer par le C++ avant le C.

            Coté pointeur, c'est la même chose. Il suffit de se demander «  est ma ressource » pour introduire le concept de pointeurs. Il y a beaucoup de stagiaires et de candidats qui défilent dans notre petit bureau de développeurs et lorsque l'un d'eux me sort (en marmonnant) « Personnellement je préfère le Java au C » c'est quasiment éliminatoire pour moi:

            - Si c'est parce que l'API et le jeu de classe est sympa, que c'est répandu, portable partout et qu'il y a beaucoup d'outils, ok ça passe.
            - Si, pour le candidat, c'est un langage comme le C mais qui permet de s'affranchir des pointeurs, alors c'est une lacune qu'il essaie de masquer.

            Ce n'est pas un concept bizzarre propre au C, c'est quelque chose qui a toujours existé, depuis l'assembleur. A partir du moment où il fallait stocker quelque part l'adresse d'une ressource particulière, on a employé ce mot. Même sur Thomson, en BASIC 128 de 1985, on avait VARPTR qui nous donnait l'adresse d'une variable (enfin: de son descripteur) alors que ce n'était pas vraiment un langage de très bas niveau ...
      • [^] # Re: Heu le C ?

        Posté par  . Évalué à 2.

        je sais pas ce qu'ont les gens contre les pointeurs,

        Parceque c'est un concept qui est propre aux langages de bas niveau, comme l'assembleur, et qui peut donner mal au crâne à celui qui ne se donne pas les moyens de comprendre comment fonctionne un microprocesseur peut-être ?

        C'est pourtant pas compliqué, mais pas évident à expliquer "simplement".
        • [^] # Re: Heu le C ?

          Posté par  (site web personnel) . Évalué à 5.

          je déconseillerais à toute personne allergique aux micro-processeurs de devenir informaticien :-)

          Non sérieusement, sans avoir la moindre idée de ce que donnera son code une fois compilé, je vois mal comment écrire un code décent. (par exemple, j'imagine que ça ne choquerait pas une telle personne de passer des structures entières en paramètre, ce qui est tout de même une abomination la plupart du temps)
          Ça me paraît important de savoir ce qu'on fait, non?
    • [^] # Re: Heu le C ?

      Posté par  (site web personnel) . Évalué à 0.

      > j'ai du mal à comprendre le choix du C.. [...]
      > Je vous invite à lire le blog de l'auteur de Kompose, très instructif à
      > propos du C vs. le C++...
      > http://waidlafragger.de/~blog/oisch/(...)

      Alléluia !
      Moi aussi j'ai jamais compris pourquoi les gens programmaient encore en C, et pourtant j'ai commence a programmer en C.

      Par contre pour le C++ je sais pas comment tu fais pour ne pratiquement pas avoir de pointeurs. J'essaye le plus possible d'utiliser les references mais deja Qt ca aide pas dans ce domaine. Si tu as des liens, docs sur le sujet ca m'interesse.
      Mais le C++ c'est quand meme vachement complique pour rien, les refs, pointeurs, copy constructor, le manque de consistance et tout le bordel... C'est pour ca que d'un point de vue developpeur je prefere 100x plus Java, en plus MVC c'est pas encore supporte par Qt (par contre nivo utilisateur je prefere clairement le C++)
      • [^] # Re: Heu le C ?

        Posté par  . Évalué à 7.

        Aaah, ces trolls C/C++/<insérer votre langage favori ici> m'ont toujours fait rire.

        La plupart semble oublier une vérité simple : un outil aussi puissant soit-il ne fera d'un mauvais programmeur qu'un ... mauvais programmeur.

        Un mauvais programmeur C++, te fera une application avec 30000 classes, allant jusqu'à modéliser "class Proton; class Neutron; class Electron;", te démontrant qu'il peut modéliser l'univers de la sorte, mais qu'avec la cascade d'allocation/traitement/initialisation chaque déclaration d'objet nécessite 512M de RAM et une quantité non négligeable de CPU pour tourner à une vitesse décente (C.f CImg library http://cimg.sourceforge.net(...) un cas d'école).

        De l'autre coté tu as le programmeur C, formé à COBOL, qui te rajoute un #ifdef tous les 2 lignes de codes, des fonctions de 2578 lignes qui s'embourbent à réinventer la roue à chaque instruction, des variables globales à foison, des effets de bord à tous les étages, pas de commentaires et surtout pas de documentation (de toute façon qui y comprends encore quelque chose ?). C'est hélas le cas de beaucoup d'applis écrites en C et datant d'un certain âge (admirez par ailleurs ce programme : http://sourceforge.net/projects/afbackup/(...))

        La faute au langage ? Ben voyons, il a bon dos ! Un problème d'interface chaise-clavier surtout.

        Ce qui a d'intéressant en C++, c'est son concept objet. Mais franchement avec un peu d'imagination, il est possible de faire de même en C, sans que ce soit un calvaire pour y comprendre quelque chose ou pire, de redéfinir un langage par dessus le langage.

        Ce que je demande à une API c'est d'être avant tout documentée et d'être efficace eu égart du traitement offert. Rien n'est pire que de devoir se taper les sources de quelqu'un d'autre pour comprendre comment ça fonctionne (c'est ce que je reproche à GTK, et à beaucoup d'autres aussi hélas).

        Souvenez-vous de ce que disait Nicolas Boileau (17ème siècle quand même) :
        "Ce qui se conçoit bien, s'énonce clairement
        Et les mots pour le dire arrive aisément."

        CQFD.
        • [^] # Re: Heu le C ?

          Posté par  . Évalué à 4.

          Je me réponds à moi même en disant que j'ai aussi vu le contraire (trop rarement hélas) ...

          Notamment une API (propriétaire hélas) de traitement d'image écrite en C. Une oeuvre d'art. Le .h était 2x plus gros que le .c. L'auteur y avait documenté chaque fonction (il n'y en avait pas tant que ça d'ailleur), les entrées, les sorties, les effets de bord, comment les enchainer, des exemples de code. L'indentation était quasi maniaque, avec un mélange d'espace et de tabulation pour rester visible avec n'importe quelle valeur de tab, le tout commenté de manière pertinente. Une approche orientée objet extrêmement bien faite. Un vrai bonheur à mettre à jour : rien qu'à lire le .h j'avais compris le .c.

          La dernière fois que j'avais vu cela, c'était MUI en C++ sous AmigaOS. C'est dans ces moments là qu'on se dit : vouloir programmer c'est bien, bien programmer, il faut le vouloir.

          Franchement je n'attribue absolument pas cette qualité au langage, mais aux gars qui prennent leur métier au sérieux et pense un peu aux autres qui devront "subir" leur travaux. Un vrai troll serait de dire qu'ils sont hélas trop rares.
          • [^] # Re: Heu le C ?

            Posté par  . Évalué à 2.

            Grr, ça m'apprendra à poster à 5h du mat.

            Fallait lire :
            vouloir programmer c'est bien, bien programmer, il faut du talent.

            Sur ce,

            -------> |=====| Zzzzzzz
            • [^] # Re: Heu le C ?

              Posté par  . Évalué à 4.

              Euh .... je préférais la phrase originale, qui en plus d'être exacte, nous offrait une petite figure de style (dont je ne me rappelle plus le nom).
              Combien de développeurs écrivent du code pourri parce qu'ils ne veulent pas se donner la peine d'écrire un code propre tout de suite (l'excuse c'est "j'écris un truc qui marche et j'écrirai un truc plus propre, ou la documentation après" - en général, une fois que ca marche, on n'y revient plus).
          • [^] # Re: Heu le C ?

            Posté par  (site web personnel) . Évalué à 2.

            On est bien d'accord sur la partie commentaire de code source, par contre un truc me choque dans ce que tu dis:

            > [...] Une approche orientée objet extrêmement bien faite.

            J'ai l'impression que tout le monde est d'accord pour dire que l'approche objet est meilleure dans la majorite des cas sur l'approche fonctionnelle.
            Or il se trouve que C++ implemente la premiere et la derniere mais C que l'approche fonctionnelle.

            Alors pourquoi diable re-inventer la roue et utiliser le C pour utiliser l'approche objet et pas le C++ qui a ete fait et etudie expres pour ?

            Il me parait logique et evident qu'un outil qui a ete fait dans un but est souvent meilleure pour atteindre ce but qu'un outil qui n'a pas ete cree et pense pour.
            Pour prendre un exemple simple, j'utilise ma Peugeot 205 pour faire des petits trajets en ville parcequ'elle a ete concu pour. En revanche une Renault Espace sera clairement moins a l'aise dans ce meme environnement meme si c'est possible.

            Pour moi c'est evident qu'il faut utiliser des outils adaptes a la problematique. Et dans ce cas C++ est plus adapte pour faire de l'OO que le C parceque ca a ete concu et pense pour contrairement au C. J'ai fait 5 mois de GTK 8h/jour il y a 2 ans et maintenant je fais du Qt 8h/jour -> ba y'a pas photo l'un est clairement plus sympa et moins casse gueule a utiliser que l'autre. Avec GTK ils ont re-invente le modele objet en moins bien que le C++.
            • [^] # Re: Heu le C ?

              Posté par  . Évalué à 3.

              >Avec GTK ils ont re-invente le modele objet en moins bien que le C++.

              Hmm, j'ai du râter les signaux et le support des propriétés dans le C++ moi. C'est à quelle page du Langage C++ de Stroustrup que c'est décrit ça ?
            • [^] # Re: Heu le C ?

              Posté par  (site web personnel) . Évalué à 1.

              Or il se trouve que C++ implemente la premiere et la derniere mais C que l'approche fonctionnelle.

              Euh non n'importe quoi. Toi, t'as jamais utilisé de langage fonctionnel.
        • [^] # Re: Heu le C ?

          Posté par  (site web personnel) . Évalué à -1.

          Heureusement qu'il y a des gens comme toi qui maitrisent parfaitement ce langage,
          et qui permettent a la communaute du libre d'avancer dans le bon sens avec du vrai
          beau code qui marche.
          C'est fantastique de t'avoir parmi nous, merci encore de ta presence.

          David.
    • [^] # Re: Heu le C ?

      Posté par  . Évalué à 4.

      Personellement j'ai du mal à comprendre le choix du C..

      C'est un langage simple à apprendre, quand on programme en C on est obligé de "mettre les mains dans le cambouis", et du coup le moindre petit programme est un petit peu plus gratifiant que le même écrit dans un langage de plus haut niveau.

      Le C++ c'est bien mieux, sous toutes les plate formes à mon goût,

      C'est ton opinion

      avec l'approche objet. M'enfin il faut l'objet dans la peau.

      Mais savais-tu qu'on peut très bien faire de l'objet en C ??? Sisi, c'est même exactement ce qu'on fait quand on commence à programmer de manière structurée et normalisée. Le C++ n'offre qu'une syntaxe, au demeurant bien difficile à comprendre dans tous ses aspects, pour appliquer "plus facilement" (je veux des preuves !) le paradygme objet.

      Je n'aime pas le C à cause des pointeurs,

      Eh bien voilà, c'est un aveu. Mais un sacré aveu de faiblesse. Tu sais que les pointeurs existent aussi en C++ ??? Pourtant tu les ignores, c'est comme ignorer le mot-clé struct en C ... C'est débile quoi.

      alors qu'en C++ j'arrive à n'en avoir presque aucun ! Grâce à la STL principalement,

      Et je me demande comment tu fais ! Et même avec la STL pourtant. C'est quand même très pratique de pouvoir faire
      std::vector<BaseClass*> mesObjets;
      (un vecteur de pointeurs sur des objets dont la classe de base est BaseClass, du coup vivent les fonctions virtuelles et autres joyeusetés de l'héritage).
      Franchement si tu ignore les pointeurs en C++, tu dois souvent couper des cheveux en quatre pour faire des choses simples.

      mais n'importe quelle lib comme Qt le permet.

      Je ne sais pas je n'utilise pas Qt


      Ensuite, tu ne peux pas utiliser Qt en C sans bindings, et en plus il te faut une licence pour l'utiliser sous win (enfin, il me semble)

      [troll]D'où l'intérêt de plutôt se pencher sur Gtk ;) [/troll]
    • [^] # Re: Heu le C ?

      Posté par  . Évalué à 1.

      Réponse globale :
      Je me suis très mal exprimé.. Dès 22H, je dois triple-relire mes posts, ce que je n'ai pas fait.
      Bon,
      1- j'ai un prog en C++ quasi sans pointeurs (n'utilisant que la STL certes, en console uniquement certes, mais utilisant une lib C : libxml2...) Il y en a moins d'une dizaine pour un très gros 2000 lignes de code. Les pointeurs qui se promènent le plus sont des références vers les classes gérant la configuration du programme...
      2- Je sais pas ce qu'est venu foutre ce "n'importe quelle lib comme Qt". Je devais penser aux char *, qui sont de mon point de vue des horreurs... Je peux pas les blairer. Peut être que je pensais aux QString...
      Je pense qu'apprendre le C++ est différent d'apprendre le C.
      Le C ne permet pas d'écrire facilement un programme avec beaucoup de chaînes de caractères sans utiliser de pointeurs ni de lib externe, alors que sur mon gcc 3.3, la classe std::string le permet sans problème. Je suis sûr que beaucoup de gens qui comme moi ont appris le C++ (ou aperçu de loin) avec un vieux bouquin ne comprendront pas ma phrase, ni les raisons qui m'ont poussé à la faire...
      Par ailleurs, je ne pense pas qu'apprendre tous les concepts du C++ soit le ticket d'entrée nécessaire : je ne programme pas avec les templates par exemple. J'en utilise certes (std::vector<std::string> par exemple) mais sans prétendre les connaître, sans même avoir cherché à comprendre les mécanismes derrière.

      Pour finir, dernier commentaire : "il faut une licence pour Qt" signifiait que l'on doit payer pour utiliser Qt sous windows...
  • # débuter en C

    Posté par  (site web personnel) . Évalué à 7.

    Salut,
    bon j'ai pas bien compris si tu étais complètement débutant en C ou pas, mais toujours est-il que je te conseillerais vivement de ne pas t'occuper des normes au début. Je m'explique: lorsqu'on écrit de petits programme de type "hello world" comme tu sembles vouloir le faire, il est très difficile de sortir de la norme, faut vraiment le faire exprès. Par ailleurs, le compilateur, pour peu qu'il soit configuré avec les options qui vont bien (-Wall -Werror -ansi -pedantic pour gcc), se chargera de te remettre dans le droit chemin rapidement.

    Une seule règle donc: ne laisse passer aucun warning du compilateur et tu programmeras proprement sans même y penser. Les subtilités de la norme comme les shift de 0 ou les casts de l-value, tu verras plus tard, quand tu commenceras à y penser pour tes programmes (et je garantis la possibilité d'écrire un hello world sans avoir ces problèmes ;-)). En bref, regarder tout ça maintenant risque de te polluer les idées plus qu'autre chose: il faut un minimum d'expérience pour tout assimiler.

    Je n'ai pas saisi le rapport entre ansi et couche graphique, une petite confusion?
    au sujet de l'utilisation du graphique, 2 choses:
    - si tu es vraiment débutant, ce n'est pas la peine de commencer par faire une interface graphique, c'est le meilleur moyen de ne rien comprendre à ce qui se passe. Les toolkits sont la plupart du temps bien faits, mais il n'empêche qu'ils introduisent bien souvent des concepts de trop haut niveau pour un débutant. les signaux/slots de Qt ou gtk sont un exemple typique. J'admet que c'est plus rigolo de programmer un dialogue plein de boutons, mais niveau didactique, une petite appli console c'est mieux :-)
    - puisque tu veux faire du C (et non du C++), je déconseille Qt. Je sais qu'il existe des bindings C, mais Qt est C++ dans l'âme, tous les bindings du monde n'y changeront rien :-) (je précise que je ne fais que du Qt). Par ailleurs je suis personnellement allergique à Gtk (qui d'ailleurs semble fort peu apprécié sous Windows), je te conseille donc Wx

    Pour ce qui est de la licence, je dirais que tant que tu n'as pas l'intention de redistribuer ton programme, le problème n'en est pas vraiment un: si tu as le droit d'utiliser tes outils de développement, c'est suffisant. Dans le cas contraire, il faut faire un peu plus attention: une utilisation de la version GPL de Qt par exemple t'imposerait de distribuer ton programme sous licence GPL, ce qui n'est pas le cas de Gtk ou Wx, qui sont disponibles sous licence LGPL.
    Si tu veux te faire une idée des différentes licences libres "courantes", regarde ces 2 là, plus les licences de type BSD, tu auras déjà un bon panel.

    Bon courage.
    • [^] # Re: débuter en C

      Posté par  . Évalué à 2.

      @D. Pierre > merci bien :)
      bah le choix... du c...
      cela fait 2-3ans que je suis sensé commencer à apprendre (mais à chaque murs, les bouquins se referment, puis se réouvrent quelques mois plus tard et se referment sur les même pages, un cercles assez vicieux... et ce en php en javascript en c en c++, celui en java a été ouvert... une fois)

      et sur tout ce que j'ai lu, le c m'impose une restriction sur ses possibilités (sans ajouts, bref de base, d'où mon interêt pour l'ansi, et euh le listing des includes que je vais m'imposer est assez light)
      et le passage des pointeurs se fera cette fois ci :) je suis motivé.
      j'ai lu en effet le blog de l'auteur de Komposé

      c'est un choix et je respecte (peut être que je changerais à termes selon les besoin quand je ne verrais pas de facilité en temps et moyens dans le c comparativement à ce que je pourrais éventuellement faire en c++)

      Komposé... j'ignorais qu'un tel logiciel pouvais exister... ni qu'il y avais des besoins comme cela oO,
      n'étant pas collectionneurs de beaucoup de fenêtres...

      @Yann Hodique > merci :)
      je suis tout à fais nouveau : disons que je m'arrêtes assez fréquement aux mêmes pages, je stop un temps, puis je reprend de zéros (et à chaque fois c'est pire) je crois déjà connaîtres les pages de mon bouquin voir du net, les concepts, donc je saute les pages et je rebloque...
      disons que je parlais du helloworld évolué dans le sens au delà de cet helloworld, faire un bête notepad par exemple, inclure une option d'enregistrement, de recherche etc bref commencer progressivement :)
      le peu de progr que j'ai fais c'était à la fac, un dérivé de lisp (mais cela date un peu beaucoup)

      Pour le rapport ansi couche graphique, d'après ce que j'ai compris de l ansi, il y a très peu de possibilité d'interaction entre l'utilisateur (moi ou quelque d'autres, doté de souris et d'un écran) et le programme, je voyais l'interface pour un début de communication entre le programme et moi, du moins au début : une fenêtre (mon bébé pas la console) et son résultat, et quand je serais au point un "fichier" "ouvrir" "fermer" sera le plus (et tout à la souris pour atteindre ces môts, j'ai jamais compris l'adoration pour la console ;-) et pourtant un ami a essayé de me le faire comprendre...)

      aerf :| wikipedia m'a pas aidé sur ce coup là en français
      google si (chuis déçu d'un côté)
      http://libre.act-europe.fr/GtkAda/GnomeBindings/img5.htm(...)

      bah disons que si j'apprend c'est en tant qu autodidacte pur et dur, sans rêver de vendre un produit fermé, donc le partage de sources ne me dérange pas plus que cela pour l'instant (si j'apprend c'est sur le tas, un tas fait précédement par d'autre gars comme moi + les pros) donc... c'est pas dérangeant :)
      bsd je l'avais oublié celle là :D

      mais en effet je me suis assez dispersé, disons que je souhaitais avoir tous les outils en mains au cas où, et partir avec ces mêmes outils.

      bon gtk ou wx mmmh faut que je m'y penche en effet :)
      encore merci

      Atti.
      • [^] # Re: débuter en C

        Posté par  . Évalué à 2.

        bref faire mon mon helloworld évolué mais facilement gérable sous windows et linux avec les mêmes sources (enfin avec le moins de modif possible même si en lisant on découvre que certaines valeurs numériques se gèrent différement selon l'os...)


        Y a que la console qui te permette de faire ca simplement.

        j'ai jamais compris l'adoration pour la console ;-)

        C'est pas une adoration, plutôt un "mal nécessaire". Avant de pouvoir utiliser un toolkit graphique quel qu'il soit, il vaut mieux connaître les bases du langage. Et seule la console te permet d'interagir simplement avec ton programme.

        A mon avis, tu devrais apprendre les concepts de base à la console puis après progressivement te familiariser avec les toolkits disponibles (et ca, c'est comme les distributions linux, il faut les essayer avant de pouvoir choisir celui qui convient le mieux en fonction des besoins).
  • # Eclaircissement dans ma problématique de licenses

    Posté par  . Évalué à 2.

    surement très connu
    je l'avais d'ailleurs dans mes bookmarks (comme quoi, va falloir que je revisite mes bookmarks un de ces 4...)

    http://www.fsf.org/philosophy/license-list.fr.html#GPLCompatibleLic(...)

    en français, un poil de lumière en plus :)
  • # Pour résumer...

    Posté par  (site web personnel) . Évalué à 5.

    ...les nombreux trolls C/C++ ci dessus :
    • Le C c'est bien pour commencer, et ça aide bien quand tu passes au C++
    • Le C, y a pas que tata simone qui développe avec, dès que tu touches à du bas niveau, tu y passes souvent.
    • Le C, tu peux faire des IHM avec : GTK+ est en C, mais tu peux aussi programmer du GTK dans ton langage préféré avec les bindings type gtkmm pour le C+ ou pyGTK pour python
    • Le C, tu peux développer orienté objet avec (GTK est construit comme ça)
    • GTK, c'est libre sous linux et windows (entre autres), Qt/windows n'est pas libre, wxWidget est pas mal aussi il parrait.
  • # GTK+

    Posté par  . Évalué à 2.

    Je ne vais pas rentrer dans le troll GTK+ vs. autre chose, mais sache que ces bibliothèques sont :

    - puissantes
    - orientées objet
    - portables
    - extrêmement utilisées dans le monde Linux (donc tu peux regarder la source des programmes qui te plaisent et comprendre comment ils manipulent tout ça)
    - abondamment documentées quoi qu'en dise quelqu'un plus haut

    2 liens :

    http://www.gtk.org(...) pour un tutoriel et la référence des APIs
    http://www.gtk-fr.org(...) (tutoriels en français)
    • [^] # Re: GTK+

      Posté par  . Évalué à 2.

      Et j'ajouterai qu'il existe des bindings pour un paquet de langages
      http://www.gtk.org/bindings.html(...)

      Les connaissances acquises ne seront donc pas inutiles si tu décides de te pencher sur un autre langage.
  • # Le code des autres

    Posté par  . Évalué à 2.

    Si tu veux apprendre, laisse tomber ton bouquin un moment.
    Le mieux n'est-il pas de lire le code des autres ?
    Trouve-toi un projet qui t'interesse, si possible pas encore tres developpe, et essaie de changer/rajouter les fonctionnalites qui ne te plaisent pas.

    Quand tu maitriseras le C, la, tu pourras te lancer dans un projet sympa que tu ne laisseras pas tomber au bout d'une semaine.

    Le bonjour chez vous,
    Yves
    • [^] # Re: Le code des autres

      Posté par  . Évalué à 4.

      Le mieux n'est-il pas de lire le code des autres ?

      Quand je vois la façon qu'ont certains de coder (même dans le libre), ça me fait un peu peur.

      On peut apprendre en lisant le code des autres mais il faut bien choisir le code que l'on va lire.
      • [^] # Re: Le code des autres

        Posté par  . Évalué à 1.

        bah disons que la lecture d'un code source, même si j'ai quelque base...
        /me se sent pas chaud pour l'instant
        mais c'est du prévu :)

        Sinon après quelques pleurs en installant une debian stable (vivi faut envoyer le message d'erreur à une adresse, mais quant l'interface graphique se résume à rien et sans souris...) bref une mandrake 10 offcielle installée plus tard, souris optique en usb reconnue :D (je trifouillerais plus tard pour ma watcom)

        je suis en recherche d'un ide de type dev-cpp
        il semble que anjuta s'en rapproche.
        kdeveloppe m'a l'air bien trop euh... gros.

        Si vous avez un petit ide, une idée ? :=)

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.