Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
TECNOLGICA
INSTITUTO TECNOLGICO DE CIUDAD VALLES
INTRODUCCION
Los nuevos sistemas de informacin son costosos en tiempos y recursos, la
solucin moderna de sistemas de informacin exigen nuevas herramientas y
metodologas para resolver rpida, econmica y eficiente los problemas de
informacin planteados por las organizaciones. An ms el pleno potencial del
hardware no es aprovechado plenamente y existe un considerable retraso con el
software y sus aplicaciones, generando lo que se conoce como crisis del
software.
En programacin tradicional, modular o estructurada un programa describe una
serie de pasos a ser realizados para la solucin de un problema, es decir es un
algoritmo, en particular este modelo de programacin se us mucho para generar
programas o aplicaciones en ambientes pc's y con consolas, es decir el programa
se ejecutaba en una consola por ejemplo, y el programa o aplicacin se tena que
portar fsicamente a otras pc's, al final de su ciclo de vida de este modelo se haba
mejorado y ya era posible que se ejecutara en alguna ventana-consola de
ambientes Windows, con mejor interface como fonts, colores, background, etc.
Sin embargo cuando se habla de redes actuales estamos hablando de la red de
redes (internet) y si en redes internas o intranets el retraso en el tiempo de
comunicacin entre sus pc's internas y la cantidad de informacin a trasmitir entre
las mismas no es algo muy importante o inmanejable, este problema de tiempo de
trasmisin y cantidad de informacin, si es un factor muy importante cuando se
pretende construir programas o aplicaciones que deban compartirse o usarse por
muchas pc's conectadas a internet, desgraciadamente como factor externo que
es, no est bajo control de la empresa o del programador.
Qu es C++
Antes de hablar de C++, es necesario explicar que un lenguaje de programacin
es una herramienta que nos permite comunicarnos e instruir a la computadora
para que realice una tarea especfica. Cada lenguaje de programacin posee una
sintaxis y un lxico particular, es decir, forma de escribirse que es diferente en
cada uno por la forma que fue creado y por la forma que trabaja su compilador
para revisar, acomodar y reservar el mismo programa en memoria.
C++ es un lenguaje de programacin orientado a objetos que toma la base del
lenguaje C y le agrega la capacidad de abstraer tipos como en Smalltalk.
C o C++, son los compiladores que permiten usar cualquiera de los tres enfoques
en la solucin de problemas de informacin que puedan y deban ser resueltos
empleando el computador y el lenguaje aunque se repite este curso est enfocado
al primer modelo. El C++ es un lenguaje de programacin, diseado a mediados
de los aos 1980, por Bjarne Stroustrup, como extensin del lenguaje de
programacin C.
Actualmente existe un estndar, denominado ISO C++, al que se han adherido la
mayora de los fabricantes de compiladores ms modernos. Existen tambin
algunos intrpretes como ROOT (enlace externo). Las principales caractersticas
del C++ son el soporte para programacin orientada a objetos y el soporte de
plantillas o programacin genrica (templates). Se puede decir que C++ es un
lenguaje que abarca tres paradigmas de la programacin: la programacin
estructurada, la programacin genrica y la programacin orientada a objetos.
Adems posee una serie de propiedades difciles de encontrar en otros lenguajes
de alto nivel: Posibilidad de redefinir los operadores (sobrecarga de operadores)
Identificacin de tipos en tiempo de ejecucin (RTTI)
C++ est considerado por muchos como el lenguaje ms potente, debido a que
permite trabajar tanto a alto como a bajo nivel, sin embargo es a su vez uno de los
que menos automatismos trae (obliga a hacerlo casi todo manualmente al igual
que C) lo que "dificulta" mucho su aprendizaje. El nombre C++ fue propuesto por
Rick Masciatti en el ao 1983, cuando el lenguaje fue utilizado por primera vez
fuera de un laboratorio cientfico. Antes se haba usado el nombre "C con clases".
En C++, "C++" significa "incremento de C" y se refiere a que C++ es una extensin
de C.
C++ pretende llevar a C a un nuevo paradigma de clases y objetos con los que se
realiza una comprensin ms humana basndose en la construccin de objetos,
con caractersticas propias solo de ellos, agrupados en clases. Es decir, si yo
quisiera hacer un programa sobre animales, creara una clase llamada animales,
en la cual cada animal, por ejemplo un pato, sera un objeto, de tal manera que se
ve el intento de esta forma de programar por ser un fiel reflejo de cmo los
humanos (en teora) manejamos la realidad [referencia].
Se dice que nuestro cerebro trabaja de forma relacional [referencia] (relacionando
hechos), es por ello que cada vez que recuerdas algo, (cuentas un hecho), termina
siendo diferente (se agregan u omiten partes).
Las principales herramientas necesarias para escribir un programa en C++
son las siguientes:
1. Un equipo ejecutando un sistema operativo.
2. Un compilador de C++
1. Windows MingW (GCC para Windows) o MSVC (compilador de
Microsoft con versin gratuita)
2. Linux (u otros UNIX): g++
3. Mac (con el compilador Xcode)
3. Un editor cualquiera de texto, o mejor un entorno de desarrollo (IDE)
1. Windows:
1.Microsoft Visual C++ (conocido por sus siglas MSVC). Incluye
compilador y posee una versin gratuita (versin express)
2.Bloc de notas (no recomendado)
3.Editor Notepad++
4.DevCpp (incluye MingW - en desuso, no recomendado,
incluye tambin un compilador)
5.Code::Blocks
2. Linux (o re-compilacin en UNIX):
1.Gedit
2.Kate
3.KDevelop
4.Code::Blocks
5.SciTE
6.GVim
3. Mac:
1.Xcode (con el compilador trae una IDE para poder programar)
4. Tiempo para practicar
5. Paciencia
Estructura de un programa
En general, los programas escritos en C++ tienen una estructura (bsica) compuesta por tres
secciones:
1. Directivas de preprocesador
2. declaraciones globales
3. declaracin de funciones
Adicional
1. Ingls (Recomendado)
2. Estar familiarizado con C u otro lenguaje derivado (PHP, Python, etc).
GLOSARIO
Algoritmo: Mtodo que describe cmo se resuelve un problema en trmino de las
acciones que se ejecutan y especifica el orden en que se ejecutan estas acciones.
Los algoritmos ayudan al programador a planificar un programa antes de su
escritura en un lenguaje de programacin.
Constante: Una variable declarada en final en Java. Una constante de la clase
normalmente est compartida por todos los objetos de la misma clase; por
consiguiente, una constante de clase se declara normalmente como static. Una
constante local es una constante declarada dentro de un mtodo.
Cdigo Fuente: Programa en su forma original, tal y como fue escrito por el
programador, el cdigo fuente no es ejecutable directamente por el computador,
debe convertirse en lenguaje de maquina mediante compiladores, ensambladores
o intrpretes.
Campo: Es el espacio en la memoria que sirve para almacenar temporalmente un
dato durante el proceso, Su contenido vara durante la ejecucin del programa.
Compilador: Programa de computadora que produce un programa en lenguaje de
mquina, de un programa fuente que generalmente est escrito por el
programador en un lenguaje de alto nivel.
Interprete: Dispositivo o programa que recibe una por una las sentencias de un
programa fuente, la analiza y la convierte en lenguaje de maquina si no hay
errores en ella. Tambin se puede producir el listado de las instrucciones del
programa.