SlideShare una empresa de Scribd logo
Instituto Tecnológico de Tijuana

Fundamentos de programación

{

Integrantes:
-PERLA MARIA SILVA DURÓN
-DIEMA NOHEMI CUESTA RAMOS
-ANA LUISA RIVAS
-ITAMAR ALVARADO
-CARLOS RAUL RIOS NIEBLA
Historia del C++
La historia del lenguaje C parte de un lenguaje anterior
conocido como lenguaje B, creado por Ken Thompson. A
su vez B fue inspirado en el lenguaje BCPL de Martin
Richard, quien lo diseño tres años antes. En 1972 Dennis
Ritchie (de laboratorios Bell de AT&T) diseña el lenguaje
C a partir del B de Thompson, el cual aportaba un diseño
de tipos y estructuras de datos con una claridad y
eficacia superior.
“Es un lenguaje que permite realizar una programación
estructurada economizando las expresiones, con
abundancia de operadores y tipos de datos (aunque los
básicos sean pocos), codificando en alto y bajo nivel
simultáneamente, reemplazando ventajosamente la
programación en ensamblador y permitiendo una
utilización natural de las funciones primitivas del sistema.
Además, no está orientado a ningún área en especial y
sobre todo consigue un código objeto altamente optimizado
que repercute en que los programas son muy rápidos.”
Durante muchos años este lenguaje no estuvo
estandarizado, hasta que en 1983 se forma un
comité que crea el estándar ANASI (Instituto
Nacional Americano de Estándares), este
proceso dura seis años, hasta que es reconocido
por ISO (Organización Internacional de
Estándares) y comienza a comercializarse.
/* "Hola mundo" escrito en C */
#include <stdio.h>
void main()
{
printf( "Hola mundo" );
}

A su vez, en 1980 surge C++ Bjarne Stroustrup
(también de Laboratorios Bell de AT&T). El
nombre C++ fue propuesto por Rick Mascitti en el año
1983, cuando el lenguaje fue utilizado por primera vez
fuera de un laboratorio científico. Antes se había
usado el nombre "C con clases".
El siguiente hecho fundamental en la evolución de C++ es
sin duda la incorporación de la librería STL años más
tarde, obra de Alexander Stepanov y Adrew Koening.
Esta librería de clases con contenedores y algoritmos
genéricos proporciona a C++ una potencia única entre los
lenguajes de alto nivel.
Debido al éxito del lenguaje, en 1990 se reúnen las
organizaciones ANSI e ISO para definir un estándar que
formalice el lenguaje. El proceso culmina en 1998 con la
aprobación del ANSI C++.
/* "Hola mundo" escrito en C++ */
#include <iostream>
void main()
{
std::cout << "Hola mundo";
}
La última variante que ha surgido de C es el moderno C#. En
el año 2000, Microsoft presenta su plataforma .NET junto con
un nuevo lenguaje, C# (diseñado por Anders Hejlsberg), que
servirá de lenguaje principal de la plataforma. C# es un
híbrido de C++ y Java que fusiona, principalmente, la
capacidad de combinar operadores propia del primero (no
incorpora la herencia múltiple) con la plena orientación a
objetos del segundo. La orientación a objetos es tal que el
propio programa está encapsulado en una clase. Actualmente
C# se encuentra entre los 10 lenguajes más utilizados. A pesar
de su corta historia, ha recibido la aprobación del estándar de
dos organizaciones: en el 2001 se aprueba el ECMA y en el
2003 el ISO.
/* "Hola mundo" escrito en C# */
class HolaMundo
{
static void Main()
{
System.Console.Write( "Hola mundo" );
}
}
Borland International es el productor del Turbo C++ y del
Borland C++. Todos los productos del lenguaje C++ de Borland,
comenzando con la versión 3.0 con compatibles con el estándar
3.0 de AT&T. Ser compatible con la versión 3.0 de AT&T es la
prueba que determina si un compilador es lo suficientemente
moderno como para ser usado como un compilador serio de C++.
Si no usa alguno de los compiladores de C++ de Borland, tal vez
esté satisfecho con el suyo si se apega al estándar 3.0 de AT&T.
Comenzando con la versión 8.0, el compilador de C++ de
Microsoft se apega al de AT&T, con la salvedad de que al
compilador de Microsoft todavía le falta la característica
de plantilla.
Se considera que las plantillas son vitales para la
productividad de un programador formal de C++.
Aunque las plantillas son importantes, si se llega a usar
un compilador que no las acepte, pero que soporta
todos los demás aspectos del estándar 3.0 de AT&T,
puede quedar satisfecho con ese compilador.

A través de los años, AT&T ha aprobado muchas
características del C++ que no son OOP pero que hacen
al C++ mejor que el C. Tantas mejoras han sido
añadidas al C++ que el comité ANSI ha tomado varios
elementos del C++ para el lenguaje C. Por ejemplo, los
prototipos de función no se iniciaron en el C, aunque
han sido parte del lenguaje C desde hace varios años.
Los prototipos de función se iniciaron el C++, y, debido
a que contribuyen a hacer mejores programas, ANSI
incluyó la característica en el lenguaje C.
Características del lenguaje C++
Las principales características del Lenguaje C son:
1.-Tiene un conjunto completo de instrucciones de
control.
2.-Permite la agrupación de instrucciones.
3.-Incluye el concepto de puntero (variable que contiene
la dirección de otra variable).
Algunas de las características más importantes que
definen el lenguaje y que han permitido que sea tan
popular, como lenguaje de programación son:

Tamaño pequeño.
Uso extensivo de llamadas a funciones.
Comandos breves (poco tecleo).
Lenguaje estructurado.
Programación de bajo nivel (nivel bit)
Implementación de apuntadores - uso extensivo de
apuntadores para la memoria, arreglos, estructuras y
funciones
Las diversas razones por la cual se ha convertido
en un lenguaje de uso profesional son:
El uso de constructores de alto nivel.
El poder manejar actividades de bajo-nivel.
El generar programas eficientes.
La posibilidad de poder ser compilado en una variedad de
computadoras, con pocos cambios (portabilidad).
Un punto en contra es que tiene una detección pobre de
errores, lo cual en ocasiones es problemático para los
principiantes.
Historia de JAVA
Java es un lenguaje de programación orientado a objetos
desarrollado por Sun Microsystems a principio de los años 90´s.
En Diciembre de 1950 Patrick Naughton, ingeniero de Sun
Microsystems, reclutó a varios colegas entre ellos James Gosling y
Mike Sheridan para trabajar sobre un nuevo proyecto conocido
como "El proyecto verde".
Con la ayuda de otros ingenieros, empezaron a trabajar en una
pequeña oficina en Sand Hill Road en Menlo Park, California. Y así
interrumpió todas las comunicaciones regulares con Sun y trabajó
sin descanso durante 18 meses.
Intentaban desarrollar una nueva tecnología para
programar la siguiente generación de dispositivos
inteligentes, en los que Sun veía un campo nuevo a
explorar. Crear un lenguaje de programación fácil de
aprender y de usar.
En un principio se consideraba C++ como lenguaje a
utilizar, pero tanto Gosling como Bill Joy lo encontraron
inadecuado. Gosling intentó primero extender y
modificar C++ resultando el lenguaje C++ ++ - (++ porque se añadían y eliminaban características a C++),
pero lo abandonó para crear un nuevo lenguaje desde
cero al que llamo Oak (roble en inglés, según la versión
mas aceptada, por el roble que veía através de la ventana
de su despacho).
El resultado fue un lenguaje que tenía
similitudes con C, C++ y Objetive C y que
no estaba ligado a un tipo de CPU
concreta.
Mas tarde, se cambiaría el nombre de Oak
a Java, por cuestiones de propiedad
intelectural, al existir ya un lenguaje con el
nombre de Oak. Se supone que le pusieron
ese nombre mientras tomaban café (Java es
nombre de un tipo de café, originario de
Asia), aunque otros afirman que el nombre
deriva de las siglas de James Gosling, Arthur
Van Hoff, y Andy Bechtolsheim.
En Agosto de 1991 Oak ya corría sus
primeros programas.
Para 1992, el equipo ya había desarrollado un sistema en un
prototipo llamado Star7 (*7), dispositivo parecido a una PDA,
cuyo nombre venía de la combinación de teclas del teléfono de la
oficina del Proyecto Green que permitía a los usuarios responder al
teléfono desde cualquier lugar.
Por su parte, el presidente de la compañía Sun, Scott McNealy, se
dio cuenta de forma oportuna y estableció el Proyecto Verde como
una subsidiaria de Sun.
Después de mostrar a Scott McNealy y Bill Joy los prototipos de
bajo nivel del sistema, continuán con el desarrollo, incluyendo
sistema operativo, Green OS; el lenguaje Oak, las librerías, alguna
aplicación básica y el hardware, hasta que el 3 de septiembre de
1992 se termina el desarrollo y con ello elProyecto Verde.
Hoy en día, puede encontrar la tecnología Java en
redes y dispositivos que comprenden desde Internet
y superordenadores cientifícos hasta portátiles y
teléfonos móviles; desde simuladores de mercado en
Wall Street hasta juegos de uso doméstico y tarjetas
de crédito: Java está en todas partes.
JAVA
• Su sintaxis deriva en gran
medida de C y C++.
• Tiene menos facilidades de bajo
nivel.
• Sus aplicaciones se compilan
por lo general a bytecode (clase
java).
• Se puede ejecutar en cualquier
máquina virtual java.
• Es de propósito general.
• Es orientado por objetos.
• Es base en clases.
• Esta diseñado para tener pocas
dependencias de
implementación.
• Su intención es WORA (write
once, run anywhere)
• Se usa particularmente para
aplicaciones de cliente-servidor.

C++
• Permite la manipulación de
objetos `orientado a objetos .
• Es un lenguaje híbrid
(programación estructurada y
orientación a objetos).
• Multiparadigma.
• Redefine los operadores, y
puede crear nuevos que se
compartan como tipos
fundamentales.
Desde sus inicios la computadora se ha manejado por un
lenguaje binario, este lenguaje al ser tan complejo no es fácil en
su manejo, por tal motivo los programadores se ven en la
necesidad de crear un lenguaje de programación más sencillo, ya
que al incrementar la complejidad de las necesidades en los
sistemas informáticos buscaron alternativas para simplificar los
lenguajes de programación, es así como se crean C++ y Java. Los
lenguajes de programación se dividen en nivel alto y bajo es
decir entre mas se asemeja al lenguaje de la computadora será
nivel bajo, mientras que si se asemeja más al lenguaje humano su
nivel será alto ya que es relativamente sencillo programar.
Depende de los objetivos del programa, el programador decide
cual sera el mas conveniente.

Conclusión


Bibliografía:

http://jorgesaavedra.wordpress.com/2006/12/09/breve-historia-dec-c-c/
http://lalmada.mayo.uson.mx/cpp/La_historia_del_C++.htm
http://www.cad.com.mx/historia_del_lenguaje_java.htm
http://eradelabiomedica.blogspot.mx/
http://elmundodelabiomedica.blogspot.mx/

Más contenido relacionado

La actualidad más candente

Estilos de programación y sus lenguajes
Estilos de programación y sus lenguajesEstilos de programación y sus lenguajes
Estilos de programación y sus lenguajes
Pedro Contreras Flores
 
Paradigmas de programación
Paradigmas de programaciónParadigmas de programación
Paradigmas de programación
Alvaro Enrique Ruano
 
Actividad 4 cuadro comparativo sobre lenguajes de programacion
Actividad 4 cuadro comparativo sobre lenguajes de programacionActividad 4 cuadro comparativo sobre lenguajes de programacion
Actividad 4 cuadro comparativo sobre lenguajes de programacion
Juan Antonio Plascencia Zepeda
 
Fundamentos de Programación
Fundamentos de ProgramaciónFundamentos de Programación
Fundamentos de Programación
Kudos S.A.S
 
Herramientas de desarrollo para dispositivos móviles
Herramientas de desarrollo para dispositivos móvilesHerramientas de desarrollo para dispositivos móviles
Herramientas de desarrollo para dispositivos móviles
Fernand Bernowly
 
Clasificación de los Lenguajes de Programación
Clasificación de los Lenguajes de ProgramaciónClasificación de los Lenguajes de Programación
Clasificación de los Lenguajes de Programación
Eriick Leon
 
Diapositivas fundamentos-de-programacion
Diapositivas fundamentos-de-programacionDiapositivas fundamentos-de-programacion
Diapositivas fundamentos-de-programacion
guillermo martin del campo
 
TIPOS DE LENGUAJES DE PROGRAMACION
TIPOS DE LENGUAJES DE PROGRAMACIONTIPOS DE LENGUAJES DE PROGRAMACION
TIPOS DE LENGUAJES DE PROGRAMACION
PEDRO Borja
 
Fundamentos de Programación - Unidad V: Modularidad
Fundamentos de Programación - Unidad V: ModularidadFundamentos de Programación - Unidad V: Modularidad
Fundamentos de Programación - Unidad V: Modularidad
José Antonio Sandoval Acosta
 
Compiladores
CompiladoresCompiladores
Compiladores
fabianch78
 
Unidad 2 expresiones regulares
Unidad 2 expresiones regularesUnidad 2 expresiones regulares
Unidad 2 expresiones regulares
ROSA IMELDA GARCIA CHI
 
Analisis Y DiseñO Orientado A Objetos
Analisis Y DiseñO Orientado A ObjetosAnalisis Y DiseñO Orientado A Objetos
Analisis Y DiseñO Orientado A Objetosyoiner santiago
 
Qué es java
Qué es javaQué es java
P. estructurada vs. programación orientada a objetos
P. estructurada vs. programación orientada a objetosP. estructurada vs. programación orientada a objetos
P. estructurada vs. programación orientada a objetosGeovanny Yungán
 
Lenguaje de programación: Pascal
Lenguaje de programación: PascalLenguaje de programación: Pascal
Lenguaje de programación: Pascal
Carola511
 
Paradigmas de la programación
Paradigmas de la programación Paradigmas de la programación
Paradigmas de la programación
Daniel Gomez Jaramillo
 
Presentacion Programacion
Presentacion ProgramacionPresentacion Programacion
Presentacion Programacion
guestd5974a6
 
Introduccion a la programacion
Introduccion a la programacionIntroduccion a la programacion
Introduccion a la programacion
Jose Marroquin
 
Taller de Base de Datos - Unidad 7 Conectividad
Taller de Base de Datos - Unidad 7 ConectividadTaller de Base de Datos - Unidad 7 Conectividad
Taller de Base de Datos - Unidad 7 Conectividad
José Antonio Sandoval Acosta
 

La actualidad más candente (20)

Estilos de programación y sus lenguajes
Estilos de programación y sus lenguajesEstilos de programación y sus lenguajes
Estilos de programación y sus lenguajes
 
Paradigmas de programación
Paradigmas de programaciónParadigmas de programación
Paradigmas de programación
 
Actividad 4 cuadro comparativo sobre lenguajes de programacion
Actividad 4 cuadro comparativo sobre lenguajes de programacionActividad 4 cuadro comparativo sobre lenguajes de programacion
Actividad 4 cuadro comparativo sobre lenguajes de programacion
 
Fundamentos de Programación
Fundamentos de ProgramaciónFundamentos de Programación
Fundamentos de Programación
 
Herramientas de desarrollo para dispositivos móviles
Herramientas de desarrollo para dispositivos móvilesHerramientas de desarrollo para dispositivos móviles
Herramientas de desarrollo para dispositivos móviles
 
Clasificación de los Lenguajes de Programación
Clasificación de los Lenguajes de ProgramaciónClasificación de los Lenguajes de Programación
Clasificación de los Lenguajes de Programación
 
Diapositivas fundamentos-de-programacion
Diapositivas fundamentos-de-programacionDiapositivas fundamentos-de-programacion
Diapositivas fundamentos-de-programacion
 
TIPOS DE LENGUAJES DE PROGRAMACION
TIPOS DE LENGUAJES DE PROGRAMACIONTIPOS DE LENGUAJES DE PROGRAMACION
TIPOS DE LENGUAJES DE PROGRAMACION
 
Fundamentos de Programación - Unidad V: Modularidad
Fundamentos de Programación - Unidad V: ModularidadFundamentos de Programación - Unidad V: Modularidad
Fundamentos de Programación - Unidad V: Modularidad
 
Compiladores
CompiladoresCompiladores
Compiladores
 
Unidad 2 expresiones regulares
Unidad 2 expresiones regularesUnidad 2 expresiones regulares
Unidad 2 expresiones regulares
 
Analisis Y DiseñO Orientado A Objetos
Analisis Y DiseñO Orientado A ObjetosAnalisis Y DiseñO Orientado A Objetos
Analisis Y DiseñO Orientado A Objetos
 
Qué es java
Qué es javaQué es java
Qué es java
 
P. estructurada vs. programación orientada a objetos
P. estructurada vs. programación orientada a objetosP. estructurada vs. programación orientada a objetos
P. estructurada vs. programación orientada a objetos
 
Lenguaje de programación: Pascal
Lenguaje de programación: PascalLenguaje de programación: Pascal
Lenguaje de programación: Pascal
 
Paradigmas de la programación
Paradigmas de la programación Paradigmas de la programación
Paradigmas de la programación
 
Lenguaje de programación
Lenguaje de programaciónLenguaje de programación
Lenguaje de programación
 
Presentacion Programacion
Presentacion ProgramacionPresentacion Programacion
Presentacion Programacion
 
Introduccion a la programacion
Introduccion a la programacionIntroduccion a la programacion
Introduccion a la programacion
 
Taller de Base de Datos - Unidad 7 Conectividad
Taller de Base de Datos - Unidad 7 ConectividadTaller de Base de Datos - Unidad 7 Conectividad
Taller de Base de Datos - Unidad 7 Conectividad
 

Destacado

LENGUAJE DE PROGRAMACION C
LENGUAJE DE PROGRAMACION CLENGUAJE DE PROGRAMACION C
LENGUAJE DE PROGRAMACION C
javu
 
HISTORIA DEL LENGUAJE DE PROGRAMACIÓN C++
HISTORIA DEL LENGUAJE DE PROGRAMACIÓN C++HISTORIA DEL LENGUAJE DE PROGRAMACIÓN C++
HISTORIA DEL LENGUAJE DE PROGRAMACIÓN C++
DarioManzano
 
Breve historia de c++
Breve historia de c++Breve historia de c++
Breve historia de c++xxJoseM
 
Lenguaje c ibeth lozada
Lenguaje c ibeth lozadaLenguaje c ibeth lozada
Lenguaje c ibeth lozada
AdrianaYepezM
 
mapa conceptual lenguaje C#
mapa conceptual lenguaje C#mapa conceptual lenguaje C#
mapa conceptual lenguaje C#
Natanael Argueta
 
Estructuras de Control en Lenguaje C
Estructuras de Control en Lenguaje CEstructuras de Control en Lenguaje C
Estructuras de Control en Lenguaje C
Marvin Romero
 
Lenguaje c 1
Lenguaje c   1Lenguaje c   1
Lenguaje c 1
Denisse C
 
Constructores en java(grupo 8)
Constructores en java(grupo 8)Constructores en java(grupo 8)
Constructores en java(grupo 8)Manuel Ch.
 
El Sonido
El SonidoEl Sonido
Clase 1 Lenguaje C++
Clase 1 Lenguaje C++Clase 1 Lenguaje C++
Clase 1 Lenguaje C++
Desireé mart?ez
 
Tablas dinámicas
Tablas dinámicasTablas dinámicas
Tablas dinámicasIsabel
 
Lenguaje c
Lenguaje cLenguaje c
Lenguaje c
wuaro1
 
Sintaxis del lenguaje c++
Sintaxis del lenguaje c++Sintaxis del lenguaje c++
Sintaxis del lenguaje c++
Krisna M. B. Ready S.
 
Elementos Basicos del Lenguaje C++
Elementos Basicos del Lenguaje C++Elementos Basicos del Lenguaje C++
Elementos Basicos del Lenguaje C++yesid19
 

Destacado (15)

LENGUAJE DE PROGRAMACION C
LENGUAJE DE PROGRAMACION CLENGUAJE DE PROGRAMACION C
LENGUAJE DE PROGRAMACION C
 
HISTORIA DEL LENGUAJE DE PROGRAMACIÓN C++
HISTORIA DEL LENGUAJE DE PROGRAMACIÓN C++HISTORIA DEL LENGUAJE DE PROGRAMACIÓN C++
HISTORIA DEL LENGUAJE DE PROGRAMACIÓN C++
 
Breve historia de c++
Breve historia de c++Breve historia de c++
Breve historia de c++
 
Lenguaje c ibeth lozada
Lenguaje c ibeth lozadaLenguaje c ibeth lozada
Lenguaje c ibeth lozada
 
mapa conceptual lenguaje C#
mapa conceptual lenguaje C#mapa conceptual lenguaje C#
mapa conceptual lenguaje C#
 
Estructuras de Control en Lenguaje C
Estructuras de Control en Lenguaje CEstructuras de Control en Lenguaje C
Estructuras de Control en Lenguaje C
 
Lenguaje c 1
Lenguaje c   1Lenguaje c   1
Lenguaje c 1
 
TABLAS DINAMICAS PPT
TABLAS DINAMICAS PPTTABLAS DINAMICAS PPT
TABLAS DINAMICAS PPT
 
Constructores en java(grupo 8)
Constructores en java(grupo 8)Constructores en java(grupo 8)
Constructores en java(grupo 8)
 
El Sonido
El SonidoEl Sonido
El Sonido
 
Clase 1 Lenguaje C++
Clase 1 Lenguaje C++Clase 1 Lenguaje C++
Clase 1 Lenguaje C++
 
Tablas dinámicas
Tablas dinámicasTablas dinámicas
Tablas dinámicas
 
Lenguaje c
Lenguaje cLenguaje c
Lenguaje c
 
Sintaxis del lenguaje c++
Sintaxis del lenguaje c++Sintaxis del lenguaje c++
Sintaxis del lenguaje c++
 
Elementos Basicos del Lenguaje C++
Elementos Basicos del Lenguaje C++Elementos Basicos del Lenguaje C++
Elementos Basicos del Lenguaje C++
 

Similar a Historia del C++ y JAVA

C# documento de texto junto con mapa conceptual
C# documento de texto junto con mapa conceptualC# documento de texto junto con mapa conceptual
C# documento de texto junto con mapa conceptualFernando Jose
 
Reportede c#(sharp)(hugo balmore vallejo diaz)
Reportede c#(sharp)(hugo balmore vallejo diaz)Reportede c#(sharp)(hugo balmore vallejo diaz)
Reportede c#(sharp)(hugo balmore vallejo diaz)Hugo Vallejo
 
Programa en lenguaje C, Hildemaro Sequera, MI-42
Programa en lenguaje C, Hildemaro Sequera, MI-42Programa en lenguaje C, Hildemaro Sequera, MI-42
Programa en lenguaje C, Hildemaro Sequera, MI-42
Hildemaro Sequera
 
Deber 130912163339-phpapp01
Deber 130912163339-phpapp01Deber 130912163339-phpapp01
Deber 130912163339-phpapp01Rayco Paucar
 
C++
C++C++
Caracteristicas lenguajes
Caracteristicas lenguajesCaracteristicas lenguajes
Caracteristicas lenguajes
Alexander Campues
 
historia del lenguaje c++
historia del lenguaje c++historia del lenguaje c++
historia del lenguaje c++
Rayco Paucar
 
Lenguaje C sharp
Lenguaje C sharpLenguaje C sharp
Lenguaje C sharp
Raul Martinez
 
Tema 1 Programación I. 05-02-23.pdf
Tema 1 Programación I. 05-02-23.pdfTema 1 Programación I. 05-02-23.pdf
Tema 1 Programación I. 05-02-23.pdf
Noe Castillo
 
Historia de c++
Historia de c++Historia de c++
Historia de c++
alex laica
 
Características de los 10 lenguajes de programación
 Características de los 10 lenguajes de programación Características de los 10 lenguajes de programación
Características de los 10 lenguajes de programación
Gabriel Solano
 
Lenguajes de programacion mas utilizados
Lenguajes de programacion mas utilizadosLenguajes de programacion mas utilizados
Lenguajes de programacion mas utilizadosCesar-Sanchez
 
historia del lenguaje c++.c
historia del lenguaje c++.chistoria del lenguaje c++.c
historia del lenguaje c++.c
Rayco Paucar
 
Lenguaje c
Lenguaje cLenguaje c

Similar a Historia del C++ y JAVA (20)

Pul123
Pul123Pul123
Pul123
 
C#
C#C#
C#
 
C# documento de texto junto con mapa conceptual
C# documento de texto junto con mapa conceptualC# documento de texto junto con mapa conceptual
C# documento de texto junto con mapa conceptual
 
Consulta c++
Consulta c++Consulta c++
Consulta c++
 
Deber
DeberDeber
Deber
 
Todo sobre C#
Todo sobre C#Todo sobre C#
Todo sobre C#
 
Reportede c#(sharp)(hugo balmore vallejo diaz)
Reportede c#(sharp)(hugo balmore vallejo diaz)Reportede c#(sharp)(hugo balmore vallejo diaz)
Reportede c#(sharp)(hugo balmore vallejo diaz)
 
Programa en lenguaje C, Hildemaro Sequera, MI-42
Programa en lenguaje C, Hildemaro Sequera, MI-42Programa en lenguaje C, Hildemaro Sequera, MI-42
Programa en lenguaje C, Hildemaro Sequera, MI-42
 
Deber 130912163339-phpapp01
Deber 130912163339-phpapp01Deber 130912163339-phpapp01
Deber 130912163339-phpapp01
 
C++
C++C++
C++
 
Caracteristicas lenguajes
Caracteristicas lenguajesCaracteristicas lenguajes
Caracteristicas lenguajes
 
historia del lenguaje c++
historia del lenguaje c++historia del lenguaje c++
historia del lenguaje c++
 
Lenguaje C sharp
Lenguaje C sharpLenguaje C sharp
Lenguaje C sharp
 
Paola y lorena
Paola y lorenaPaola y lorena
Paola y lorena
 
Tema 1 Programación I. 05-02-23.pdf
Tema 1 Programación I. 05-02-23.pdfTema 1 Programación I. 05-02-23.pdf
Tema 1 Programación I. 05-02-23.pdf
 
Historia de c++
Historia de c++Historia de c++
Historia de c++
 
Características de los 10 lenguajes de programación
 Características de los 10 lenguajes de programación Características de los 10 lenguajes de programación
Características de los 10 lenguajes de programación
 
Lenguajes de programacion mas utilizados
Lenguajes de programacion mas utilizadosLenguajes de programacion mas utilizados
Lenguajes de programacion mas utilizados
 
historia del lenguaje c++.c
historia del lenguaje c++.chistoria del lenguaje c++.c
historia del lenguaje c++.c
 
Lenguaje c
Lenguaje cLenguaje c
Lenguaje c
 

Más de Nohemi Cuesta

Posmodernidad a la Modernidad
Posmodernidad a la ModernidadPosmodernidad a la Modernidad
Posmodernidad a la ModernidadNohemi Cuesta
 
Aplicando la Filosofía en las emociones.
Aplicando la Filosofía en las emociones.Aplicando la Filosofía en las emociones.
Aplicando la Filosofía en las emociones.Nohemi Cuesta
 
Ramas de la filosofia
Ramas de la filosofiaRamas de la filosofia
Ramas de la filosofiaNohemi Cuesta
 

Más de Nohemi Cuesta (6)

Nietzsche
NietzscheNietzsche
Nietzsche
 
Posmodernidad a la Modernidad
Posmodernidad a la ModernidadPosmodernidad a la Modernidad
Posmodernidad a la Modernidad
 
Aplicando la Filosofía en las emociones.
Aplicando la Filosofía en las emociones.Aplicando la Filosofía en las emociones.
Aplicando la Filosofía en las emociones.
 
Ramas de la filosofia
Ramas de la filosofiaRamas de la filosofia
Ramas de la filosofia
 
Presocráticos
PresocráticosPresocráticos
Presocráticos
 
Mesopotamia
MesopotamiaMesopotamia
Mesopotamia
 

Historia del C++ y JAVA

  • 1. Instituto Tecnológico de Tijuana Fundamentos de programación { Integrantes: -PERLA MARIA SILVA DURÓN -DIEMA NOHEMI CUESTA RAMOS -ANA LUISA RIVAS -ITAMAR ALVARADO -CARLOS RAUL RIOS NIEBLA
  • 2. Historia del C++ La historia del lenguaje C parte de un lenguaje anterior conocido como lenguaje B, creado por Ken Thompson. A su vez B fue inspirado en el lenguaje BCPL de Martin Richard, quien lo diseño tres años antes. En 1972 Dennis Ritchie (de laboratorios Bell de AT&T) diseña el lenguaje C a partir del B de Thompson, el cual aportaba un diseño de tipos y estructuras de datos con una claridad y eficacia superior.
  • 3. “Es un lenguaje que permite realizar una programación estructurada economizando las expresiones, con abundancia de operadores y tipos de datos (aunque los básicos sean pocos), codificando en alto y bajo nivel simultáneamente, reemplazando ventajosamente la programación en ensamblador y permitiendo una utilización natural de las funciones primitivas del sistema. Además, no está orientado a ningún área en especial y sobre todo consigue un código objeto altamente optimizado que repercute en que los programas son muy rápidos.”
  • 4. Durante muchos años este lenguaje no estuvo estandarizado, hasta que en 1983 se forma un comité que crea el estándar ANASI (Instituto Nacional Americano de Estándares), este proceso dura seis años, hasta que es reconocido por ISO (Organización Internacional de Estándares) y comienza a comercializarse. /* "Hola mundo" escrito en C */ #include <stdio.h> void main() { printf( "Hola mundo" ); } A su vez, en 1980 surge C++ Bjarne Stroustrup (también de Laboratorios Bell de AT&T). El nombre C++ fue propuesto por Rick Mascitti en el año 1983, cuando el lenguaje fue utilizado por primera vez fuera de un laboratorio científico. Antes se había usado el nombre "C con clases".
  • 5. El siguiente hecho fundamental en la evolución de C++ es sin duda la incorporación de la librería STL años más tarde, obra de Alexander Stepanov y Adrew Koening. Esta librería de clases con contenedores y algoritmos genéricos proporciona a C++ una potencia única entre los lenguajes de alto nivel. Debido al éxito del lenguaje, en 1990 se reúnen las organizaciones ANSI e ISO para definir un estándar que formalice el lenguaje. El proceso culmina en 1998 con la aprobación del ANSI C++. /* "Hola mundo" escrito en C++ */ #include <iostream> void main() { std::cout << "Hola mundo"; }
  • 6. La última variante que ha surgido de C es el moderno C#. En el año 2000, Microsoft presenta su plataforma .NET junto con un nuevo lenguaje, C# (diseñado por Anders Hejlsberg), que servirá de lenguaje principal de la plataforma. C# es un híbrido de C++ y Java que fusiona, principalmente, la capacidad de combinar operadores propia del primero (no incorpora la herencia múltiple) con la plena orientación a objetos del segundo. La orientación a objetos es tal que el propio programa está encapsulado en una clase. Actualmente C# se encuentra entre los 10 lenguajes más utilizados. A pesar de su corta historia, ha recibido la aprobación del estándar de dos organizaciones: en el 2001 se aprueba el ECMA y en el 2003 el ISO. /* "Hola mundo" escrito en C# */ class HolaMundo { static void Main() { System.Console.Write( "Hola mundo" ); } }
  • 7. Borland International es el productor del Turbo C++ y del Borland C++. Todos los productos del lenguaje C++ de Borland, comenzando con la versión 3.0 con compatibles con el estándar 3.0 de AT&T. Ser compatible con la versión 3.0 de AT&T es la prueba que determina si un compilador es lo suficientemente moderno como para ser usado como un compilador serio de C++. Si no usa alguno de los compiladores de C++ de Borland, tal vez esté satisfecho con el suyo si se apega al estándar 3.0 de AT&T. Comenzando con la versión 8.0, el compilador de C++ de Microsoft se apega al de AT&T, con la salvedad de que al compilador de Microsoft todavía le falta la característica de plantilla.
  • 8. Se considera que las plantillas son vitales para la productividad de un programador formal de C++. Aunque las plantillas son importantes, si se llega a usar un compilador que no las acepte, pero que soporta todos los demás aspectos del estándar 3.0 de AT&T, puede quedar satisfecho con ese compilador. A través de los años, AT&T ha aprobado muchas características del C++ que no son OOP pero que hacen al C++ mejor que el C. Tantas mejoras han sido añadidas al C++ que el comité ANSI ha tomado varios elementos del C++ para el lenguaje C. Por ejemplo, los prototipos de función no se iniciaron en el C, aunque han sido parte del lenguaje C desde hace varios años. Los prototipos de función se iniciaron el C++, y, debido a que contribuyen a hacer mejores programas, ANSI incluyó la característica en el lenguaje C.
  • 9. Características del lenguaje C++ Las principales características del Lenguaje C son: 1.-Tiene un conjunto completo de instrucciones de control. 2.-Permite la agrupación de instrucciones. 3.-Incluye el concepto de puntero (variable que contiene la dirección de otra variable).
  • 10. Algunas de las características más importantes que definen el lenguaje y que han permitido que sea tan popular, como lenguaje de programación son: Tamaño pequeño. Uso extensivo de llamadas a funciones. Comandos breves (poco tecleo). Lenguaje estructurado. Programación de bajo nivel (nivel bit) Implementación de apuntadores - uso extensivo de apuntadores para la memoria, arreglos, estructuras y funciones
  • 11. Las diversas razones por la cual se ha convertido en un lenguaje de uso profesional son: El uso de constructores de alto nivel. El poder manejar actividades de bajo-nivel. El generar programas eficientes. La posibilidad de poder ser compilado en una variedad de computadoras, con pocos cambios (portabilidad). Un punto en contra es que tiene una detección pobre de errores, lo cual en ocasiones es problemático para los principiantes.
  • 12. Historia de JAVA Java es un lenguaje de programación orientado a objetos desarrollado por Sun Microsystems a principio de los años 90´s. En Diciembre de 1950 Patrick Naughton, ingeniero de Sun Microsystems, reclutó a varios colegas entre ellos James Gosling y Mike Sheridan para trabajar sobre un nuevo proyecto conocido como "El proyecto verde". Con la ayuda de otros ingenieros, empezaron a trabajar en una pequeña oficina en Sand Hill Road en Menlo Park, California. Y así interrumpió todas las comunicaciones regulares con Sun y trabajó sin descanso durante 18 meses.
  • 13. Intentaban desarrollar una nueva tecnología para programar la siguiente generación de dispositivos inteligentes, en los que Sun veía un campo nuevo a explorar. Crear un lenguaje de programación fácil de aprender y de usar. En un principio se consideraba C++ como lenguaje a utilizar, pero tanto Gosling como Bill Joy lo encontraron inadecuado. Gosling intentó primero extender y modificar C++ resultando el lenguaje C++ ++ - (++ porque se añadían y eliminaban características a C++), pero lo abandonó para crear un nuevo lenguaje desde cero al que llamo Oak (roble en inglés, según la versión mas aceptada, por el roble que veía através de la ventana de su despacho).
  • 14. El resultado fue un lenguaje que tenía similitudes con C, C++ y Objetive C y que no estaba ligado a un tipo de CPU concreta. Mas tarde, se cambiaría el nombre de Oak a Java, por cuestiones de propiedad intelectural, al existir ya un lenguaje con el nombre de Oak. Se supone que le pusieron ese nombre mientras tomaban café (Java es nombre de un tipo de café, originario de Asia), aunque otros afirman que el nombre deriva de las siglas de James Gosling, Arthur Van Hoff, y Andy Bechtolsheim. En Agosto de 1991 Oak ya corría sus primeros programas.
  • 15. Para 1992, el equipo ya había desarrollado un sistema en un prototipo llamado Star7 (*7), dispositivo parecido a una PDA, cuyo nombre venía de la combinación de teclas del teléfono de la oficina del Proyecto Green que permitía a los usuarios responder al teléfono desde cualquier lugar. Por su parte, el presidente de la compañía Sun, Scott McNealy, se dio cuenta de forma oportuna y estableció el Proyecto Verde como una subsidiaria de Sun. Después de mostrar a Scott McNealy y Bill Joy los prototipos de bajo nivel del sistema, continuán con el desarrollo, incluyendo sistema operativo, Green OS; el lenguaje Oak, las librerías, alguna aplicación básica y el hardware, hasta que el 3 de septiembre de 1992 se termina el desarrollo y con ello elProyecto Verde.
  • 16. Hoy en día, puede encontrar la tecnología Java en redes y dispositivos que comprenden desde Internet y superordenadores cientifícos hasta portátiles y teléfonos móviles; desde simuladores de mercado en Wall Street hasta juegos de uso doméstico y tarjetas de crédito: Java está en todas partes.
  • 17. JAVA • Su sintaxis deriva en gran medida de C y C++. • Tiene menos facilidades de bajo nivel. • Sus aplicaciones se compilan por lo general a bytecode (clase java). • Se puede ejecutar en cualquier máquina virtual java. • Es de propósito general. • Es orientado por objetos. • Es base en clases. • Esta diseñado para tener pocas dependencias de implementación. • Su intención es WORA (write once, run anywhere) • Se usa particularmente para aplicaciones de cliente-servidor. C++ • Permite la manipulación de objetos `orientado a objetos . • Es un lenguaje híbrid (programación estructurada y orientación a objetos). • Multiparadigma. • Redefine los operadores, y puede crear nuevos que se compartan como tipos fundamentales.
  • 18. Desde sus inicios la computadora se ha manejado por un lenguaje binario, este lenguaje al ser tan complejo no es fácil en su manejo, por tal motivo los programadores se ven en la necesidad de crear un lenguaje de programación más sencillo, ya que al incrementar la complejidad de las necesidades en los sistemas informáticos buscaron alternativas para simplificar los lenguajes de programación, es así como se crean C++ y Java. Los lenguajes de programación se dividen en nivel alto y bajo es decir entre mas se asemeja al lenguaje de la computadora será nivel bajo, mientras que si se asemeja más al lenguaje humano su nivel será alto ya que es relativamente sencillo programar. Depende de los objetivos del programa, el programador decide cual sera el mas conveniente. Conclusión