Upload
esteban-lopez
View
220
Download
0
Embed Size (px)
Citation preview
8/17/2019 Auto Practica c Sharp
1/15
HADA Depar tamento de Lengua jes y Sistemas Inf or máticos
1
OBJETIVOS
• Primera toma de contacto con el entorno de desarrollo Visual Studio .NET:Opciones del entorno y tipología de proyectos.
1.- VISUAL STUDIO .NET: VISIÓN GENERAL
Este entorno de desarrollo o IDE (Integrated Development Environment) será elmedio que utilizaremos para la implementación de las prácticas de la asignatura, para
lo cual comenzaremos con esta primera sesión que nos guiará en la creación de uno delos diversos tipos de proyectos que podemos seleccionar mediante este IDE.
Los objetivos que se persiguen mediante esta primera auto-práctica son pocos pero muy concretos, y son:
Introducción al entorno de desarrollo de .NETCreación de un primer proyecto utilizando el lenguaje de desarrollo C#
De esta forma, el primer paso a ejecutar en el desarrollo de esta primera auto- práctica es la inicialización del entorno de desarrollo o IDE de .NET, para locual procederemos según la figura siguiente.
Figur a 1.
Una vez tenemos arr ancado el entor no de desarr ollo, deber emos seleccionar el tipo de pr oyecto .NET que deseamos cr ear , aunque antes pr oceder emos a r ealizar una identif icación de los elementos existentes en éste con la ayuda de la siguiente f igur a.
8/17/2019 Auto Practica c Sharp
2/15
HADA Depar tamento de Lengua jes y Sistemas Inf or máticos
2
Figur a 2.
Si nos f ijamos en la página de inicio (Start Page) observamos que par a poder comenzar con el uso de este entor no, podemos gestionar los proyectos/sitios weba través de sus dos acciones fundamentales que son la creación de nuevosproyectos/sitios web y la apertura de los ya creados previamente. Asimismo, cuando ya hemos tr aba jado en la cr eación de var ios pr oyectos en nuestr a máquina, tendr emos una lista de pr oyectos/sitios web más r ecientes.1
2.- SOLUCIONES Y PROYECTOS:
En este punto nos centr ar emos en pr imer lugar en dar unas def iniciones par a que puedan quedar clar os tr es conceptos f undamentales que nos acompañar án a lo lar go de las sesiones de pr ácticas de HADA.
De esta maner a, y utilizando la f igur a siguiente que apar ece al pinchar sobr e el botón de de la f igur a anter ior , tenemos en pr imer a instancia varias opciones que se explican seguidamente.
• Tipos de pr oyecto: Mediante este entor no podemos cr ear una ser ie de pr oyectos de muy dif er ente índole, que varían desde los lengua jes de pr ogr amación que podemos utilizar par a su implementación (Visual Basic .NET, C#, Visual C++) hasta la natur aleza del pr opio pr oyecto, par a lo cual disponemos de las
• Plantillas de pr oyecto y Plantillas pr edef inidas: según sea la natur aleza del pr oblema que debamos r esolver , podemos optar por la cr eación de un pr ogr ama
1 Ten en cuenta que una vez hayas utilizado el entor no dur ante var ias sesiones de pr ácticas, ser ás capaz incluso de modif icar este acceso al IDE de f or ma per sonalizada si lo deseas, per o las pr imer as veces que lo utilices hemos pr epar ado esta pequeña guía par a que puedas acceder a las opciones apr opiadas sin demasiado esf uer zo.
8/17/2019 Auto Practica c Sharp
3/15
HADA Depar tamento de Lengua jes y Sistemas Inf or máticos
3
Windows, o bien de una dll (Dynamic Link Libr ary), que más tar de podemos necesitar migr ar a un servicio de Windows NT o XP en f unción de las necesidades de nuestr o pr oyecto. Es decir , que este IDE nos pr ovee de diver sas plantillas con una estr uctur a de f icher os que r esuelven pr oblemas tipo que nos encontr amos cuando tr aba jamos en el desarr ollo de sw par a entor nos Windows
como por e jemplo: Ficher os e jecutables, dll, ATL, Servicios, páginas asp, pr oyectos de instalación de sw, etc.
Figur a 3.
Par a f inalizar este punto, cr eemos necesar io escr ibir unas líneas más par a aclar ar la dif er encia de concepto que existe entr e las soluciones y los demás tipos de pr oyectos de .NET.
Como se puede apr eciar en la f igur a 4, uno de los tipos de pr oyecto que se pueden desarr ollar son las “Soluciones de Visual Studio“, las cuales se dif er encian del r esto de tipos de pr oyecto básicamente en que:
UNA SOLUCIÓN ES UN CONTENEDOR DE PROYECTOS
Cuando el alumno tenga una exper iencia más dilatada en el desarr ollo de pr oyectos con VStudio .NET, ser á capaz de incluir en la misma solución dif er entes tipos de pr oyectos que pueden estar desarr ollados en dif er entes lengua jes de pr ogr amación.
3.- MI PRIMER PROGRAMA:
8/17/2019 Auto Practica c Sharp
4/15
HADA Depar tamento de Lengua jes y Sistemas Inf or máticos
4
Par a comenzar a desarr ollar con el IDE de .NET, vamos a pr oceder a la cr eación de nuestr o pr imer pr ogr ama; y siguiendo la costumbr e del gr emio de la tecla, vamos a pr oceder a la escr itur a del pr ogr ama “Hola mundo“. Par a esto, necesitamos pensar en una ser ie de pasos antes de lanzar nos a teclear 2.
Ingr edientes del pr ogr ama:
1. Una SOLUCIÓN que actuará a modo de contenedora de programa/s.2. Un proyecto que desarrollaremos en lenguaje C# mediante la utilización de la plantilla de proyecto que se denomina “Aplicación de Consola“.3. Unos leves conocimientos de C# que nos permitan al menos insertar una líneade código en la plantilla que nos presentará .NET.
Pr imer Paso: Cr eación de la solución. Par a ello, lo pr imer o que har emos ser á abr ir el entor no de desarr ollo o IDE par a, seguidamente, cr ear una Solución en blanco, que ser á la que contenga el/los pr oyecto/s que vayamos cr eando en esta f ase de las
pr ácticas. Par a e lo, seleccionar emos el botón de tr as lo cual se nos mostr ar á el diálogo de la siguiente f igur a, en el cual modif icar emos el nombr e de la solución, así como el path en el que se gr abar á ésta y que nos pr opone Visual Studio.
Figur a 4.
Una vez tenemos cr eada la solución, Visual Studio nos pr opor cionar á una ser ie de ar chivos par a comenzar a desarr ollar los contenidos del pr oyecto, lo cual nos hace
2 Es muy r ecomendable que antes de abor dar cualquier tipo de pr oyecto, se pr oceda a pensar en la me jor f or ma de estr uctur ar lo.
8/17/2019 Auto Practica c Sharp
5/15
HADA Depar tamento de Lengua jes y Sistemas Inf or máticos
5
ahorr ar un por centa je consider able en el tiempo que debemos dedicar a la constr ucción de nuestr a solución. Piensa que los entor nos integr ados o IDE‘s nos deben pr opor cionar f acilidades palpables a la hor a de desarr ollar soluciones a pr oblemas de negocio o de cualquier otr a natur aleza que se nos pr esenten a lo lar go de nuestr a vida pr of esional. Este es uno de los motivos pr incipales por los que se nos pr opor cionan una ser ie de
pasos pr edef inidos siempr e que cr eamos un pr oyecto con Visual Studio .NET, de f or ma que podemos centr ar nos en el desarr ollo de la solución y de jar de lado ciertos detalles que asumir á el entor no.
Hagamos un pequeño par éntesis en la cr eación de nuestr o pr ogr ama par a dar un pequeño paseo por la solución que acabamos de cr ear . Una vez tenemos cr eada la solución podemos r ecorr er los dif er entes elementos del IDE par a comenzar a tener algo de backgr ound con este sistema, de f or ma tal que nos vayan sonando las zonas de la pantalla, o los iconos de acceso dir ecto a dif er entes partes del entor no o del pr oyecto en el que nos encontr emos tr aba jando.
Figur a 5.
Tenemos seleccionada a la der echa del entor no la solución “Solution1“ que hemos cr eado antes y que vemos que contiene 0 pr oyectos. Así pues, y dado que un pr oyecto de tipo: solución en blanco, no sirve par a mucho, debemos pr oceder a agr egar le el segundo de los ingr edientes de nuestr a r eceta par a esta autopr áctica.
Par a comenzar a sacar partido de este entor no, podemos pr oceder mediante la cr eación de un pr oyecto tipo MS-DOS, es decir , una aplicación de consola que nos va a per mitir —r omper el hielo“ con VStudio y desarr ollar algo visible en pocos momentos,
8/17/2019 Auto Practica c Sharp
6/15
HADA Depar tamento de Lengua jes y Sistemas Inf or máticos
6
de f or ma que, si pinchamos con el botón der echo del r atón sobr e el nombr e de nuestr a solución en la zona r edondeada de azul de la f igur a anter ior , podr emos ver una imagen similar a la que se muestr a f igur a siguiente.
Figur a 6.
Al seleccionar esta opción tendr emos una ventana que se muestr a seguidamente en la f igur a siguiente y que es la misma que cuando cr eamos el pr oyecto sobr e el que estamos tr aba jando actualmente, es decir , la solución “Solution1“. De esta f or ma, y dado que ya conocemos el aspecto de la ventana de cr eación de pr oyectos, podr emos de f or ma r ápida, seleccionar una de las “plantillas“ par a “pr oyectos“ a desarr ollar con el lengua je “C#“ que se nos of r ecen, el cual ser á, par a esta pr imer a sesión el denominado “ Aplicación de consola“. Debemos r ecor dar cambiar el nombr e y la r uta de gr abación si f uer a necesar io a este nuevo pr oyecto que f or mar á parte de nuestr a pr imer a solución en .NET y que ya consta de un pr oyecto.
Figur a 7.
Una vez cr eado el pr oyecto en lengua je C#, de nuevo el entor no .NET nos cr ea una ser ie de f icher os en dif er entes dir ector ios de nuestr o sistema, con el ob jetivo de adelantar nos tr aba jo y ahorr ar nos tar eas poco pr oductiva.
Siguiendo con la creación de nuestro programa “Hola Mundo“, comprobaremos queVisual Studio nos proporciona la imagen que podemos ver en la figura siguiente, en laque ya tenemos preparada toda la infraestructura para poder comenzar a desarrollar
8/17/2019 Auto Practica c Sharp
7/15
HADA Depar tamento de Lengua jes y Sistemas Inf or máticos
7
una aplicación de Consola (o MS-DOS), utilizando el lenguaje de desarrollo C#,que será el que mayoritariamente utilizaremos a lo largo de la asignatura.
Figur a 8.
El pr imer paso par a poder comenzar a r ealizar el desarr ollo de nuestr o pr ogr ama consiste en cambiar el nombr e al f icher o Program.cs, que es el nombr e por def ecto que el IDE pr opor ciona a los ob jetos cr eados de maner a automática, es decir:
[Tipo Ficher o][númer o]*\.[extensión]
E jemplos:
Solution1.sln ! [Solution][1].[sln] Class1.cs ! [Class][1].[cs]
!y seguidamente ya podemos comenzar a escr ibir código f uente C# con el editor en la zona dedicada a ello y utilizando todos los conocimientos que hemos obtenido en nuestr as clases de teoría así como en nuestr as sesiones de autoapr endiza je mediante las bibliogr af ías r ecomendadas en la asignatur a.
8/17/2019 Auto Practica c Sharp
8/15
HADA Depar tamento de Lengua jes y Sistemas Inf or máticos
8
Figur a 9.
Observando la imagen anter ior , podemos ir compr obando cómo, ante la intr oducción de deter minadas instr ucciones de C#, el pr opio IDE detecta que System es una palabr a especial y que además es un espacio de nombres, con lo cual los of r ece mediante un menú contextual todos los métodos y pr opiedades que tiene en f or ma de menú, a lo que se le añade una ayuda contextual mediante el típico bocadillo de ayuda Windows.
4.- MI PRIMER ERROR
4.1.- Mi primer error sintáctico
Supongamos que hemos tecleado la pr imer a y única línea del pr ogr ama par a saludar al mundo mediante C#, per o en un alar de de mala coor dinación entr e la escr itur a y la
pr onunciación del inglés, tecleamos la sentencia de maner a incorr ecta como podemos observar en la f igur a siguiente.
Como podemos observar , nuestr o err or apar ece convenientemente subr ayado par a que no se nos olvide que está ahí. Ese subr ayado azul estar á ahí hasta que escr ibamos corr ectamente el nombr e del método que quer emos emplear , y que en este caso es Wr iteLine.
8/17/2019 Auto Practica c Sharp
9/15
HADA Depar tamento de Lengua jes y Sistemas Inf or máticos
9
Figur a 10.
4.2.- Mi primera corrección de errores: Como podemos observar en la f igur a anter ior , nos apar ece el pr oblema que
hemos tenido en lo que se llama la “Ventana de Tar eas“ o “Ventana de err or es“. Si hacemos doble click en la línea en la que se nos muestr a el err or , automáticamente el cur sor se situar á sobr e la zona del código f uente en la que está éste, quedando el IDE a la esper a de que utilicemos alguna de nuestr as neur onas par a arr eglar lo.
Bien, pues una vez corr egido el pr oblema, podr emos pr oceder a gener ar la
solución y disf r utar de la visualización poster ior de nuestr o mensa je “Hola Mundo“ en la consola MS-DOS de nuestr o pc. Disponemos de var ias opciones par a la gener ación/compilación de nuestr os pr oyectos, aunque pr incipalmente son tr es las que emplear emos con mayor f r ecuencia, y son las que podemos obser var en la f igur a siguiente.
Figur a 11.
Como siempr e con Studio, observamos que hay var ios caminos y f or mas de hacer lo mismo, es decir , de cr ear el deseado e jecutable mediante las opciones que el entor no nos pr opor ciona par a tal f in.
8/17/2019 Auto Practica c Sharp
10/15
HADA Depar tamento de Lengua jes y Sistemas Inf or máticos
10
No obstante, y teniendo en las f igur as anter ior es los caminos par a hacer esto, veamos algunas de las dif er entes maner as de gener ar nuestr os pr oyectos / soluciones con el IDE:
• Generar soluciónEsta opción r ealizar á las tar eas de compilación y linkado de los dif er entes pr oyectos que compongan nuestr a solución. Si nuestr a solución únicamente está f or mado por una aplicación de consola, esta opción compilar á el pr oyecto y gener ar á un e jecutable sólo en caso de que el código f uente se encuentr e libr e de err or es
• Compilación por lotesSi nuestr a solución o pr oyecto son tan gr andes que pueden llegar a compr ometer los r ecur sos de nuestr a máquina (supongamos que desarr ollamos un pr ocesador de textos con C# y quer emos compilar lo), tendr emos la posibilidad de gener ar los en batch o por lotes, es decir , cómo y cuando la máquina pueda, y a tr ozos
Aunque siempr e nos quedar á la combinación de teclas Ctr l + F5 que e jecuta el pr oyecto sin
compilar lo si quier a.
5- EL DEPURADOR Supongamos que, por alguna r azón que desconocemos, no f unciona el
pr ogr ama “Hola Mundo“ que acabamos de desarr ollar y necesitamos r ecurr ir a algún tipo de herr amienta de depur ación, al estilo de los suf r idos y conocidos pr intf que nos ayudan o ayudaban en las pr ácticas de otr as asignatur as.
Af ortunadamente, los entor nos de que disponemos desde hace algunos años hasta la actualidad, no r equier en que se r ellenen los pr ogr amas f uente de enor mes cantidades de sentencias de contr ol al estilo de:
cout
8/17/2019 Auto Practica c Sharp
11/15
HADA Depar tamento de Lengua jes y Sistemas Inf or máticos
11
Figur a 12
• Administr ador de conf igur ación: Esta opción es importante desde el punto de vista de la depur ación de pr oyectos
independientemente de su tamaño. Por def ecto, disponemos de dos conf igur aciones estándar y pr edef inidas por el IDE, las cuales son Debug y Release. Por def ecto, cuando nos encontr amos desarr ollando un pr oyecto nos encontr amos con la conf igur ación de Debug seleccionada por def ecto y solemos decir que —estamos en
debug o en modo depur ación“. Esta conf igur ación nos per mite establecer puntos de r uptur a (tan deseados cuando tr aba jamos con otr os lengua jes o entor nos) y seguir la e jecución de nuestr o pr oyecto paso a paso, instr ucción por instr ucción compr obando dónde tenemos el err or par a poder solventar lo r ápidamente. Esta conf igur ación de depur ación posee la car acterística de que utiliza libr erías de Windows que no son las de pr oducción, sino las de depur ación, por lo cual, una vez f inalizada la f ase de desarr ollo y depur ación de err or es en nuestr o pr oyecto, deber emos tomar nos la molestia de cambiar de conf igur ación y pasar a modo “Release“, par a gener ar la ver sión def initiva de nuestr o pr oyecto con las libr erías de pr oducción. Es decir , una vez que nuestr o pr oyecto esté libr e de err or es y nos encontr emos en situación de gener ar un e jecutable o una dll o cualquier a que sea la f or ma del “deliver able“ que estemos constr uyendo, deberíamos cambiar la conf igur ación de nuestr o pr oyecto y cambiar de modo Debug a modo Release, tal como podemos observar en la f igur a siguiente.
Cuando pasemos al modo Release con la intención de gener ar el e jecutable def initivo de nuestr o pr ogr ama no debemos de jar ningún punto de r uptur a en la aplicación.
6.- MI PRIMERA APLICACIÓN
Pr ocedemos seguidamente a cr ear una aplicación de maner a más detallada mediante e jer cicios paso a paso.
8/17/2019 Auto Practica c Sharp
12/15
HADA Depar tamento de Lengua jes y Sistemas Inf or máticos
12
6.1.- Ejercicio de Desarrollo de una aplicación con VisualStudio .NET
6.1.1.- Gener ación de una clase con C#
Paso 1) Desde el explor ador de soluciones, selecciona con el botón der echo la solución y elige Agr egar/ Agr egar Pr oyecto. (o desde Archivo Agregar N uevo
Proyecto) Desde esta ventana selecciona Biblioteca de Clases. Lenguaje C#.Observarás como se añade un nuevo proyecto a la solución ya def inida.
La idea de pr oyecto corr esponde con la de con junto de pr ogr amas escr itos con un único lengua je de pr ogr amación. La idea de solución corr esponde con el concepto de e jecutable. Una solución puede estar f or mada por uno o más pr oyectos, del cuál solo uno de ellos es el pr oyecto inicial. La gestión de las soluciones se puede r ealizar a tr avés del explor ador de soluciones.
Paso 2) Accede con el botón der echo del r atón a la libr ería de clases (ClassLibr ary1) dentr o del explor ador de soluciones, selecciona Cambiar Nombr e e intr oduce Libr er ia1. De la misma f or ma cambia el nombr e de la clase Class1 por Minombr e.
Paso 3) Activa la ventana de la vista de clases, accediendo a la barr a de menú Ver/Vista de Clases.
La vista de clases per mite visualizar y modif icar las pr opiedades de las clases def inidas en la aplicación. Selecciona la clases y desde la ventana de pr opiedades cambia su nombr e por el de Minombr e. Observa como cambia automáticamente el código f uente asociado a la clase.
Paso 4) Añade el siguiente método a la clase: // Este método devuelve mi nombre public string MostrarMiNombre(){
return Juan;
}
Paso 5) Par a compilar el pr oyecto selecciona la opción Gener ar/Gener ar Solución del menú pr incipal, con e lo se muestr a la ventana de r esultados en la que se indican los posibles err or es detectados en el código.
8/17/2019 Auto Practica c Sharp
13/15
HADA Depar tamento de Lengua jes y Sistemas Inf or máticos
13
Figur a 18.
En este caso se muestr a un err or , ya que hemos olvidado deliber adamente las comillas que cierr an la cadena utilizada. Si pinchas con el r atón dos veces el cur sor se posiciona en la parte del código donde se pr esume que se ha la el err or . Añada las comillas — al inicio y f inal de Juan y vuelve a gener ar . En este caso la compilación no dar á err or es.
6.1.2.- Gener ación de una aplicación de consola
Paso 1) Igual que en el paso anterior, agrega un nuevo proyecto. Desde esta ventana selecciona Pr oyecto de C# con inter f az de consola. Observar ás como se añade
un nuevo pr oyecto a la solución ya def inida.
Paso 2) Par a poder utilizar la libr ería de clases def inida en la parte anter ior , desde el explor ador de soluciones selecciona el nuevo pr oyecto cr eado con el botón der echo y elige Agr egar Ref er encia. Desde la opción de Pr oyectos
selecciona Libr ería1.
Figur a 20.
Ahor a en el código escr ibe lo siguiente:
static void Main(string [] args){
ClassLibrary1.Minombre
cadena
=
new
ClassLibrary1.Minombre();Console.WriteLine(cadena.MostrarMiNombre());
}
8/17/2019 Auto Practica c Sharp
14/15
HADA Depar tamento de Lengua jes y Sistemas Inf or máticos
14
Para ejecutar la aplicaciónpulsa F5. Dar á un err or ya que por def ecto la solución se asocia al pr imer pr oyecto que se ha cr eado, que en este caso er a una biblioteca de clases y estas no son e jecutables. Par a def inir la inter f az de consola como pr oyecto inicial s elecciona dentr o del explor ador de soluciones con el botón der echo del r atón y elige Establecer como pr oyecto de inicio. Al e jecutar ahor a la solución se muestr a por
consola: Juan
6.1.3.- Gener ación de una aplicación de Windows con Visual Basic .NET
Paso 1) De la misma f or ma que en la parte anter ior añade un nuevo pr oyecto (en este caso de Visual Basic y de tipo Aplicación par a Windows. Apar ecen nuevos elementos de inter és.
El f or mular io es la parte centr al de las aplicaciones Windows. Per mite contener contr oles como botones, ca jas de texto, menús etc.
Figur a 21.
El cuadr o de herr amientas contiene los contr oles que podemos asociar a un f or mular io. La f or ma de colocar los es simplemente seleccionando uno y arr astr ándolo dentr o del f or mular io.
Paso 2) Selecciona y arr astr a un botón (button) y una ca ja de texto (textBox1) dentr o del f or mular io.
Paso 3) Agr ega una r ef er encia de la libr ería1 dentr o de este pr oyecto, tal como hiciste en la parte anter ior .
Paso 3) Selecciona el botón con el botón der echo y elige Pr opiedades. Dentr o de pr opiedades pincha sobr e el icono del r ayo y selecciona el evento Click y escr ibe el siguiente código.
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button1.Click Dim nombre As New ClassLibrary1.Minombre
TextBox1.Text = nombre.MostrarMiNombre()End Sub
8/17/2019 Auto Practica c Sharp
15/15
HADA Depar tamento de Lengua jes y Sistemas Inf or máticos
15
Def ine este pr oyecto como pr oyecto de inicio de la solución. Tr as ello e jecuta la solución y pulsa el botón del f or mular io.
6.1.4.- Gener ación de una aplicación Web con ASP .NET
1) Agr egamos un nuevo pr oyecto del tipo C# y Aplicación Web ASP .NET VACIA 2) Establecemos el nuevo pr oyecto cr eado como pr oyecto de inicio de la
aplicación. 3) Añadimos r ef er encia a la libr ería de clases.4) En el explorador de soluciones, en el proyecto web con el botón derecho seleccionamos
Agregar nuevo elemento --> Web Forms, con lo que añade una nueva página web al
proyecto (WebForm1.aspx) 5) En esa página, añadimos un botón (desde el cuadr o de herr amientas) y le
cambiamos su nombr e (utilizando la ventana pr opiedades) y le asignamos ¿Quier es saber mi nombr e?.
6) Añadimos el siguiente código al evento por def ecto del botón (Pulsar dos veces sobr e el mismo).
private void Button1_Click(object sender, System.EventArgs e){
ClassLibrary1.Minombre nombre = new ClassLibrary1.Minombre();
Response.Write(nombre.MostrarMiNombre());
}
7) E jecutamos (pulsando F5)
Figur a 23.
Como podemos observar en la f igur a anter ior , la e jecución se r ealiza sobr e el navegador web de nuestr a máquina.