Estructura Del C Digo Fuente En C

Páginas: 22 (5491 palabras) Publicado: 15 de mayo de 2015
Estructura del código fuente en C++
18 de febrero de 2013 | 09:39 CET


Si bien un programa escrito en C++ se podría hacer en un único fichero de texto, cualquier proyecto serio requiere que el código fuente de un programa se divida en varios ficheros para que sea manejable, muchos principiantes no se dan cuenta de la importancia de esto, sobre todo porque mucho lo han intentado y les ha dadomás problemas que soluciones. En este artículo vamos a explicar como definir la estructura del código fuente en C++.
Archivos de cabecera y archivos fuentes
En C++ existen principalmente dos tipos de ficheros, los de cabecera (normalmente .h o .hpp) y los ficheros fuentes (normalmente con extensión .cpp). La diferencia entre ellos es puramente conceptual, ambos son ficheros de texto plano elcompilador no distingue entre uno y otro, esto lo hacemos los programadores.
¿Por qué dividir el código fuente?
Es la primera pregunta que se hacen los programadores principiantes, no entienden el sentido de tener un programa en varios archivos. Vamos a ver las ventajas de esto.
Compilación más eficiente. Si tu tienes un fichero fuente con 10.000 líneas de código y haces una pequeña modificación tendrásque recompilar las 10.000 líneas de código. Sin embargo, si tienes 10 ficheros de 1.000 líneas de código si haces una pequeña modificación en cualquiera de ellos solo deberás recompilar ese fichero ahorrando de recompilar 9.000 líneas de código fuente.
Organización. Imagina que estas creando un videojuego y tienes un solo archivo llamado juego.cpp con todas las clases, estructuras y variables,deberás buscar a lo largo de todo el archivo si decides que quieres modifica una parte. Ahora piensa que has dividido tu juego en los archivos main.cpp graficos.cpp audio.cpp y entrada.cpp si quieres modificar alo relacionado con los gráficos sabes que debes buscar en el fichero graficos.cpp reduciendo la búsqueda considerablemente.
Facilitar la reutilización. Imagina que estás trabajando confracciones en tu programa y decides crear una clase Fracción para el manejo de fracciones, la pruebas la testeas y compruebas que funciona. Si en el futuro desarrollas una aplicación que necesite el uso de fracciones solo deberás recuperar tu fichero .h y .cpp asociado a la clase fracción para implementar la funcionalidad en tu nuevo proyecto.
Compartir código en varios proyectos. Este punto es similaral anterior, pero hay veces en las que más de un proyecto utilizan el mismo código, sería genial incluir el mismo el ambos proyectos y si se modifica este código automáticamente se modifique en ambos proyectos (es la esencia de las bibliotecas).
Dividir tareas entre programadores. Si tenemos un equipo de programadores y queremos que trabajen a la vez en un mismo proyecto solo debemos asignar unfichero a cada uno y luego juntarlos, sin que se pisen unos a otros (Este es el principio de la Programación Orientada a Objetos y la división en clases independientes unas de otras).
Espero haberte convencido de lo necesario que es dividir el código fuente en varios archivos, si es así, sigue leyendo y te daré algunas pautas de como hacerlo.
Cómo dividir el código fuente de un programa C++
Lamayoría de las reglas a seguir son lógicas y un tanto arbitrarias, pero se presupone buen sentido al programador. Lo ideal es dividir por módulos según que hace que, si tienes un juego que tiene una clase encargada de la entrada de datos, otra de los gráficos y otra del audio lo lógico es hacer la división en estos módulos. Una buena idea es tener un par de ficheros por clase MiClase.h y MiClase.cpp
Aveces existe la problemática de no saber en que fichero o módulo meter una parte del código (Un ingeniero de software probablemente te diría que es porque lo has diseñado mal).
Una vez hecha la división lógica por funcionalidad queda ver que va en el archivo de cabecera y que en el archivo de código fuente. Lo que suele estar en la parte superior es un serio candidato a estar en el archivo de...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • C Digo
  • C Digos
  • Estructuras de datos en C/C++
  • Estructura en c++
  • Estructuras En C
  • Estructuras C#
  • Estructuras de C++
  • Estructuras en c++

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS