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

 C Discussion :

répartition du code entre .c et .h


Sujet :

C

  1. #21
    Membre Expert
    Profil pro
    Développeur en systèmes embarqués retraité
    Inscrit en
    Mars 2006
    Messages
    952
    Détails du profil
    Informations personnelles :
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2006
    Messages : 952
    Par défaut
    Salut,

    Citation Envoyé par denispir Voir le message
    développer c'est avant tout penser et coder, non?
    et déboguer, aussi non? Et pour ça, une IDE bien conçue, ça aide. Je ne sais pas vous, mais moi, il m'est déjà arrivé de suer sur quelques-uns.

    A+

    Pfeuh

  2. #22
    Membre confirmé
    Profil pro
    amateur
    Inscrit en
    Avril 2012
    Messages
    145
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : amateur
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Avril 2012
    Messages : 145
    Par défaut
    Citation Envoyé par pfeuh Voir le message
    Salut,


    et déboguer, aussi non? Et pour ça, une IDE bien conçue, ça aide. Je ne sais pas vous, mais moi, il m'est déjà arrivé de suer sur quelques-uns.

    A+

    Pfeuh
    Ouais, mais moi pour déboguer je suis obligé de penser beaucoup et très fort. Mais c'est sûrement parce que je suis vachement moins fort et surtout moins doué!

    Denis

  3. #23
    Modérateur
    Avatar de Obsidian
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Septembre 2007
    Messages
    7 449
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2007
    Messages : 7 449
    Par défaut
    Citation Envoyé par denispir Voir le message
    Ouais, mais moi pour déboguer je suis obligé de penser beaucoup et très fort. Mais c'est sûrement parce que je suis vachement moins fort et surtout moins doué! Denis
    C'est surtout parce que tu manques d'entraînement, tout simplement. Déboguer une application est compliqué par nature et tous les programmeurs sont passés au moins une fois sur un cas difficile qui leur a fait perdre des jours, alors qu'il s'agissait le plus souvent d'une broutille comme un point-virgule mal placé.

  4. #24
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 813
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 813
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par denispir Voir le message
    Et puis j'aime bien le C, ça m'éclate bien aussi de devoir penser très lucidement à tout, dans le détail et sous tous les angles, comme ça. Quand ça marche, t'es content! alors qu'en python si t'as les idées claires sur ce que tu veux dire ça marche tout de suite ; et sans fuites mémoires ;
    Ah moi c'est le contraire. J'ai fait du C pendant plusieurs années et quand je suis passé à Python ça a été le jour et la nuit. J'ai été content de ne plus avoir à me taper 45 lignes et 25 tests pour faire un append dans un tableau...

    Citation Envoyé par denispir Voir le message
    on s'en lasse, non ?
    Pas moi...
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

  5. #25
    Expert confirmé
    Avatar de fred1599
    Homme Profil pro
    Lead Dev Python
    Inscrit en
    Juillet 2006
    Messages
    4 045
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Lead Dev Python
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2006
    Messages : 4 045
    Par défaut
    J'ai fais 7 ans de python avant de commencer le C ces temps-ci.

    Le C semble répétitif, les listes simplement chaînée, les listes doublement chaînées, ...

    Ce qui m'embête le plus maintenant (avant c'était les pointeurs), c'est les fuites mémoires où je me bat gaiement avec Valgrind.

    Je travaille beaucoup le C, car au final mon objectif est d'être à niveau pour un langage que je considère être entre le C et python, c'est à dire le C++.

    Citation Envoyé par Sve@r
    Ah moi c'est le contraire. J'ai fait du C pendant plusieurs années et quand je suis passé à Python ça a été le jour et la nuit. J'ai été content de ne plus avoir à me taper 45 lignes et 25 tests pour faire un append dans un tableau...
    J'ai actuellement cette même impression, mais j'ai le sentiment que le C++ sera un juste milieu entre l'efficacité et la simplicité.

    Le C, reste tout de même simple dans sa syntaxe, pas beaucoup de mots clé.

    Citation Envoyé par denispir
    on s'en lasse, non ?
    En fait je ne me lasse pas de python pour faire des choses simples et avoir à éviter de m'occuper de la gestion mémoire.

    Je me lasse de stagner dans quelque-chose que je connais déjà et où je ne progresserais que très peu.

    Le C permet de progresser en algorithme... pour moi c'est déjà ne plus stagner, c'est ce que je cherche.

    Le C++ va ajouter un gros plus dans sa gestion des exceptions...

    Chacun m'apportera ce que je souhaite, c'est à dire, éviter absolument la routine!

  6. #26
    Modérateur

    Avatar de Bktero
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2009
    Messages
    4 492
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2009
    Messages : 4 492
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par Sve@r Voir le message
    Ah moi c'est le contraire. J'ai fait du C pendant plusieurs années et quand je suis passé à Python ça a été le jour et la nuit. J'ai été content de ne plus avoir à me taper 45 lignes et 25 tests pour faire un append dans un tableau...
    Je me suis mis à Python et je pense la même chose. Les exemples tu m'avais montré par mp étaient très aguicheurs, la suite a été encore mieux !

    Hier, j'ai ecris un bout de code qui :
    - à partir d'un vecteur d'objets, crée un nouveau vecteur
    - contenant la valeur d'un attribut d'instance
    - des objets pour lesquels une méthode de cette classe rend True
    en une seule ligne !

    Exceptionnel !!!

  7. #27
    Membre confirmé
    Profil pro
    amateur
    Inscrit en
    Avril 2012
    Messages
    145
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : amateur
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Avril 2012
    Messages : 145
    Par défaut
    Citation Envoyé par Bktero Voir le message
    Je me suis mis à Python et je pense la même chose. Les exemples tu m'avais montré par mp étaient très aguicheurs, la suite a été encore mieux !

    Hier, j'ai ecris un bout de code qui :
    - à partir d'un vecteur d'objets, crée un nouveau vecteur
    - contenant la valeur d'un attribut d'instance
    - des objets pour lesquels une méthode de cette classe rend True
    en une seule ligne !

    Exceptionnel !!!
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
        [obj.attr for obj in objets if (obj.meth() == True)]
    lol ;-)

    (Je préfère séparer le mapping du filtrage, en 2 opérations. Mais python a un syntaxe terrible pour les fonctions anonymes (lambda truc), alors on est obligés d'utiliser les compréhensions de listes, et une fois qu'on en est là, autant tout grouper.)

    Denis

  8. #28
    Membre confirmé
    Profil pro
    amateur
    Inscrit en
    Avril 2012
    Messages
    145
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : amateur
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Avril 2012
    Messages : 145
    Par défaut
    Citation Envoyé par fred1599 Voir le message
    J'ai fais 7 ans de python avant de commencer le C ces temps-ci.

    Le C semble répétitif, les listes simplement chaînée, les listes doublement chaînées, ...

    Ce qui m'embête le plus maintenant (avant c'était les pointeurs), c'est les fuites mémoires où je me bat gaiement avec Valgrind.

    Je travaille beaucoup le C, car au final mon objectif est d'être à niveau pour un langage que je considère être entre le C et python, c'est à dire le C++.



    J'ai actuellement cette même impression, mais j'ai le sentiment que le C++ sera un juste milieu entre l'efficacité et la simplicité.

    Le C, reste tout de même simple dans sa syntaxe, pas beaucoup de mots clé.



    En fait je ne me lasse pas de python pour faire des choses simples et avoir à éviter de m'occuper de la gestion mémoire.

    Je me lasse de stagner dans quelque-chose que je connais déjà et où je ne progresserais que très peu.

    Le C permet de progresser en algorithme... pour moi c'est déjà ne plus stagner, c'est ce que je cherche.

    Le C++ va ajouter un gros plus dans sa gestion des exceptions...

    Chacun m'apportera ce que je souhaite, c'est à dire, éviter absolument la routine!
    Je crois que python est beaucoup plus compliqué, et bien moins intuitif, que beaucoup le disent. C'est dû au fait qu'il reprend l'essentiel de la sémantique des langages de la lignée C/Unix (c'était d'ailleurs un des buts de Guido, il en parle je ne sais plus où), avec une syntaxe plus sympa et sémantique à la fois plus claire et plus juste. Du coup tout nous paraît (plus) simple, mais c'est un peu une illusion d'optique, je crois.
    En plus, au fil du temps, le langage c'est vachement complexifié. Avec les méta-classes, les coroutines primitives (génrateurs), les décorateurs, tu peux complètement exploser le modèle/paradigme central de python.

    Si tu cherches qq ch entre C et python, va peut-être fouiller un temps du côté de D(2) et Go. D, c'est C++ moins pmal foutu. Go, bon, tout le monde en parle (*). Explorer la gamme des Modula et Oberon peut aussi valoir le coup, pour toucher à d'autres principes "language design", même si tu n'as pas l'intention de les adopter.

    Denis

    (*) Je dois dire malheureusement que Go est selon moi très bien conçu, du moins selon les principes de base choisis (pas de générique, par ex). Le typage dit "structurel" est excellent et je parle même pas du modèle de concurrence (hérité d'Erlang). La syntaxe "répare" l'essentiel des verrues de C/++. Malheureusement, parce que Google me fout sacrément la trouille: je préférerais que leurs projets de langages soient des ratés conceptuels (Mais avec Ken Thompson dans le lot...) et des échecs publics (mais avec la puissance de google....

  9. #29
    Expert confirmé
    Avatar de fred1599
    Homme Profil pro
    Lead Dev Python
    Inscrit en
    Juillet 2006
    Messages
    4 045
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Lead Dev Python
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2006
    Messages : 4 045
    Par défaut
    En plus, au fil du temps, le langage c'est vachement complexifié. Avec les méta-classes, les coroutines primitives (génrateurs), les décorateurs, tu peux complètement exploser le modèle/paradigme central de python.
    Question de point de vue, personnellement je trouve pas.

    complexifié et amélioré.

    D, c'est C++ moins pmal foutu
    Mouiiii, C'est moins répandu, dommage!

    Go, bon, tout le monde en parle
    Pas tant que ça, ça fait longtemps que j'en ai pas entendu parler. Par contre j'entend parler de Haskell, python, objective C

  10. #30
    Modérateur
    Avatar de Obsidian
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Septembre 2007
    Messages
    7 449
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2007
    Messages : 7 449
    Par défaut
    Je me suis mis à Python et je pense la même chose. Les exemples tu m'avais montré par mp étaient très aguicheurs, la suite a été encore mieux !
    Oui, mais ce sont deux langages qui ne sont pas comparables.

    Le Python est un excellent langage, mais la majeure partie de ses « grands avantages par rapport au C » sont surtout ceux des langages interprétés. Les lambda-fonctions, par exemple, existent en LISP depuis 1960.

    Il est décevant de constater que peu de gens se rendent compte que les difficultés du C sont ce qu'elles sont parce que les ordinateurs fonctionnent globalement de cette façon, au plus bas niveau, et pas à cause d'une conception arbitraire et maladroite au départ.

  11. #31
    Modérateur

    Avatar de Bktero
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2009
    Messages
    4 492
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2009
    Messages : 4 492
    Billets dans le blog
    1
    Par défaut
    Loin de l'idée de comparer !!!

    C'est juste que ça c'est mis à en parler. Venant d'une formation info indus, je connais tout l'intérêt d'un langage proche de la machine comme C. A la longue, sur PC, c'est saoulant pour faire de petites appli de se dire "alors.... pour mon tableau, je mets quoi comme taille avec mon #define ?". Au boulot ces deniers jours, j'ai développé un petit outil pour exploiter des fichiers issus d'un boitier qui est connecté à un bus et enregistre toutes les trames qui passent. Faire ça en Python a été un plaisir car je n'ai pas eu à gérer la mémoire, j'a bénéficié d'écrire de haut niveau et compactes, la possibilité de faire des classes, etc. J'ai utilisé un langage adapté à mon besoin. En revanche, je ne suis pas fan du côté interprété. Ou alors je n'ai pas encore l'habitude. J'aime bien en C faire "compiler" et qu'il me dise "erreur : telle variable est inconnue car j'ai fait une faute de frappe" ; en Python, j'exécute et je vois que ça plante. Si c'est un morceau du code où je ne passe pas systématiquement, je risque de m'en rendre compte plus tard.

    Enfin, bref, on diverge ^^

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    [obj.attr for obj in objets if (obj.meth() == True)]
    Bien vu ^^
    Tu peux même enlever le == True et les parenthèses !


    PS : message numéro
    !

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 2 PremièrePremière 12

Discussions similaires

  1. Dreamweaver remplacer du code entre deux balises ?
    Par kermystik dans le forum Dreamweaver
    Réponses: 3
    Dernier message: 31/08/2006, 11h47
  2. Compatibilité du code entre navigateurs
    Par solp dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 12/04/2006, 16h30
  3. [VBA] Code entre forms
    Par Virgile59 dans le forum Access
    Réponses: 3
    Dernier message: 28/12/2005, 21h57
  4. reprendre un enchainement de code entre deux formulaires.
    Par scully2501 dans le forum Access
    Réponses: 2
    Dernier message: 05/10/2005, 16h11
  5. [VB.NET] Comment ecrire du code entre <title>
    Par ykane dans le forum ASP.NET
    Réponses: 5
    Dernier message: 10/05/2004, 16h58

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