Vous êtes sur la page 1sur 15

1

UNIVERSIDAD AUTONOMA ESPAÑA


DE DURANGO

INGENERIA TECNOLOGIA Y SISTEMAS


SEGUNDO CUATRIMESTRE

PROGRAMACION Il
VICTOR AGUILAR GONZALEZ
PROGRMAS BASADOS EN C++

ALUMNO: JESUS ABRAHAM FLORES


FERNANDEZ

Victoria de Durango,Dgo, Febrero 7 2018


2

Contenido
PROGRAMAS BASADOS EN C++ ......................................................................................... 6

Kernel: Linux, Minix, Hurd, FreeBSD, OpenBSD, y Darwing, el kernel de Mac OS X. ................. 6

PostgreSQL ................................................................................................................................. 7

GIMP........................................................................................................................................... 7

Versionado: Git, Subversión ....................................................................................................... 8

Servidores Web: Apache, Nginx ................................................................................................. 8

Editores: Emacs, VIM, Geany ..................................................................................................... 8

Matemáticas: R, MATLAB, Octave ............................................................................................. 8

Windows .................................................................................................................................... 9

Chromium .................................................................................................................................. 9

Google big table ....................................................................................................................... 10

Firefox ...................................................................................................................................... 10

¡Juegos, Juegos, Juegos!........................................................................................................... 10

Utorrent ................................................................................................................................... 10

Máquinas Virtuales .................................................................................................................. 11

Google Android ........................................................................................................................ 11

Rim blackberry os 4.x ............................................................................................................... 11

Microsoft office ........................................................................................................................ 12

ScyllaDB 2015 ........................................................................................................................... 12

JUEGOS BASADOS EN C++................................................................................................. 12

CONCLUSIÓN ........................................................................................................................... 14
3

INTRODUCCION

Desde tiempos atrás el computador ha tenido grandes avances en el desarrollo


de modificaron en las piezas, estructuras, así como también en el área de los
programas que han si una de las grandes ayudas del usuario facilitándole una
herramienta de trabajo más factible.

Uno de los grandes objetivos de C++ es el implementar básicamente una forma


de producir un software aceptable, de calidad, con las cuales pueda ser modificado
con el tiempo y tener mejor expectativa desde un principio hasta el final del mismo
desarrollo de la aplicación.

Hoy en día la programación en C++ ha estado implicada en las grandes áreas de


desarrollo de la informática ya que esta programación es una de las mas
importantes de los diferentes tipos de lenguajes que puedan existir, sin mencionar
que C++ tiene características de bajo nivel, las cuales son dependientes de la
maquina el cual son aptas para la programación de sistemas.
4

HISTORIA

EL desarrollo inicial de C se llevó a cabo en los Laboratorios Bell de AT&T entre


1969 y 1973; según Ritchie, el periodo más creativo tuvo lugar en 1972. Se le dio el
nombre "C" porque muchas de sus características fueron tomadas de un lenguaje
anterior llamado "B". Hay muchas leyendas acerca del origen de C y el sistema
operativo con el que está íntimamente relacionado, Unix.

El desarrollo de C fue el resultado del deseo de los programadores de jugar con


Space Travel. Habían estado jugando en el mainframe de su compañía, pero debido
a su poca capacidad de proceso y al tener que soportar 100 usuarios, Thompson y
Ritchie no tenían suficiente control sobre la nave para evitar colisiones con los
asteroides.

Por ese motivo decidieron portar el juego a un PDP-7 de la oficina que no se


utilizaba; pero esa máquina no tenía sistema operativo, así que decidieron escribir
uno. Finalmente decidieron portar el sistema operativo del PDP-11 que había en su
oficina, pero era muy costoso, pues todo el código estaba escrito en lenguaje
ensamblador.

Entonces decidieron usar un lenguaje de alto nivel y portátil para que el sistema
operativo se pudiera portar fácilmente de un ordenador a otro. Consideraron usar B,
pero carecía de las funcionalidades necesarias para aprovechar algunas
características avanzadas del PDP-11. Entonces empezaron a crear un nuevo
lenguaje, C.
5

La justificación para obtener el ordenador original que se usó para desarrollar


Unix fue crear un sistema que automatizase el archivo de patentes. La versión
original de Unix se desarrolló en lenguaje ensamblador. Más tarde, el lenguaje C se
desarrolló para poder reescribir el sistema operativo.

En 1973, el lenguaje C se había vuelto tan potente que la mayor parte del kernel
Unix, originalmente escrito en el lenguaje ensamblador PDP-11/20, fue reescrita en
C. Éste fue uno de los primeros núcleos de sistema operativo implementados en un
lenguaje distinto al ensamblador. (Algunos casos anteriores son el sistema Multics,
escrito en PL/I, y Máster Control Program para el B5000 de Burroughs, escrito en
ALGOL en 1961).

En 1978, Ritchie y Brian Kernighan publicaron la primera edición de El lenguaje


de programación C, también conocido como La biblia de C. Este libro fue durante
años la especificación informal del lenguaje. El lenguaje descrito en este libro recibe
habitualmente el nombre de "el C de Kernighan y Ritchie" o simplemente "K&R C"
(La segunda edición del libro cubre el estándar ANSI C, descrito más abajo.)

El C de Kernighan y Ritchie es el subconjunto más básico del lenguaje que un


compilador debe de soportar. Durante muchos años, incluso tras la introducción del
ANSI C, fue considerado "el mínimo común denominador" en el que los
programadores debían programar cuando deseaban que sus programas fueran
transportables, pues no todos los compiladores soportaban completamente ANSI, y
el código razonablemente bien escrito en K&R C es también código ANSI C válido.
6

PROGRAMAS BASADOS EN C++

El lenguaje de programación en C++ es un lenguaje conocido como de alto nivel,


es que es un lenguaje estructurado, lo que permite generar código claro y sencillo,
ya que está basado en el modularidad, está estructurado en tres partes
fundamentales, las cuales son, una librería estándar, un programa compilador y un
procesador.

Kernel: Linux, Minix, Hurd, FreeBSD, OpenBSD, y Darwing, el kernel de Mac OS


X.

El kernel de un sistema operativo es un espacio tan cercano al hardware que


únicamente puede ser realizado mediante el uso de ensamblador y lenguaje C.

En los proyectos de código libre es posible saber con exactitud que lenguaje se
utiliza, por lo que no incluimos aquí ningún kernel de software propietario. El kernel
de Mac OS X es de código abierto, a pesar de que el resto del sistema operativo no
y también nos permite observar que está escrito en C.

Pero también muchos críticos de C han planteado que este lenguaje únicamente
será usado para la programación de sistemas, pero no para aplicaciones.

• Gestores de paquetes y programas de configuración: Los gestores de


paquetes tales como yum, apt, dpkg, etcétera, también están escritos en
C, que como veis es la estrella absoluta de los componentes "base" de un
sistema GNU/Linux.
7

• Aplicaciones gráficas de usuario: Este es el punto donde entran en juego


una gran cantidad de lenguajes de programación, dado que básicamente
es la capa más alta. Tenemos una gran variedad: C, Python, Java, Perl y
otros. Hay librerías GTK+, Tcl/Tk, Qt que son un frontend gráfico a tareas
que corren por detrás en línea de comando.

PostgreSQL

Este Gestor de Bases de datos es el más poderoso del mundo del Open Source,
y es competencia directa de Oracle.

El gestor cuenta con una comunidad muy activa y es predilecta para frameworks
como Django. Está completamente escrito en C y es demostración de cómo un
sistema grande y poderoso no necesita de programación orientada a objetos.

GIMP

Muchos dirán que, si bien se puede crear servidores con C, aunque sean
aplicaciones muy grandes y complejas, es necesaria la Programación Orientada a
Objetos para crear interfaces gráficas o aplicaciones para el usuario final.

El poderoso editor de imágenes GIMP está escrito en su mayor parte en C


utilizando la librería GTK, con lo que ofrece un increíble rendimiento y todo sin
necesidad de C++ u otro lenguaje "idóneo" para esta tarea. Con C podemos
programar perfectamente una interfaz gráfica sin necesidad de recurrir a POO.
8

Versionado: Git, Subversión

Los programas de versionados más famosos y usados que son Git y Subversión
está escritos en C. Si bien en otro lenguaje puede ser perfectamente usado para
este fin como Python en HG, la pregunta debería ser ¿Por qué no usar C? La gran
ventaja de C es que puede ser usado para cualquier aplicación, sin importar el
carácter de esta.

Servidores Web: Apache, Nginx

Los servidores Web más utilizados: Apache y Nginx utilizan C. En lo particular


apache se ha decidido por una combinación entre C y C++, lo cual le ha costado un
poco de rendimiento. Esta desventaja es neutralizada por Nginx que es mucho más
veloz, en parte por usar el lenguaje más rápido en todo su código: C

Editores: Emacs, VIM, Geany

Muchos editores de texto que ofrecen gran a la hora de editar textos, como son
GNU EMACS y VIM han sido escritos en C. También IDE's/editores como Genny.

Matemáticas: R, MATLAB, Octave

Una de las ramas de la computación que más velocidad de computación requiere


además de exactitud y poder son las matemáticas y sus programas. En este caso
vemos que los paquetes más importantes, como es R en estadística y MATLAB en
9

cálculo han sido escritos en nuestro lenguaje preferido. ¿Entonces C ya no se usa?


Sería difícil tener programas tan potentes sin una herramienta tan potente .

Windows

El Famoso sistema operativo de Microsoft está escrito en gran parte en C++, a


diferencia de sus contrapartes que utilizan principalmente C. Esta decisión por parte
de Microsoft hace que la Windows sea de los pocos sistemas operativos escritos en
este lenguaje de programación.

Entornos de Escritorio y gestores de ventanas: La mayoría de gente usa un


entorno de escritorio, y es que hoy poco queda sólo en interfaz de línea de
comandos. Los gestores de ventanas tales como metacity, kwin están desarrollados
en C y requieren gcc para ser compilados.

El entorno de escritorio, iconos, ventanas, barras de herramientas, etc. están


basados en librerías específicas (Qt para KDE, GTK+ para GNOME) y hacen uso
del lenguaje mayoritario, C.

Chromium

Es un programa escrito en diversos lenguajes: C y C++ son usados para las


tareas que requieren un control de memoria y que son exigentes en velocidad,
mientras que Java, JavaScript y Python son usados en tareas que no requieren todo
el poder de procesamiento. Normalmente se usan para plugin o para la interfaz
gráfica.
10

Google big table

En Google, toda la infraestructura se hace usando C ++ y solo C ++. Las


funciones periféricas se pueden desarrollar usando otros lenguajes.

Firefox

Firefox, otro de los grandes navegadores está escrito en C++ cómo lenguaje
principal, pero también incorpora al increíble Rúst., un C++ que protege contra
problemas en memoria, cosa que C++ no realiza. también utiliza C y JavaScript
como lenguajes complementarios.

¡Juegos, Juegos, Juegos!

El mundo de los video juegos está copado por C++. Los grandes frameworks
están escritos en C++ y casi todos tienen sus interfaces en C++. El viejo dicho, que
todo programador de videojuegos debe saber C++ sigue tan vigente como siempre.

Utorrent

Todas las versiones de µTorrent están escritas en C++ y cuenta con traducciones
a 54 idiomas. Está diseñado para usar pocos recursos del ordenador y ofrecer las
funcionalidades de otros clientes como Vuze o BitComet.

El programa ha recibido buenas críticas por sus características, rendimiento y


soporte para hardware y versiones de Windows antiguas, pero se le reprocha que
11

durante la instalación añada adware y un motor de búsqueda propio que predefine


sin consultar ni quitarse limpiamente cuando el usuario desinstala la aplicación. Un
informe mostró que µTorrent es el segundo cliente BitTorrent.

Máquinas Virtuales

Un caso especialmente curioso es el de las máquinas virtuales de Java y .NET,


desarrolladas en C++; o el de los compiladores e intérpretes: se usa C en los de
Perl o PHP, C++ en los lenguajes .NET y en el GCC, y Java para compilarse a sí
mismo.

Google Android

Android está basado en Linux , que está codificado en C. La interfaz de usuario


es Java. Las aplicaciones (no tratadas aquí) son principalmente Java.

Rim blackberry os 4.x

RIM hace obligatorio que los desarrolladores de aplicaciones utilicen Java como
lenguaje de programación en BlackBerry. La gente tiende a confundir esto con la
tecnología utilizada para desarrollar el sistema operativo. El sistema operativo
BlackBerry en sí está desarrollado con C ++.
12

Microsoft office

Tradicionalmente, MS Office se desarrolló usando ensamblador, luego el


desarrollo se movió a C, más tarde, cuando surgió C ++, todo lo nuevo se hizo
usando C ++. Actualmente no hay un plan para cambiar.

ScyllaDB 2015

ScyllaDB es una reescritura en C ++ de Apache Cassandra basada en Java. Se


reclama una mejora de 10 veces en el rendimiento sobre Cassandra. Esto se
debería, al menos en parte, al uso de un framework C ++: Seastar.

JUEGOS BASADOS EN C++

Colección de juegos diseñados y desarrollados en C, ejemplos del uso de


librerías gráficas, manejo de dispositivos de entrada/salida, capacidades
multimedia, manejo de estructuras de datos, diseño de interfaces, manejo de
memoria.

• COLUMNS: Versión para PC de un clásico de las consolas SEGA. Es un


juego muy parecido al Tetris con la diferencia que aquí aparecen columnas
de 3 figuras y hay que alinear 3 o más en forma vertical, horizontal o diagonal,
fue realizado en Borland C++, se utilizan arreglos bidimensionales. Autor:
Víctor Zamora.
13

• PIN-PON: Este es un programa realizado en TC, el cuál simula el famoso


juego de Pin-Pon, pero tiene un pequeño problema no se pueden utilizar más
de dos teclas a la vez. Su autor está interesado en cualquier tipo de ayuda
que lo pueda mejorar. Importante: Deberás cambiar la ruta donde se
encuentra C++, para poder inicializar el modo gráfico correctamente: función
initgraph. Autor: Víctor Hugo De la O Martínez

• ARKANOID: Versión del mítico "Arkanoid". Programado para Turbo C/C++,


es interesante por el uso de funciones gráficas y de sonido. Autor: Manuel
Ramírez Álvarez.

• BUSCAMINAS: Versión para MS-DOS del clásico buscaminas de Windows.


Las reglas del juego son las mismas que las de la versión Windows. Autor:
Eric Vásquez, creado en versiones de turbo c, C++.
14

CONCLUSIÓN

Con la existencia de la programación de C++ la tecnología ha podido alcanzar


grandes avances en todos los sentidos en los desarrollos de aplicaciones,
programas basados en C++, las cuales han sido de gran importancia. Desde
tiempos atrás la mayor parte de los programas basados en C++ han sufrido
modificaciones desde lo más básico hasta lo más complicado.

El crecimiento de programas basados en C++, ha tomado una gran fortaleza, por


ejemplo podemos notar en las oficinas, casas o en lugares donde se ha deja de usar
en algunas cosas como el escribir reportes a mano, hacer presentaciones, se ha
optado por el uso de office la cual ha sido una herramienta mejorada durante
muchos años.

Es por eso, la necesidad de que el programador conozca este tipo de lenguaje


de C++ y lo aprenda para poder realizar herramientas que sean capaces de trabajar
y apoyar en proyectos que ayudarán al manejo más sencillo de una empresa o en
particular pequeñas aplicaciones en el hogar.
15

FUENTES
http://eenube.com/index.php/ldp/cppmenu/113-programas-escritos-en-c

http://www.somoslibres.org/modules.php?name=News&file=article&sid=2708

https://hipertextual.com/2011/10/historia-de-la-tecnologia-lenguaje-c

http://www.lapolitecnica.net/c/practicas-c/48-juegosc

http://www.lextrait.com/vincent/implementations.html

Vous aimerez peut-être aussi