2010-09-05 22 views
9

Tengo un archivo principal grande que contiene aproximadamente 7.000 líneas de código C. Si deseo hacer este código modular y separar el código de este archivo. ¿Cuál es el criterio principal para separar las funciones del archivo y las funciones que deben permanecer en el archivo?Cómo organizar mi código c

+2

echa un vistazo a esta publicación, no sé si podría ayudar, creo que podría http://stackoverflow.com/questions/3615789/what-to-do-about-a-11000-lines- c-source-file/3617776 # 3617776 –

Respuesta

6
  • Siga las sugerencias anteriores.
  • Elimina cualquier código duplicado o casi duplicado creando funciones.
  • Organizar por funcionalidad y dependencia. Los módulos deben tener la menor interdependencia posible.
  • Siga SOLID Principles y otros patrones de diseño y prácticas (todos los cuales se pueden implementar en algún grado en C).

Me gusta usar una descomposición de arriba hacia abajo del código. Por ejemplo:

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

El main() debe ser corto y al grano y le dará una visión rápida de lo que hace el programa de un alto nivel. Cada una de estas funciones se puede desglosar de forma similar. Esto debería continuar hasta que las funciones de nivel más bajo tengan un único propósito enfocado (modularidad lógica). Estas funciones se pueden poner en archivos .c/.h adicionales para tener modularidad física.

¡Buena suerte!

6

Romper por funcionalidad/responsabilidad.

Por ejemplo, coloque todo el manejo de cadenas en un módulo/archivo, coloque el manejo de archivos en otro.

4

Es una medida simple: cuantas menos declaraciones tenga en el archivo .h, más modular será. Agrupar por funcionalidad es importante. Tener extern declaraciones es muy malo, darles una 'penalización' adicional.

Cuestiones relacionadas