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
risposta
- 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!
Smembramento per funzionalità/responsabilità.
Ad esempio, posizionare tutta la gestione delle stringhe in un modulo/file, posizionare la gestione dei file in un altro.
È 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ù.
- 1. Come organizzare il mio codice Python in più classi?
- 2. Come organizzare il codice GUI (per PyQt)?
- 3. Come posso organizzare tutto il mio codice, dati, script, attività, ecc?
- 4. Come organizzare un progetto C++
- 5. C# che organizza il mio codice
- 6. Come organizzare il codice JavaScript nelle applicazioni ASP.NET MVC
- 7. Come organizzare il codice sorgente Android in cartelle
- 8. come organizzare il codice dardo all'interno della cartella web
- 9. come organizzare il codice simile a # region/# endregion in .NET?
- 10. Come organizzare il codice JavaScript nel progetto per la manutenzione?
- 11. Come rendere veloce il mio codice
- 12. Come si può organizzare il codice F # in modo simile alle regioni C#?
- 13. È un modo intelligente per organizzare il codice in jQuery?
- 14. come semplificare il mio codice usando jquery?
- 15. Come strutturare il mio codice javascript/jquery?
- 16. Come aggregare PHPUnit con il mio codice?
- 17. Come dovrei organizzare il controllo del codice sorgente per i progetti Android comprese le librerie?
- 18. Errore NUnit che esegue il mio codice C# Selenium WebDriver
- 19. Console.WriteLine velocizza il mio codice?
- 20. Come organizzare logicamente i file sorgente in C++
- 21. Come organizzare i file del codice sorgente Python?
- 22. Come posso organizzare il codebase del mio progetto che si rivolge a più versioni di libreria
- 23. Come posso ottenere Emacs per indentare il mio // commenti con il mio codice?
- 24. Come restituire una stringa nel mio codice C?
- 25. Quando il compilatore ottimizza il mio codice
- 26. Come posso assicurarmi che tutto il mio codice Python "compili"?
- 27. Come utilizzare il codice C in C++
- 28. Come scrivere il mio wrapper in C#?
- 29. Come organizzare rapidamente le funzioni nel codice sorgente (C#) per ordinare in ordine alfabetico?
- 30. Come organizzare grandi app lucide?
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 –