CursoC-74db9b70

La App Makers

Introdución

C++ es un lenguaje de programación multiparadigma, dado que permite programar de manera imperativa, orientada a objetos o genérica.

Es un lenguaje nacido a principios de los años 80, pero que ha ido adquiriendo popularidad a finales de esa década y a principios de la década de los 90, puesto que ha sido el lenguaje favorito para la creación de aplicaciones de escritorio, ofimática y de juegos, tipos de aplicaciones muy populares en esa época.

El estándar C++ (liberado el año 2011) incorpora muchísimas características al lenguaje que lo hacen mucho más interesante y sencillo para el desarrollo de aplicaciones genéricas, con un manejo más fácil de la memoria (a través de punteros inteligentes) y con una librería estándar más rica.

Aunque sigue siendo el lenguaje predilecto para la creación de juegos de alta gama y aplicaciones de ofimática; su nicho de mercado está en el desarrollo de sistemas operativos, máquinas virtuales, compiladores, navegadores de internet y cualquier aplicación donde el alto rendimiento sea prioritario.

Origen del lenguaje C++

La historia del lenguaje de programación C++ comienza a principios de los años 70, con un programador de nombre Dennis Ritchie que trabajaba en los laboratorios de AT&T Bell. Trabajando con un lenguaje llamado BCPL inventado por Martin Richards (que luego influyó para crear el B de Ken Thompson), Dennis deseaba un lenguaje que le permitiese manejar el hardware de la misma manera que el ensamblador pero con algo de programación estructurada como los lenguajes de alto nivel. Fue entonces que creó el C que primeramente corría en computadoras PDP-7 y PDP-11 con el sistema operativo UNIX. Pero los verdaderos alcances de lo que sería éste, se verían poco tiempo después cuando Dennis volvió a escribir el compilador C de UNIX en el mismo C, y luego Ken Thompson (diseñador del sistema) escribió UNIX completamente en C y ya no en ensamblador. Al momento de que AT&T cedió (a un precio bastante bajo) el sistema operativo a varias universidades, el auge de C comenzaba. Cuando fueron comerciales las computadoras personales, empezaron a diseñarse varias versiones de compiladores C, éste se convirtió en el lenguaje favorito para crear aplicaciones.

En 1983, el Instituto Americano de Normalización (ANSI) se dio a la tarea de estandarizar el lenguaje C, aunque esta tarea tardó 6 años en completarse, y además con la ayuda de la Organización Internacional de Normalización (ISO), en el año de 1989 definió el C Estándar. A partir de éste, se dio pie para evolucionar el lenguaje de programación C. Fue en los mismos laboratorios de AT&T Bell, que Bjarnes Stroutstrup diseñó y desarrolló C++ buscando un lenguaje con las opciones de programación orientada a objetos.Ahora el desarrollo del estándar de C++ acaparaba la atención de los diseñadores. En el año 1995, se incluyeron algunas bibliotecas de funciones al lenguaje C. Y con base en ellas, se pudo en 1998 definir el estándar de C++. Algunas personas podrían pensar que entonces C++ desplazó a C, y en algunos aspectos podría ser cierto, pero también es cierto que algunas soluciones a problemas requieren de la estructura simple de C más que la de C++, C generalmente es usado por comodidad para escribir controladores de dispositivos y para programas de computadoras con recursos limitados. La base del lenguaje fue creada por programadores y para programadores, a diferencia de otros lenguajes como Basic o Cobol que fueron creados para que los usuarios resolvieran pequeños problemas de sus ordenadores y el segundo para que los no programadores pudiesen entender partes del programa. C++ es un lenguaje de nivel medio pero no porque sea menos potente que otro, sino porque combina la programación estructurada de los lenguajes de alto nivel con la flexibilidad del ensamblador.

Características del lenguaje C++

Algunas de las características más importantes que posee el lenguaje C++ son:

Compatibilidad con bibliotecas: A través de bibliotecas hay muchas funciones que están disponible y que ayudan a escribir código rápidamente.

Orientado a Objetos: El foco de la programación está en los objetos y la manipulación y configuración de sus distintos parámetros o propiedades.

Rapidez: La compilación y ejecución de un programa en C++ es mucho más rápida que en la mayoría de lenguajes de programación.

Compilación: En C++ es necesario compilar el código de bajo nivel antes de ejecutarse, algo que no ocurre en otros lenguajes.

Punteros: Los punteros del lenguaje C, también están disponibles en C++.

Didáctico: Aprendiendo programación en C++ luego es mucho más fácil aprender lenguajes como Java, C#, PHP, Javascript, etc.

Manos a la obra!!!Para empezar a realizar los diferentes programas, necesitamos de un IDE “Entorno de Desarrollo Integrado”, pueden usar cualquiera que soporte C++ pero el que yo recomiendo es Geany para Linux.

¿Que es Geany?

Geany es un editor de texto para programadores. Es potente, estable y liviano nos proporciona toneladas de funciones útiles sin atascar su flujo de trabajo. Es compatible con los sistemas operativos Linux, Windows y Mac OS y tiene soporte incorporado para más de 50 lenguajes de programación, como C , C++, Java, PHP, HTML, Python, Perl o Pascal, entre otros.

Con esta sencilla herramienta de código abierto podremos realizar funciones como el resaltado de sintaxis, completado de códigos y autocompletado de etiquetas XML y HTML, así como lista de símbolos. Al ser un software libre Geany se beneficia de tener detrás una potente comunidad de profesionales y aficionados que contribuyen con mejoras y arreglos para la plataforma.

Esta aplicación carece de creador de interfaces gráficas, pero dispone de una interfaz de lo más completa. También puede proporcionarnos resaltados de códigos, atajos de teclado, posibilidad de deshacer y rehacer, así como disponer de un sistema de pestañas que facilita su uso.

Geany nos permitirá compilar y ejecutar los programas creados o editados, ya sea desde el desde su menú o el Terminal. Dispone de plugins, autoguardado, buscador de archivos y exportador, e incluye soporte para otros para archivos de configuración Diff y archivos SQL.

Para Windows recomiendo  Dev C++ por ser más versátil para este entorno.

¿Que es Dev-C++?

El Dev-C++, es un IDE “Entorno de Desarrollo Integrado” para crear aplicaciones utilizando el lenguaje de programación C++, que ocupa muy poco tamaño en el disco duro, ideal para crear programas pequeños en las que solo sea necesario demostrar el uso de estructuras de control y estructuras de datos, estas aplicaciones se pueden compilar rápidamente y ejecutar en forma de consola.

Como última opción puedes ejecutar los códigos de este Curso en un Compilador Online. El siguiente link tiene algunas alternativas. CompiladoresOnLine.

Pero como dije antes pueden usar cualquier IDE que soporte C++.

Indice del Curso

Se ha realizado este curso con la idea que contenga 7 unidades hasta el momento, eso no quiere decir que se vaya anexando otros temas en el futuro.El mismo va tener el siguiente temario. Haz clic en los enlaces de los temas.

Variables y Tipos de Datos

¿Qué es un tipo de dato?

Como el propio nombre especifica ,se refiere a que indica de qué tipo va a ser el dato que utilicemos. Entre estos se encuentran los:

Enteros: 1, 3050, -405.

Caracteres: a-z, A-Z. Tanto mayúsculas como minúsculas

Float: que serían los decimales: 1,54 ; 350, 24596 ;

Long: que es básicamente son  los Float, pero abarcan el doble de cantidad de números. (Se usan si los números son demasiado grandes).

C++ es un tipo de lenguaje de programación “fuertemente tipado”, es decir no se permiten violaciones de los tipos de datos, dado el valor de una variable de un tipo concreto, no se puede usar como si fuera de otro tipo distinto a menos que se haga una conversión.

Básicamente si vos declaras que una variable “n” va a ser un número entero, no podes después ir meterle una letra. O sea, podes, pero C++ va a romper seguramente y van a existir inconsistencia de datos.

En C++ los tipos de datos se codean asociados a una variable. ¿Que es una variable? Es el nombre que va a contener un tipo de dato y su valor. Se codean así:

Los tipos de datos  son “Int, char, long y float”

Los nombres que están después de estos tipos de datos  son las variables. A tener en cuenta, uno puede llamar las variables como quiera, desde “z” a “unaVariableCualquiera”.

Pero a esto, le falta lo que se llama, inicializar una variable, que bajando a términos comunes es asignarle un valor a la variable. Si bien no es 100{f42c5ee42375d02df15b6b482cb64e8bf5f6ba0a6b564452185dbfa46b517e9e} necesario, C++ te va a tirar un warning  “advertencia”si no lo haces, porque “piensa” que te olvidaste de inicializar y eso a la larga puede traer problemas. Depende de cómo esté armado tu código.

Asignarle valor a una variable se hace de la siguiente forma:

Si inicializamos una variable de tipo entero “int”, y le asignamos una letra de manera intencionada:

C++ no nos va a tirar error, ni siquiera nos va a tirar un Warning, pero cuando vayamos a imprimirlo  con un cout, no va a imprimir la letra ‘G’, sino el entero que represente a la letra ‘G’.

No solo podemos asignarle valores a variables directamente, sino que podemos asignarle valores de otras variables, de alguna operación, y, mas adelante, de funciones.

Estamos asignando a entero3 el valor de la suma entre entero1 y entero2. El resultado da 1000, usamos un cout más  amigable al usuario: es mas legible poner “El valor del entero3 es:” que solamente poner el valor, lo compilamos…

Que esto no confunda, podemos darle valores a las variables a lo largo de todo el código y siempre va a tener el último valor.

Compilamos…

Veamos entonces qué pasa si imprimimos una variable no inicializada, con una si inicializada:

y el resultado es el siguiente:

Como vemos, la variable sin inicializar, tiene lo conocido como “basura”. En este caso es un número porque el tipo de dato es entero, pero puede haber cualquier cosa, por eso no es recomendable que una variable no tenga valor. En cualquier caso es preferible iniciarla con algo que conozcamos, un cero, por ejemplo.

Todo muy lindo, pero como haríamos para intercambiar valores entre variables? En C++ hay algo llamado “Asignación destructiva” y básicamente significa que cuando le asigno valor a una variable, lo que había antes de esto se destruye y no se puede recuperar. Así que para resolver esto o realizar cosas por el estilo:

No funciona ni va a funcionar, porque cuando le asignamos a “a” el valor de “b” y luego a “b” el valor de “a”, ambos a y b” ya valían 4. Cuando compilo me muestra lo siguiente:

Se los explico con un gráfico: Supongamos que a y b ya tienen sus correspondientes valores:

Entonces para intercambiar, vamos a tener que usar un poco más la cabeza. Vamos a tener que utilizar una variable auxiliar, que retenga momentáneamente el valor de alguna de las variables.

y el resultado que va mostrar es el siguiente:

Para entenderlo, lo explico en forma grafica:

¿Se ve como sirve esto de tener variables auxiliares que tengan valores momentáneamente de otras variables? Es muy común el uso de variables auxiliares que su existencia solo sirve para facilitarnos las cosas. No tienen ningún fin inmediato útil, mas que el “almacenar un dato por un tiempo”.

Podemos pedirle al usuario “la persona que está usando el ordenador” que ingrese datos, números, caracteres,etc. y a estos datos guardarlos en variables.

y el resultado será:

Podemos hacer cualquier tipo de cosas, pedirle que ingrese 30 números, y hacer algunas operaciones y mostrarlas por pantalla, compararlos, colocarlos en estructuras de datos, etc.

Más adelante vamos a ver las aplicaciones.

Conclusión:

Existen varios tipos de datos que son útiles si vamos a realizar procesos. Estos tipos de datos están asociados a variables, y estas variables contienen valores. Con los valores de estas variables se pueden hacer operaciones, validación de datos, etc. El uso de auxiliares es muy útil porque nos permite la no pérdida de datos importantes.


Navega entre los temas de este curso!

 Ir al Tema #2 >>


 

  • Tutorial
  • Programación
0 Comentarios

Contesta

CONTACTANOS

Esta es su red social de tecnología para compartir tus ideas y proyectos. Puedes enviarnos un correo si tienes dudas.Nos vemos

Enviando

Nuevo informe

Cerrar

Inicia Sesión con tu Usuario y Contraseña

o    

¿Olvidó sus datos?

Create Account