Inizia a comprendere un progetto esistente per programmatore principiante

6

Voglio capire un progetto esistente per migliorarmi di più, ma non sono sicuro che il progetto sarebbe schiacciante per me o meno. Non sono sicuro di essere in grado di capirlo. Penso addirittura che fallirò. Quando guardo i progetti a colpo d'occhio, mi fa sentire la paura di vedere migliaia di linee di codice.

Non so nemmeno da dove iniziare a leggere il codice. Devo seguire il debug o c'è qualcos'altro? Puoi per favore guidarmi in questa situazione? Mi sto totalmente confondendo all'inizio.

Modifica: alcune cose da specificare sulla mia domanda.

Conosco il linguaggio C # e ho imparato alcune tecnologie WEB come ASP.NET, MVC 2 e Web Form, ma sono sicuro che ci saranno ancora molte cose che non conosco. Mi autodefinisco come principiante, ma è solo a causa della mancanza di esperienza professionale in questo settore. Ma la mia comprensione OOP è abbastanza buona. Sto cercando di migliorare me stesso su WEB, quindi sono alla ricerca di progetti WEB come motori di blog che sono più semplici di altri per l'avvio.

    
posta Freshblood 12.10.2010 - 23:05
fonte

4 risposte

7

La cosa migliore è iniziare risolvendo i bug. Inizia con piccoli bug. Correggere il primo bug è un grande traguardo. Perché quando lo fai, sai già come modificare il codice controllato in versione, costruirlo, capire la funzionalità desiderata e testarlo. Conoscete anche le convenzioni utilizzate, le librerie disponibili, l'idioma / riff usati, le tecniche di debug, lo stile di codifica / le convenzioni del progetto, l'organizzazione generale del codice, il sistema di tracciamento dei bug usato ecc.

Non essere sopraffatto dalle dimensioni del progetto. Inizia piccolo. Inizia con bug facili. Idealmente il tuo mentore dovrebbe assegnare qualcosa di abbastanza semplice da farti familiarizzare con il tuo ambiente di sviluppo. Quindi passa a funzionalità di piccole dimensioni, in moduli con cui hai già familiarità. Quindi puoi passare a bachi più complessi o passare ai moduli adiacenti. Col tempo sarai in grado di pensare in parti più grandi del progetto e le dimensioni sembreranno improvvisamente più piccole.

    
risposta data 13.10.2010 - 00:02
fonte
1

Alcuni tatti che ho usato per immergermi in una base di codice esistente:

  • Leggi tutta la documentazione di alto livello che puoi trovare sul progetto e / o prova a ottenere una panoramica di come funzionano le cose da qualcun altro che lavora al progetto.
  • Traccia alcune chiamate di funzione attraverso il codice e guarda cosa succede. Prova a scegliere qualcosa che assomigli ad almeno alcuni sottosistemi principali.
  • Cerca di implementare alcune semplici funzionalità. Probabilmente ci vorrà un po 'di tempo a scavare nel codice, ma è un buon modo per iniziare a capire il codice.
  • Prova a schematizzare il sistema ad un livello superiore o ad un sottosistema importante ad un livello leggermente inferiore. Funzionerà un diagramma di classe uml-ish o un diagramma di sequenza. Il processo di lettura del codice base per costruire tali diagrammi può essere molto istruttivo.
risposta data 12.10.2010 - 23:27
fonte
-2

inizia molti percorsi:

  • dagli input: posiziona un utente / client avvia l'applicazione
  • sistema esterno: tabelle su database, altri progetti quello che stai imparando usa
  • diagram se possibile (che significa: se ne hai)
  • core business (chiedi cosa dovrebbe fare l'app)
risposta data 12.10.2010 - 23:45
fonte
-3

La mia chiave preferita quando lavoro con un progetto che ho avuto dall'inizio alla distribuzione o semplicemente guardando un esempio è F12. Nella maggior parte degli IDE di cui sono a conoscenza, traccia l'oggetto, il metodo o un altro bit di codice all'origine se è definito dall'utente. I file di lingua del sistema mostrano un'intestazione / un'interfaccia, a seconda della lingua con cui stai lavorando. Se i file sono organizzati bene, F12 ti mostrerà un ordine in base al quale i metodi viaggiano attraverso lo stack, il che aiuta in modo superbo con il debug.

    
risposta data 15.02.2015 - 09:21
fonte

Leggi altre domande sui tag