2010-09-05 19 views
9

Ho un grosso file principale contenente circa 7000 righe di codice C. Se voglio rendere modulare questo codice e separare il codice da questo file. qual è il criterio principale per separare le funzioni dal file e le funzioni che dovrebbero rimanere nel file.Come organizzare il mio codice c

+2

controlla questo post, non so se potrebbe essere d'aiuto, penso che potrebbe http://stackoverflow.com/questions/3615789/what-to-do-about-a-11000-lines- c-source-file/3617776 # 3617776 –

risposta

6
  • Seguire i suggerimenti precedenti.
  • Elimina qualsiasi codice duplicato o quasi duplicato creando funzioni.
  • Organizza per funzionalità e dipendenza. I moduli dovrebbero avere la minore interdipendenza possibile.
  • Seguire SOLID Principles e altri modelli e pratiche di progettazione (tutti possono essere implementati in una certa misura in C).

Mi piace utilizzare una scomposizione top-down del codice. Per esempio:

main() 
{ 
    Initialize(); 
    Introduce(); 
    while (some_condition) 
    { 
     DoSomething(); 
     DoSomethingElse(); 
    } 
    SayGoodbye(); 
    Shutdown(); 
} 

Il main() dovrebbe essere breve e al punto e dare una rapida panoramica di ciò che il programma fa da un alto livello. Ognuna di queste funzioni può essere suddivisa in modo simile. Questo dovrebbe continuare fino a quando le funzioni di livello più basso avranno un unico scopo focalizzato (modularità logica). Queste funzioni possono essere inserite in file .c/.h aggiuntivi per avere modularità fisica.

Buona fortuna!

6

Smembramento per funzionalità/responsabilità.

Ad esempio, posizionare tutta la gestione delle stringhe in un modulo/file, posizionare la gestione dei file in un altro.

4

È una semplice misura: meno dichiarazioni si hanno nel file .h, più è modulare. Il raggruppamento per funzionalità è importante. Avere le dichiarazioni extern è pessimo, dare loro una "penalità" in più.

Problemi correlati