COMPETENCIAS
- Al final de esta sesión, el alumno/a debería haber adquirido las siguientes competencias:
- Saber usar el entorno de desarrollo Code::Blocks y familiarizarse con las acciones básicas del mismo.
- Edición, compilación, ejecución y depuración de programas.
- Construir programas que permitan la interacción con el usuario/a mediante la entrada y salida de texto.
¿Qué es
Code::Blocks?
Es un entorno de desarrollo integrado libre y multiplataforma para el
desarrollo de programas en lenguaje C y C++.
¿En que se basa
Code::Blocks?
Está basado en la plataforma de interfaces gráficas WxWidgets, lo cual quiere
decir que puede usarse libremente en diversos sistemas operativos.
¿Cuál es la
licencia de Code::Blocks?
Está licenciado bajo la Licencia pública general de GNU.
¿Qué es GNU?
Es
un proyecto que fue iniciado por Richard
Stallman con el objetivo de crear un sistema
operativo completamente libre.
El
sistema GNU fue diseñado para ser totalmente compatible con UNIX (Sistema operativo
comercial).
Para
asegurar que el software GNU permaneciera libre para que todos los usuarios
pudieran "ejecutarlo, copiarlo, modificarlo y distribuirlo", el
proyecto debía ser liberado bajo una licencia diseñada para garantizar esos
derechos al tiempo que evitase restricciones posteriores de los mismos. La idea
se conoce en Inglés como copyleft (lo
cual significa que el autor permite la distribución libre del mismo, en clara
oposición acopyright o
"derecho de autor"), y está contenida en la Licencia General Pública de GNU (GPL).
¿Bajo que motivación se
creó Code::Blocks?
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++.
¿Qué significa IDE?
Un entorno
de desarrollo integrado, llamado también IDE (sigla en inglés
de integrated development environment), es un programa informático compuesto por un
conjunto de herramientas de programación.
Puede dedicarse en exclusiva a un solo lenguaje de programación o bien puede
utilizarse para varios.
Un
IDE es un entorno de programación que ha sido empaquetado como un programa de
aplicación; es decir, consiste en un editor de código, un compilador, un
depurador y un constructor de interfaz gráfica (GUI). Los IDEs
pueden ser aplicaciones por sí solas o pueden ser parte de aplicaciones
existentes.
Los
IDE proveen un marco de trabajo amigable para la mayoría de los lenguajes de
programación tales como C++, PHP, Python, Java,C#, Delphi, Visual Basic,
etc. En algunos lenguajes, un IDE puede funcionar como un sistema en tiempo de ejecución,
en donde se permite utilizar el lenguaje de programación en forma interactiva,
sin necesidad de trabajo orientado a archivos de
texto, como es el caso de Smalltalk u Objective-C.
¿Cuáles son las
características principales de Code::Blocks?
- 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.
Entre otras están:
- Importación de proyectos Visual C++ y Dev-C++.
- Soporte para packs del Dev-C++.
- Inclusión y generación de plug-ins.
- Generación de XML para proyectos.
- Exportación a formatos XML, RTF y de OpenOffice.org
¿A le llamamos Plugins?
Un
Plugin es un programa que puede anexarse a otro para aumentar
sus funcionalidades (generalmente
sin afectar otras funciones ni afectar la aplicación principal). No se trata de
un parche
ni de una actualización, es un módulo aparte que se incluye opcionalmente en
una aplicación.)
Por ejemplo si el plugin es para un navegador de internet, este hara que tu navegador pueda desplegar diferentes tipos de contenido web como animaciones, graficos o reproducir archivos multimedia.
Si es para un reproductor de música o videos, el plugin hace que el reproductor reconozca mas formatos y pueda reproducirlos sin problemas.
No hay riesgo siempre y cuando lo descargues de un
link confiable, si es programa mismo te lo proporciona mejor.Por ejemplo si el plugin es para un navegador de internet, este hara que tu navegador pueda desplegar diferentes tipos de contenido web como animaciones, graficos o reproducir archivos multimedia.
Si es para un reproductor de música o videos, el plugin hace que el reproductor reconozca mas formatos y pueda reproducirlos sin problemas.
¿Cuáles son los
compiladores compatibles con Code::Blocks?
- 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
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
¿Cuáles son las
características del entorno de Code:Blocks?
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)
¿Cuáles son sus
características de compilación?
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).
¿Cuál es la
compatibilidad de Code::Blocks con bibliotecas?
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.
COMENTA:
- ¿CUALES SON LAS PRINCIPALES CARACTERISTICAS DE CODEBOCKS?
- ¿QUE DIFERENCIA HAY ENTRE COMPILAR Y EJECUTAR UN PROGRAMA?
- ¿CUAL ES LA GRAN VENTAJA QUE NOS BRINDA GNU?

