Code::Blocks

De Wikipedia, la enciclopedia libre
Saltar a: navegación, búsqueda
Code::Blocks
CodeBlocks 8.02.png
Code::Blocks
Desarrollador
The Code::Blocks team
http://www.codeblocks.org
Información general
Última versión estable 13.12
27 de diciembre de 2013; hace 6 meses (2013-12-27)
Género IDE
Programado en C++
Sistema operativo Multiplataforma
Licencia GNU General Public License 3
Estado actual Activo
En español Sí 

Code::Blocks es un entorno de desarrollo integrado libre y multiplataforma para el desarrollo de programas en lenguaje C y C++. Está basado en la plataforma de interfaces gráficas WxWidgets, lo cual quiere decir que puede usarse libremente en diversos sistemas operativos, y está licenciado bajo la Licencia pública general de GNU.

Debido a que Dev-C++ es un IDE para los lenguajes C y C++ y está creado en Delphi, surgió la idea y necesidad de crear un IDE hecho en los lenguajes adecuados: C y C++. Con esta motivación se creó Code::Blocks.

Historia[editar]

Después de liberar dos versiones candidatas para versión final (release candidate), 1.0rc1 el 25 de julio de 2005 y 1.0rc2 el 25 de octubre de 2005, en vez de crear una versión final, los desarrolladores del proyecto decidieron no hacerlo, y comenzaron a añadir algunas características nuevas, con lo que la liberación de una versión final comenzó a ser repetidamente postpuesta. Por el contrario, se disponía frecuentemente (casi diariamente) de paquetes binarios de la última versión del repositorio SVN -llamadas "nightly builds"-, que los usuarios podían descargar y utilizar. Éstas normalmente recibían mejor soporte que la última versión oficial lanzada, la 1.0rc2. Mientras que este método proveía a los usuarios de las últimas mejoras del IDE y permitía a los desarrolladores obtener información constante del funcionamiento, se creó la falsa ilusión de que el proyecto estaba estancado (debido a que no salían nuevas versiones oficiales).

La primera versión estable fue finalmente liberada el 28 de febrero de 2008, con el número de versión 8.02. El esquema de numeración para la versión fue cambiado al mismo seguido por Ubuntu, donde el mayor número (el primero) representa el año y el menor representa el mes de la versión liberada.

El modelo de trabajo continúo siendo el mismo. En vez de crear dos ramas, una para la versión final, donde las correcciones de bugs se añadían y otra rama de desarrollo donde se incluían nuevas características; todas las nuevas características y correcciones de bugs son añadidas en el mismo espacio de código. En realidad los desarrolladores realizan las modificaciones cada uno en su propio entorno, y solo añaden modificaciones cuando están seguros de su buen funcionamiento. Esto hace que las versiones "nightly build" sean muy estables y usables.

Jennic Ltd distribuye una versión de Code::Blocks configurada para trabajar con sus microcontroladores.[1]

Características[editar]

Code::Blocks es un IDE construido como un núcleo altamente expansible mediante complementos (plugins). Actualmente la mayor parte de la funcionalidad viene provista por los complementos incluidos predeterminadamente. No es un IDE autónomo que acepta complementos, sino que es un núcleo abstracto donde los complementos se convierten en una parte vital del sistema. Esto lo convierte en una plataforma muy dinámica y potente, no solo por la facilidad con que puede incluirse nueva funcionalidad, sino por la capacidad de poder usarla para construir otras herramientas de desarrollo tan solo añadiendo complementos.

Edición visual[editar]

Codeblocks 13.12 incluye wxSmith un complemento que provee la funcionalidad para la creación y edición visual de una Interfaz gráfica de usuario la cual es una adaptación de wxWidgets basada en la versión 2.9.4.

Soporte de compiladores[editar]

Debido a que en sí Code::Blocks es sólo la interfaz del entorno de desarrollo, puede enlazarse a una variedad de compiladores para poder desarrollar su trabajo. Por defecto, Code::Blocks buscará una serie de compiladores y configurará los que halle.

Algunos de los compiladores compatibles:

  • Microsoft Visual Studio Toolkit (una extensión de compilador de C++ de Microsoft)
  • GCC, en sus versiones para Microsoft (ya sea MinGW o Cygwin) y GNU/Linux.
  • Borland C++ Compiler
  • Digital Mars Compiler
  • Intel C++ Compiler
  • Open Watcom
  • LLVM Clang

Todos estos compiladores pueden ser detectados automáticamente si están ya instalados al iniciar Code::Blocks.

Aunque no es oficialmente compatible (producto de su bajo nivel de adhesión a la norma de C++), Microsoft Visual Studio 6 puede ser configurado y utilizado, aunque no con muy buenos resultados.

También es posible añadir compatibilidad con otros compiladores.

Características del entorno[editar]

Entorno principal de Code::Blocks en GNU/Linux.

Entre otras, Code::Blocks soporta varias de las características ya consideradas "clásicas" y que sirven de apoyo a la programación:

  • Espacios de trabajo (workspaces) para combinar múltiples proyectos.
  • Espacio de trabajo adaptable (cambia según la tarea que se esté realizando o como se configure).
  • Navegador de proyectos; vista de archivos, símbolos (heredados, etc.), clases, recursos.
  • Editor tabulado, múltiples archivos.
  • Intercambio rápido .h/.cpp.
  • Lista de tareas (ToDo).

Características de edición[editar]

  • Coloreo de sintaxis configurable.
  • Tabulación inteligente de código.
  • Autocódigo (generar plantillas de código para proyectos).
  • Autocompletado de código.
    • Lista desplegable.
    • Vista de argumentos de una función.
    • Selección múltiple de funciones sobrecargadas.
  • Generación de clases (class wizard).
  • Búsquedas avanzadas de cadenas dentro de archivos: actual, abiertos, proyecto, workspace, en carpetas).

Características de compilación[editar]

  • Sistema de construcción (build) rápido (sin necesidad de makefiles).
  • Soporte para compilación en paralelo (usando múltiples procesadores/núcleos).
  • Dependencias entre proyectos dentro del espacio de trabajo.
  • Proyectos con múltiples objetivos (multi-target).
  • Estadísticas y resumen de código (code profiler).

Características de depuración[editar]

Entorno de depuración de Code::Blocks en Windows.
  • Interfaz con GNU GDB.
  • Soporta MS CDB (no completamente).
  • Puntos de ruptura (breakpoints).
    • Código, datos.
    • Ruptura condicional.
  • Funciones locales (argumentos).
  • Ver valores de variables (también definidas por el usuario).
  • Pila de llamadas.
  • Desensamblado de código.
  • Volcados de memoria.
  • Múltiples hilos (threads).
  • Registros de la CPU.

Compatibilidad con bibliotecas[editar]

Code::Blocks trae integradas plantillas para generar varias clases de programas, ya sea la clásica aplicación de consola, bibliotecas estáticas o dinámicas, o proyectos completos enlazados con populares bibliotecas como OpenGL y SDL; sin embargo, Code::Blocks integra sólo las plantillas, las bibliotecas deben instalarse por separado.

Más características[editar]

Otras características de Code::Blocks:

Referencias[editar]

Enlaces externos[editar]