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 :

[Debutant] : lire le code source d'un collegue


Sujet :

C++

  1. #1
    Hew
    Hew est déconnecté
    Membre régulier
    Inscrit en
    Février 2006
    Messages
    142
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 142
    Points : 101
    Points
    101
    Par défaut [Debutant] : lire le code source d'un collegue
    Bonjour !

    Voici mon probleme : un collegue est parti avant que j'arrive en laissant son code source. Certaines fonctions de ce code ne fonctionnent plus, et je suis chargee de reparer tout ca et de livrer un code fonctionnel

    Le seul soucis c'est que je n'y connais pas grand chose en c++ (j'ai fait surtout du matlab et un peu de C) et que je n'ai jamais manipule de programmes avec autant de fichiers et de librairies Et du coup je n'ai aucune idee de par ou commencer
    Mais vraiment aucune ! Par contre je suis hyper motivee, vu que j'ai accepte ce truc pour apprendre !!

    Alors est-ce qu'il y aurait une bonne ame dans la salle qui pourrait m'expliquer un peu comment les fichiers devraient etre structures et ce que je devrais trouver, par quoi je dois commencer ?

    Merci !
    Et si jamais ma question est completement loufoque, desolee, je debute vraiment, donc pas taper, merci

    Cec.

  2. #2
    Expert éminent sénior
    Avatar de koala01
    Homme Profil pro
    aucun
    Inscrit en
    Octobre 2004
    Messages
    11 612
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : Belgique

    Informations professionnelles :
    Activité : aucun

    Informations forums :
    Inscription : Octobre 2004
    Messages : 11 612
    Points : 30 611
    Points
    30 611
    Par défaut
    Saut,

    De manière générale, les unités de compilations sont séparées en deux fichiers distincts:
    le fichier d'en-tête (dont le nom est souvent composé de l'extension .h ou .hpp) et le fichier d'implémentation dont le nom, à moins qu'il ne s'agisse de l'implémentation de template sera composé de l'extension .cpp.

    Le plus souvent, l'erreur se trouve dans le fichier d'implémentation, à savoir qu'il s'agit de l'appel d'une fonction pour lequel le codeur n'aurait pas suivi la signature attendue.

    Maintenant, si tu pouvais déjà nous faire parvenir le type d'erreur obtenu et, au minimum le code des fonctions qui semblent ne pas compiler, nous aurions beaucoup plus de chances d'arriver à te fournir une réponse à la fois claire, efficace et rapide concernant les problèmes à résoudre
    A méditer: La solution la plus simple est toujours la moins compliquée
    Ce qui se conçoit bien s'énonce clairement, et les mots pour le dire vous viennent aisément. Nicolas Boileau
    Compiler Gcc sous windows avec MinGW
    Coder efficacement en C++ : dans les bacs le 17 février 2014
    mon tout nouveau blog

  3. #3
    Rédacteur/Modérateur
    Avatar de JolyLoic
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    5 463
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Yvelines (Île de France)

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

    Informations forums :
    Inscription : Août 2004
    Messages : 5 463
    Points : 16 213
    Points
    16 213
    Par défaut
    Pour un programme assez conséquent, s'il est assez proprement écrit dans un style objet, il existe des produits qui permettent d'extraire du code des diagrammes qui peuvent donner une vue synthétique et parfois plus simple à comprendre.

    On peut par exemple citer en gratuit boUml, avec son module reverse C++, mais n'importe quel outil UML digne de ce nom avec interface C++ devrait pouvoir convenir.
    Ma session aux Microsoft TechDays 2013 : Développer en natif avec C++11.
    Celle des Microsoft TechDays 2014 : Bonnes pratiques pour apprivoiser le C++11 avec Visual C++
    Et celle des Microsoft TechDays 2015 : Visual C++ 2015 : voyage à la découverte d'un nouveau monde
    Je donne des formations au C++ en entreprise, n'hésitez pas à me contacter.

  4. #4
    Rédacteur
    Avatar de 3DArchi
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    7 634
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 7 634
    Points : 13 017
    Points
    13 017
    Par défaut
    Par contre, sur un code un peu ancien, mal structuré et sur lequel beaucoup de développeurs sont passés, un piste peut être de partir de l'item IHM qui pose problème et de remonter peu à peu le fil. Par exemple, le problème se déclenche quand tu sélectionne le menu 'Toto'. Ben, tu cherche où le traitement de ce menu commence et tu mets ton premier point d'arrêt à cet endroit. Ensuite tu déroules le code peu à peu pour voir ce qu'il se passe. Si certaines parties te semblent obscures, n'hésite pas à venir poser des questions ici
    Bon courage.

  5. #5
    Hew
    Hew est déconnecté
    Membre régulier
    Inscrit en
    Février 2006
    Messages
    142
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 142
    Points : 101
    Points
    101
    Par défaut
    Bonjour !

    Merci a vous pour vos reponses.
    Ma question portait surtout sur l'organisation du code, qui appelle quoi, etc.

    Depuis mon message, j'ai essaye de compiler les programmes (en fait il y en a 2 independants). Le premier renvoyait des erreurs a cause de la version de gcc utilisee pour compiler et des librairies qui etaient mal localisees, erreurs fixees (avec un peu d'aide ).

    Pour le deuxieme en revanche c'est le code lui-meme qui renvoie des erreurs et renseignements pris il n'a jamais ete compilable Le collegue est parti en laissant un truc pas fini !
    Je sais pas si modifier le code va etre dans mes competences . Comment on s'y attaque ? En prenant les erreurs renvoyees par la compilation une par une ?

    Merci encore pour vos reponses et desolee par avance si les miennes arrivent tard, decallage horaire oblige

  6. #6
    Hew
    Hew est déconnecté
    Membre régulier
    Inscrit en
    Février 2006
    Messages
    142
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 142
    Points : 101
    Points
    101
    Par défaut
    JolyLoic, ta reponse m'interesse !
    J'ai installe bouml sur ma machine mais je ne vois pas trop comment m'en servir pour obtenir ces fameux diagrammes...

  7. #7
    Rédacteur/Modérateur
    Avatar de JolyLoic
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    5 463
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Yvelines (Île de France)

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

    Informations forums :
    Inscription : Août 2004
    Messages : 5 463
    Points : 16 213
    Points
    16 213
    Par défaut
    Ce n'est pas facile de décrire ça comme ça... Peut-être plus d'infos sur le forum dédié, où se trouve d'ailleurs l'auteur de l'outil :
    http://www.developpez.net/forums/f53.../outils/bouml/
    http://bpages.developpez.com/

    En gros, tu choisi dans un menu reverse C++, il va analyser un répertoire à la recherche du code, et prégénérer des objets UML qu'il te suffira de dropper dans un diagramme de classes.
    Ma session aux Microsoft TechDays 2013 : Développer en natif avec C++11.
    Celle des Microsoft TechDays 2014 : Bonnes pratiques pour apprivoiser le C++11 avec Visual C++
    Et celle des Microsoft TechDays 2015 : Visual C++ 2015 : voyage à la découverte d'un nouveau monde
    Je donne des formations au C++ en entreprise, n'hésitez pas à me contacter.

Discussions similaires

  1. Réponses: 11
    Dernier message: 29/05/2011, 12h55
  2. [Debutant POO]le code source 'composition' en Java
    Par junior68 dans le forum Débuter avec Java
    Réponses: 5
    Dernier message: 28/03/2009, 19h49
  3. Lire le code source généré
    Par Mister Nono dans le forum GWT et Vaadin
    Réponses: 6
    Dernier message: 03/07/2008, 17h00
  4. Lire dans code source d'une iframe
    Par ponpon17430 dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 19/10/2006, 00h15
  5. Lire le code source d'une page
    Par Invité dans le forum Langage
    Réponses: 2
    Dernier message: 25/08/2006, 20h42

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