2010-07-22 9 views
1

(Si vous pensez un autre site sur StackExchange ou ailleurs est un meilleur endroit pour poser ce type de question, s'il vous plaît me diriger dans la bonne direction.)Méthodes/outils pour comprendre la logique logicielle?

Qu'est-ce que les développeurs expérimentés utilisent pour comprendre comment le code d'un existant travail d'application, avant de pouvoir modifier/ajouter?

Existe-t-il un moyen plus productif que de passer ligne par ligne avec un stylo/du papier à portée de main jusqu'à ce que vous le découvriez? Je trouve cela long et difficile de garder une vue d'ensemble et de ne pas se perdre dans les détails. Par exemple, existe-t-il une application permettant d'analyser le code source et de dessiner en quelque sorte un diagramme montrant la logique d'une sorte de storyboard zoomable?

Merci.

Répondre

0

Vous ne trouverez pas un outil qui s'adresse à tous les langages et systèmes. Être spécifique.

En outre, jetez un coup d'œil atearlierquestions (recherchez par exemple «tools understand legacy»).

2

Y at-il une façon plus productive que en passant par la ligne par ligne avec stylo/papier à portée de main jusqu'à ce que vous figurez qu'il dehors?

En réalité, "crayon &" est le meilleur moyen de comprendre le fonctionnement de l'application. Tous les outils peuvent consolider ce processus, mais ils ne vous donneront pas une réponse universelle à vos questions - vous devrez toujours analyser l'image, et analyser prend beaucoup plus de temps que de simplement dessiner cette image.

Si vous avez intérêt pour les méthodes, j'utilise l'approche suivante:

  1. Trouver les points « de haut niveau » d'application (où les demandes des utilisateurs viennent ou comme ça);

  2. Détruisez le code jusqu'au niveau dont vous avez besoin.

En passant par la ligne de code entier en ligne est presque jamais nécessaire de comprendre la routine globale de certains processus dans le logiciel, il suffit de prendre des éléments de haut niveau et les décomposer jusqu'à ce que les boîtes noires utilisées dans l'analyse sont suffisamment petits pour comprendre vous avez besoin. N'essayez jamais de décomposer une «boîte noire» jusqu'à ce que vous ayez réellement besoin de plus petits détails. Cela est rarement nécessaire jusqu'à ce que vous commenciez à ajouter et à modifier le code. L'objectif est de savoir où trouver le point de commencer à corriger les bogues ou d'implémenter de nouvelles fonctionnalités, de ne pas se souvenir de chaque ligne de code dans un composant.