Documentos de Académico
Documentos de Profesional
Documentos de Cultura
C++Builder
C++Builder es un entorno de desarrollo rpido de aplicaciones en lenguaje C++ para
Windows inicialmente propiedad de la empresa Borland, y actualmente de la empresa
Embarcadero Technologies, quien compr de Borland la divisin Codegear encargada del
producto. Codegear inicialmente se denominaba DTG='Developer Tools Group' hasta que
adquiri el nombre oficial CodeGear previo a la venta.
C++Builder combina la biblioteca Visual Component Library y el IDE escrito en Delphi con
un compilador de C++. El ciclo de lanzamiento es anual. Incluye herramientas que permiten
desarrollo visual de arrastrar-y-soltar componentes sobre la aplicacin e incorpora
constructor de interfaz grfica WYSIWYG en su IDE.
Historia.
Lanzado en 1997, despus de Delphi, y con un entorno similar a ste. Muchos componentes
de Delphi pueden utilizarse en C++. En 1999 Borland anunci la versin 4.0; poco tiempo
despus anunci que Borland C++ sera discontinuado en favor del C++Builder.
En 2000 sali publicada la versin 5.0 y en 2002 la versin 6.0. Para aquella poca las
versiones de C++Builder salan un ao o un poco ms de su contraparte Delphi.
En 2003 Borland publica C++BuilderX (CBX), que usaba el entorno de desarrollo (Galileo)
de un producto hermano: JBuilder y tena poca similitud con C++Builder o Delphi, pues
propona como framework a wxWindows (en lugar de OWL, OWLNext o VCL). Este
producto estaba dirigido a grandes organizaciones y no tuvo mucha aceptacin. Al final del
2004 Borland anuncio que continuara desarrollando el C++Builder e incluirlo junto con la
suite de desarrollo de Delphi development suite, abandonando el C++BuilderX.
Cerca de un ao despus del anuncio Borland publico 'Borland Developer Studio 2006' que
inclua el Borland C++Builder 2006 que provea un administrador de configuracin mejorado
y varias correcciones. Borland Developer Studio 2006 es un paquete que incluida Delphi,
C++Builder, y C#Builder.
En 2006 Borland's Developer Tools Group, la divisin encargada del C++Builder, fue
transformada en una organizacin independiente (subsidiaria) denominada CodeGear.
En 2007 Borland publico C++Builder 2007, proveyendo completo soporte para la API de
Microsoft Vista, soporte mejorado a ANSI C++, y hasta 500% mejor rendimiento en el
proceso de compilacin desde el IDE, soporte para MSBuild, arquitectura de base de datos
DBX4, "VCL for the Web" que permite el desarrollo visual de aplicaciones AJAX, y la
biblioteca OWLNext. El soporte de la API de Microsoft Vista incluye aplicaciones 'temadas'
y soporte a la interfaz Aero y Vista Desktop. CodeGear RAD Studio 2007 incorporo
C++Builder 2007 y Delphi. Tambin en 2007 Borland revivi la lnea "Turbo" y lanzo dos
ediciones "Turbo" de C++Builder: Turbo C++ Professional, y Turbo C++ Explorer (no
disponible actualmente de CodeGear), basado en Borland C++Builder 2006.
En 2008 CodeGear fue adquirida por Embarcadero Technologies, quien continuo el
desarrollo. C++Builder 2009 fue publicado en agosto del 2008, las caractersticas agregadas
ms importantes fueron el soporte completo a Unicode tanto en la VCL como en la RTL,
adopcin anticipada del standard C++0x, soporte al ITE (Entorno de Traduccin Integrado),
componentes Ribbon y la inclusin de la biblioteca Boost.
C++Builder 2010 fue publicado en agosto del 2009, fue el primer entorno de desarrollo que
incluy soporte a Windows 7, permitiendo desarrollar aplicaciones que soportan la interfaz
'Multitouch'. CodeGear ha anunciado sus planes de desarrollo que incluiran soporte a OSX
y Linux.
BlueJ
BlueJ es un entorno integrado de desarrollo (de sus siglas en ingls IDE - Integrated
Development Environment) para el lenguaje de programacin Java, desarrollado
principalmente con propsitos educacionales, pero tambin es adecuado para el desarrollo de
software a pequea escala.
BlueJ fue desarrollado para apoyar la enseanza y el aprendizaje de la programacin
orientada a objetos, y como resultado, su diseo difiere de otros entornos de desarrollo.2 La
pantalla principal muestra grficamente la estructura de clases de una aplicacin en desarrollo
(en un diagrama muy parecido a UML), y los objetos pueden ser creados y probados
interactivamente. Combinado con una interfaz de usuario simple, esta facilidad de
interaccin permite experimentar de manera fcil con los objetos en desarrollo. Los
conceptos de la orientacin a objetos (clases, objetos, comunicacin a travs de llamadas a
mtodos) son representadas visualmente en el diseo de interaccin en la interfaz.
Caractersticas.
Las caractersticas de BlueJ difieren de las de otros entornos, bien por su ausencia, bien por
su presencia imprevista. Sus principales caractersticas son:
Las funciones de interaccin visual de BlueJ estn diseadas para permitir a uno retrasar la
introduccin de ciertos conceptos programticos considerados complicados o dificultosos
por los educadores. Esto incluye:
Sintaxis tal como public static void main(String[] args) que requiere introducir
innecesariamente las palabras clave public y static, as como argumentos de mtodo
y arrays. BlueJ permite a las clases arbitrarias ser instanciadas y a los mtodos
arbitrarios ser invocados interactivamente.
Input/output del programa. En BlueJ tanto los valores del parmetro como los valores
de retorno desde llamadas del mtodo se pueden introducir e inspeccionar
directamente, as que los estudiantes no tiene que luchar con terminales I/O o escribir
interfaces grficas de usuario uando an estn aprendiendo los conceptos bsicos de
la programacin informtica.
GCC
El GNU Compiler Collection (coleccin de compiladores GNU) es un conjunto de
compiladores creados por el proyecto GNU. GCC es software libre y lo distribuye la Free
Software Foundation (FSF) bajo la licencia general pblica GPL.
Estos compiladores se consideran estndar para los sistemas operativos derivados de UNIX,
de cdigo abierto y tambin de propietarios, como Mac OS X. GCC requiere el conjunto de
aplicaciones conocido como binutils para realizar tareas como identificar archivos objeto u
obtener su tamao para copiarlos, traducirlos o crear listas, enlazarlos, o quitarles smbolos
innecesarios.
Originalmente GCC significaba GNU C Compiler (compilador GNU de C), porque slo
compilaba el lenguaje C. Posteriormente se extendi para compilar C++, Fortran, Ada y
otros.
Historia.
Richard Stallman comenz a escribir GCC en 1985. Aadi elementos extendiendo un
compilador preexistente de C. El compilador originalmente compilaba Pastel, un dialecto
extendido, no portable de Pascal, y estaba escrito en el propio Pastel. Fue reescrito en C por
Len Tower y Stallman,2 y publicado en 19873 como el compilador del Proyecto GNU, para
tener un compilador disponible que fuera software libre. Su desarrollo fue supervisado por la
Free Software Foundation (FSF).4
En 1991, GCC 1.x haba logrado un punto de estabilidad, pero limitaciones en la arquitectura
impedan muchas mejoras deseadas, as que la FSF empez a trabajar en GCC 2.x.
Como GCC era software libre, haba programadores que queran trabajar en otras
direcciones, por ejemplo, escribiendo interfaces para otros lenguajes distintos de C, stos
fueron libres de desarrollar sus propios forks del compilador. Mltiples bifurcaciones trajeron
ineficiencia e inmanejabilidad, sin embargo, la dificultad de producir cdigo que fuera
aceptado por el proyecto oficial de GCC era altamente frustrante para muchos puesto que la
FSF guardaba un frreo control en qu era aadido a la versin oficial de GCC 2.x. Esto hizo
que GCC fuera citado como ejemplo del modelo de desarrollo "catedral" de software
mencionado en el ensayo de Eric S. Raymond titulado La catedral y el bazar.
Desde la publicacin de la versin 4.4. de BSD en 1994, GCC se convirti en el compilador
por defecto de los sistemas BSD.
Lenguajes.
En su versin 4.6 incluye front ends para C (gcc), C++ (g++), Java (gcj), Ada (GNAT),
Objective-C (gobjc), Objective-C++ (gobjc++) y Fortran (gfortran).5 Tambin esta
disponible, aunque no de forma estndar, soporte para Go (gccgo), Modula-2, Modula-3,
Pascal (gpc), PL/I, D (gdc), Mercury, y VHDL
Compiladores
Un compilador es un programa informtico que traduce un programa escrito en un lenguaje
de programacin a otro lenguaje de programacin.1 Usualmente el segundo lenguaje es
lenguaje de mquina, pero tambin puede ser un cdigo intermedio (bytecode), o
simplemente texto. Este proceso de traduccin se conoce como compilacin.
La construccin de un compilador involucra la divisin del proceso en una serie de fases que
variar con su complejidad. Generalmente estas fases se agrupan en dos tareas: el anlisis del
programa fuente y la sntesis del programa objeto.
Alternativamente, las fases descritas para las tareas de anlisis y sntesis se pueden agrupar
en Front-end y Back-end:
Historia.
En 1946 se desarroll la primera computadora digital. En un principio, estas mquinas
ejecutaban instrucciones consistentes en cdigos numricos que sealaban a los circuitos de
la mquina los estados correspondientes a cada operacin, lo que se denomin lenguaje
mquina.
Pronto los primeros usuarios de estos ordenadores descubrieron la ventaja de escribir sus
programas mediante claves ms fciles de recordar que esos cdigos; al final, todas esas
claves juntas se traducan manualmente a lenguaje mquina. Estas claves constituyen los
llamados lenguajes ensambladores.
Pese a todo, el lenguaje ensamblador segua siendo el de una mquina, pero ms fcil de
manejar. Los trabajos de investigacin se orientaron hacia la creacin de un lenguaje que
expresara las distintas acciones a realizar de una manera lo ms sencilla posible para una
persona. El primer compilador fue escrito por Grace Hopper, en 1952 para el lenguaje de
programacin A-0. En 1950 John Backus dirigi una investigacin en IBM sobre un lenguaje
algebraico. En 1954 se empez a desarrollar un lenguaje que permita escribir frmulas
matemticas de manera traducible por un ordenador; le llamaron FORTRAN (FORmulae
TRANslator). Fue el primer lenguaje de alto nivel y se introdujo en 1957 para el uso de la
computadora IBM modelo 704.
Surgi as por primera vez el concepto de un traductor como un programa que traduca un
lenguaje a otro lenguaje. En el caso particular de que el lenguaje a traducir es un lenguaje de
alto nivel y el lenguaje traducido de bajo nivel, se emplea el trmino compilador.
La tarea de realizar un compilador no fue fcil. El primer compilador de FORTRAN tard
18 aos-persona en realizarse y era muy sencillo. Este desarrollo de FORTRAN estaba muy
influenciado por la mquina objeto en la que iba a ser implementado. Como un ejemplo de
ello tenemos el hecho de que los espacios en blanco fuesen ignorados, debido a que el
perifrico que se utilizaba como entrada de programas (una lectora de tarjetas perforadas) no
contaba correctamente los espacios en blanco.
Tipos de compiladores
Esta taxonoma de los tipos de compiladores no es excluyente, por lo que puede haber
compiladores que se adscriban a varias categoras:
Compiladores cruzados: generan cdigo para un sistema distinto del que estn
funcionando.
Compiladores optimizadores: realizan cambios en el cdigo para mejorar su
eficiencia, pero manteniendo la funcionalidad del programa original.
Compiladores de una sola pasada: generan el cdigo mquina a partir de una nica
lectura del cdigo fuente.
Compiladores de varias pasadas: necesitan leer el cdigo fuente varias veces antes de
poder producir el cdigo mquina.
Compiladores JIT (Just In Time): forman parte de un intrprete y compilan partes del
cdigo segn se necesitan.