Que
es la ClassView
El Visor de Proyectos es una
ventana a través de la que podemos visualizar el contenido
de los proyectos, accedemos a la misma desde el menú "Ver"
y la opción "Proyecto".
Está formada por 3 carpetas que nos permiten visualizarlos
desde distintos puntos de vista representa el proyecto con las
clases que lo componen. Desde aquí podremos añadir
miembros datos o funciones
fácilmente. Visor de clases
(Classview)
El nuevo Visor de clases mejorado funciona tanto con las
clases de Java como con las
clases de C++. Se pueden crear nuevas clases utilizando la MFC la
ATL o clases personalizadas. El visor de clases también
presenta la posibilidad de visualizar y editar interfaces para
objetos COM implementados en MFC o ATL. También se pueden
utilizar carpetas para organizar las clases de la forma
deseada.
Que
es la FileView
FileView, o Visor de ficheros, que representa el
proyecto mediante la lista de ficheros fuente que lo
componen.
Por último aparece también la carpeta
InfoView que permite un rápido acceso a la ayuda en
línea.
Cada una de estas funcionalidades se utilizarán
en función
de la tarea a realizar. La gestión
y tratamiento de los recursos
sólo se puede hacer mediante ResourceView, mientras que
ClassView y FileView son casi similares en cuanto a su objetivo
último: el mantenimiento
del código
del programa.
Opciones para la compilación y
ejecución de un programa
El compilador de Visual
c++
El nuevo Visual C++ de
Microsoft
proporciona un entorno general, actualizado, a nivel de producción para el desarrollo de
todas las aplicaciones para Windows
95/98 y Windows NT. La versión 6 de Visual C++ de
Microsoft abarca tres configuraciones diferentes: Ediciones
Básicas, Profesionales y para Desarrollo.
Opciones del compilador de Visual
C++
cl.exe es una herramienta que controla el vinculador y
los compiladores de
Microsoft C y C++. Sólo puede ejecutarse en los sistemas
operativos Windows 2000,
Windows XP y
Windows Server 2003.
Los compiladores generan archivos objeto
(.obj) en formato COFF (Common Object File Format). El vinculador
genera archivos ejecutables (.exe) o bibliotecas de
vínculos dinámicos (DLLs).
Tenga en cuenta que todas las opciones del compilador
distinguen entre mayúsculas y
minúsculas.
Para compilar sin vinculación, utilice
/c.
Establecer las opciones del compilador
Las opciones del compilador pueden definirse en el
entorno de desarrollo o en la línea de comandos.
En el entorno de desarrollo
En el tema correspondiente a cada opción del
compilador se describe cómo definirla en el entorno de
desarrollo.
Fuera del entorno dedesarrollo
Las opciones del compilador (CL.exe) pueden
definirse:
Las opciones especificadas en la variable de entorno CL
se utilizan cada vez que se invoca CL. Si se menciona un archivo de
comandos en la variable de entorno CL o en la línea de
comandos, se utilizarán las opciones especificadas en
dicho archivo. A diferencia de la línea de comandos o la
variable de entorno CL, un archivo de comandos permite utilizar
varias líneas de opciones y nombres de archivo.
Las opciones del compilador se procesan "de izquierda a
derecha" y, de detectarse un conflicto,
tiene precedencia la última opción (la situada
más a la derecha). La variable de entorno CL se procesa
antes que la línea de comandos, por lo que siempre
tendrá precedencia en caso de conflicto con la
línea de comandos.
Novedades de Visual C++
versión 6
La versión 6.0 de Visual C++ de Microsoft
proporciona nuevas prestaciones,
tal como AutoCompletion que facilita la codificación, y Edit y Continue que
optimiza las sesiones de depuración. Otras prestaciones
admiten Active Platform (Plataforma activa), como Dynamic
HTML (HTML
Dinámico) y Active Document Containment (Contención
de documento activo). OLE DB Consumer y Provider Template Support
(Soporte de plantilla del proveedor y consumidor OLE
DB) y ADO Databinding (Atadura de datos ADO) se han
diseñado como ayuda a las bases de datos y
para controlar a los desarrolladores que utilizan MFC y
ATL.
Edición básica
La edición
básica de Visual C++ de Microsoft permite dominar
fácilmente el lenguaje
C++ mientras se utiliza el conjunto de herramientas
de Visual C++ profesional. Esta edición contiene todas las
prestaciones de la edición profesional, excepto las
optimizaciones de código, el Profiler y el enlace
estático a la biblioteca MFC.
Es una opción perfecta para los estudiantes y su bajo
precio permite
aprender C++ de forma independiente. La licencia para la
edición básica prohibe utilizar el producto para
el desarrollo de software de distribución.
Edición profesional
La edición profesional de Microsoft proporciona a
los desarrolladores la licencia para distribuir programas
desarrollados bajo esta herramienta, y tiene la ventaja sobre la
Edición básica de añadir servicios y
controles para plataformas Win32, incluyendo Windows 95/98 y
Windows NT.
Estas prestaciones permiten conseguir la interfaz de usuario
gráfica del sistema operativo
o las API de la consola.
Esta última versión del compilador Visual
C++ incorpora muchas prestaciones nuevas y de mayor calidad. Algunas
de las más importantes incluyen el admitir el
estándar AT&T C++2.1, cabeceras precompiladas,
prestaciones en línea y p-código (código
empaquetado).
El compilador Visual C++ de Microsoft
también proporciona herramientas para la
Implementación de programas en Windows, generados para
otras plataformas. El código puede incluso tener las
ventajas tanto de Apple Macintosh como de otras máquinas
RISC. El compilador C++ incluye todos los archivos de cabecera,
bibliotecas y editores de diálogo y
de recursos necesarios para crear una aplicación en
Windows verdaderamente consistente. Microsoft también ha
incorporado los editores de recursos para mapas de bit,
iconos, cursores, menús y cuadros de diálogo,
directamente integrados en el entorno. Y hablando de integración, la nueva clase de
asistentes (ClassWizards) ayuda a construir aplicaciones OLE
utilizando las bibliotecas Microsoft Foundation CLass
(MFÑ)en tiempo
récord.
Opciones del compilador
Los compiladores de Visual C++ utilizados en este
libro son
compiladores de optimización global que permiten obtener
todas la ventajas de las distintas opciones de velocidad o
tamaño del código para cada tipo de programa
desarrollado. En esta sección, se tratarán aquellas
opciones directamente relacionadas con el compilador C++ de
Microsoft de 32 bit, versión 4.0. Si se está
utilizando un compilador de 16 y/o 32 bit, versión 2.0,
las opciones serán similares, pero situadas en diferentes
fichas.
Las siguientes opciones del compilador permiten
optimizar el código del ejecutable en tamaño,
velocidad o tiempo de desarrollo. Si no se observa un aumento del
rendimiento apreciable, es posible que la aplicación de
prueba no contenga suficiente código. Todas las opciones
se establecen a partir del menú Build seleccionando la
opción de menú Settings.
Configurations…
(Configuraciones…)
La opción Configurations… (Configuraciones)
permite insertar o eliminar configuraciones asociadas al ciclo de
generación activo. Por ejemplo, se podría comenzar
con una única configuración de depuración y
después incorporar una versión
definitiva.
Pro file… (PerfiL..)
Esta opción está disponible solamente en
las Ediciones Professional (Profesional) y Enterprise (Empresa). Antes
de utilizar el generador de perfiles (profiler), se debe generar
el proyecto actual con la opción de generación de
perfiles activada. Si se desea ejecutar el perfil a nivel de
funciones sólo en el proyecto actual, se necesita activar
la opción de generación de perfiles para el
enlazador. Si se desea generar un perfil a nivel de línea,
también se necesita incluir información sobre el proceso de
depuración.
Profiler se utiliza para examinar el comportamiento
de los programas en tiempo de ejecución. Profiler permite
determinar las secciones del código que están
funcionando de forma eficiente, generando información que
muestra las
áreas de código que no se están ejecutando o
que tardan mucho tiempo en ejecutarse
Creación del archivo
ejecutable
La mayoría de los programas de Windows 3.x,
Windows 98/95 y Windows NT contienen muchos archivos. No
obstante, para comenzar, los programas más sencillos
tienen un único archivo, el archivo mamo de C/C++.
Conforme se vaya adquiriendo una mayor experiencia en la programación, se comprobará que esta
aproximación introductoria es ineficiente.
A medida que se entienda mejor el lenguaje C/C++
y el desarrollo de aplicaciones en Windows, se comenzará a
dividir las soluciones en
múltiples archivos C/ C++, lógicamente
relacionados. A estos se les añadirán nuestros
propios archivos de cabecera (los archivos de cabecera tienen
como extensión .h). Cuando el lector alcance el final de
este libro, será capaz de crear aplicaciones con archivos
de código fuente, archivos de cabecera, archivos de
recursos y demás.
Por tanto, aunque el programa de ejemplo contiene un
único archivo, las siguientes secciones presentan los
pasos necesarios para construir una aplicación en C/C++
constituida por muchos archivos para trabajar bajo entorno
Windows
Como se crea un programa tipo
consola
Para crear una aplicación de consola en
C#
- Abrir Visual C# Express.
- Hacer clic en la opción New del
menú File, y a continuación hacer clic en
Project.
Aparece el cuadro de diálogo New Project. Este
cuadro de diálogo muestra los distintos tipos de
aplicaciones por defecto que Visual C# Express puede
crear. - Seleccionar Console Application como nuestro
tipo de proyecto.
Cambiar el nombre de nuestra aplicación a "List Files".
La ubicación por defecto debería ser correcta,
pero siempre podemos introducir una nueva ruta si lo
deseamos. - Hacer clic en OK.
Visual C# Express crea una nueva carpeta para nuestro proyecto
tras el título de proyecto y abre la ventana principal
de Visual C# Express, incluyendo el panel de código
desde donde introduciremos y editaremos el código fuente
que forma parte de nuestra aplicación.
Observar la barra de herramientas en la parte superior
de la ventana. Esta barra de herramientas contiene iconos para
crear, cargar y guardar proyectos, editar nuestro código
fuente, construir nuestra aplicación y ocultar y
visualizar otras ventanas que forman el entorno de Visual C#
Express. Los cinco iconos de la derecha de esta barra de
herramientas se utilizan para abrir ventanas importantes como
Solution Explorer o Toolbox. Podemos posicionar el
puntero del ratón sobre cualquiera de estos iconos para
obtener una sugerencia de ayuda emergente.
Hacer clic sobre la etiqueta Solution
Explorer en la derecha de la pantalla, o sobre el icono
Solution Explorer de la barra de herramientas.
Solution Explorer es un panel muy útil, ya que
visualiza los diversos archivos que forman parte de nuestro
proyecto. El archivo más importante en este proyecto es el
archivo "Program.cs", que contiene el código fuente de
nuestra aplicación.
Es importante saber cómo abrir y ocultar las
ventanas como Solution Explorer si queremos mantener la
pantalla de Visual C# Express agradable y ordenada. Por defecto,
si hacemos clic en el panel Code, se cierra Solution
Explorer. Si quisiésemos mantener visible Solution
Explorer, deberíamos abrirlo de nuevo y hacer clic en
el icono Auto Hide (el icono en forma de clavija) en la
barra de título, o abrir el menú Options en
la barra de título Solution Explorer y deshabilitar
Auto Hide. Otras ventanas, como Class View o
Properties, también muestran estos
iconos.
- Escribir el nombre de clase Console en el
editor de código.
Si Solution Explorer todavía oculta el panel
Code, hacer clic en el panel Code para ocultarlo.
A continuación, hacer clic a la derecha de la llave de
apertura ({) dentro del método
-UNMANAGEDCODEENTITYREFERENCE xmlns="http://ddue.schemas.microsoft.com/authoring/2003/5">Main
-/UNMANAGEDCODEENTITYREFERENCE> y presionar ENTRAR para
crear una nueva línea. Observar cómo el editor
aplica una sangría automáticamente sobre el
cursor.
Cuando escribimos un nombre de una clase o palabra clave
en C#, podemos elegir entre escribir la palabra completa nosotros
mismos o permitir que la herramienta IntelliSense que
forma parte del panel Code lo haga por nosotros. Por
ejemplo, cuando escribimos una "c", aparece una lista emergente
de palabras a medida que IntelliSense intenta predecir la palabra
que estamos escribiendo. En este caso, como no vemos la palabra
"Console" inmediatamente a continuación, podemos
desplazarnos hacia abajo por la lista, o seguir escribiendo la
palabra "console". Cuando "console" aparezca resaltada en la
lista, presionar ENTRAR o TAB, o hacer doble clic sobre ella, y
Console se añadirá a nuestro
código.
La ventaja de utilizar IntelliSense es que
podemos asegurarnos de que las mayúsculas y
minúsculas, y la ortografía son correctas. Está en
nuestra mano decidir si escribimos el código manualmente o
utilizamos IntelliSense.
- Escribir un punto y el nombre de método
WriteLine.
A medida que escribimos el punto tras Console,
IntelliSense visualiza otra lista. Esta lista contiene todos
los posibles métodos
y propiedades que forman parte de la clase Console.
Buscamos el método WriteLine, y deberíamos
encontrarlo por la parte inferior de la lista. Tanto si
finalizamos escribiendo WriteLine nosotros mismos, como
si presionamos la tecla de desplazamiento hacia abajo hasta
seleccionarlo y presionamos ENTRAR o TAB, o como si hacemos
doble clic sobre él, WriteLine se
añadirá a nuestro código.
Escribir un paréntesis abierto. Inmediatamente
veremos otra característica de IntelliSense en que
las firmas del método aparecen como un mensaje de
sugerencia. En este caso podemos ver que hay 19 firmas distintas,
y podemos recorrerlas haciendo clic con las teclas de
desplazamiento ARRIBA Y ABAJO.
- Escribir la frase "This program lists all the
files in the directory".
Escribir el mensaje entre comillas, y añadir el
paréntesis de cierre. Veremos que aparecerá una
línea roja serpenteante que nos recuerda que algo falta.
Escribir un punto y coma (;) y tal garabato
desaparecerá. - Finalizar el programa.
Escribir o copiar y pegar el siguiente código para
completar el programa:
static void Main(string[] args) { Console.WriteLine("This program lists all the System.IO.DirectoryInfo dir = new foreach (System.IO.FileInfo file in { Console.WriteLine("{0}, {1}", file.Name, } Console.ReadLine(); } |
La última línea del programa es
Console.ReadLine(); que provoca una pausa en el programa
hasta que se presiona ENTRAR. Si omitimos esta línea, la
ventana de línea de comandos desaparecerá
inmediatamente y no podremos ver la salida de nuestro programa.
Si estamos creando una utilidad de
línea de comandos que siempre se utilizará desde la
consola de línea de comandos, probablemente querremos
eliminar la llamada al método
ReadLine().
- Ejecución de nuestro programa.
Acabamos de completar nuestro primer programa y está
listo para compilar y ejecutarse. Para ello, presionar F5 o
hacer clic en el icono Start de la barra de
herramientas.
- Una vez que el programa se compila y ejecuta, se abre
una ventana de línea de comandos y se muestra una lista
de archivos con sus tamaños. Presionar ENTRAR para
terminar el programa.
Si somos nuevos en la programación
en C#, este debería ser un buen momento para leer la
sección C# Language Primer de la documentación local instalada con C#
Express, y probar algunos de los ejemplos del lenguaje. Si
queremos conocer más sobre el entorno de desarrollo de
Visual C#
Dibujo o gráfico del entono visual
c
CONSTRUCCIÓN DE UNA APLICACIÓN
BÁSICA
Seguiremos los siguientes pasos:
- Crear un nuevo proyecto. Desde el menú
"Fichero", en la opción "Nuevo". - Seleccionar objetivo del proyecto. Seleccionaremos
"aplicación basada en MFC"En estos momentos aparecerá la secuencia de
diálogos del generador ClassWizard. Veamos cuales
serían los pasos a seguir para crear una
aplicación sencilla:- Paso 1. Permite identificar el modelo
de ventana principal de nuestra aplicación: SDI, MDI
o basada en diálogo. Nosotros elegiremos
SDI. - Paso 2. Permite incorporar soporte a Bases de
Datos en la aplicación. Esto lo veremos más
adelante. Seleccionaremos la opción sin soporte a
bases de datos. - Paso 3. Relativo al soporte OLE. Igual que en el
caso anterior. - Paso 4. Otras características de la
aplicación (barra de botones, barra de estado,
controles 3D …) - Paso 5. Generación de comentarios en el
código (si/no) y usos posibles de las MFC (como
DLL o como LIB). Se recomienda la opción DLL en
cuanto al tamaño y modularidad del programa, pero
deberemos asegurarnos de distribuir la DLL junto con
nuestro programa para que funcione correctamente.A partir de este momento da comienzo la
generación del código definido antes. Como
se habrá observado, el nombre por defecto de las
clases generadas tiene mucho que ver con el nombre que le
hayamos dado al proyecto. De esta manera, si
hubiésemos llamado "curso1" al proyecto
tendríamos la siguiente
situación:- Clase CCurso1App (módulos
curso1.h y curso1.cpp) que representa una
aplicación Windows. - Clase CMainFrame (ficheros mainfrm.h y
mainfrm.cpp) que representan la ventana principal de la
aplicación. - Clases CCurso1Doc y CCurso1View
(ficheros curso1doc.h/curso1doc.cpp y
curso1view.h/curso1view.cpp respectivamente),
representantes de lo que se conoce en el mundo Windows
como interfaz "Documento/Vista" y que trataremos en
adelante. - Clase CAboutDlg que representa el
típico diálogo de "Acerca de …" y
que ha sido generado automáticamente por
AppWizard, esta clase (rompiendo la norma habitual de
la MFC) aparece definida e implementada dentro los
mismos ficheros que la clase aplicación
(módulos curso1.h y curso1.cpp). En el futuro
evitaremos este tipo de construcciones.
Cada una de estas clases se revisará con
detalles en capítulos sucesivos.Martinez Lucia
- Clase CCurso1App (módulos
- Paso 6. Permite modificar el nombre de las clases
MFC que se van a generar, además de especificar los
ficheros en los que se implementa y la clase base de la que
derivan. Los nombres generados por AppWizard suelen ser
bastantes significativos.
- Paso 1. Permite identificar el modelo
- Nombrar el proyecto. Visual C++ organiza los
proyectos de manera que crea un subdirectorio nuevo con el
nombre de cada proyecto. Aunque esta "regla" siempre puede
modificarse, puede ser una buena forma de control de
proyectos.
Página anterior | Volver al principio del trabajo | Página siguiente |