Sunteți pe pagina 1din 5

Copyright Todos los Derechos Reservados - Cibertec Per SAC

Tipo
Captulo
Duracin

I.

:
:
:

Gua de Laboratorio
Visual Studio 2015 Developer C#
45 minutos

OBJETIVO
Desarrollar una aplicacin bsica con Visual Studio.

II.

REQUISITOS
Los siguientes elementos de software son necesarios para la realizacin del laboratorio:

III.

Windows 8 (como mnimo Windows 7)


Visual Studio 2015 (como mnimo Visual Studio 2013)

DESCRIPCIN
III.1. Tarea 1
Crear una primera solucin/proyecto utilizando C#.NET y POO
Actividades
1. Ingresar a Visual Studio.
2. Abrir la ventana de New Project (Men File > New > Project...).
3. En la ventana de New Project seleccionar en el panel izquierdo: Installed >
Templates > Visual C#, seleccionar Console Application, nombrar a la aplicacin
MiPrimeraApp y hacer clic en OK.

Cibertec Per S.A.C Visual Studio 2015 Developer C# (PDS1508)

4.

Hacer clic derecho en el Proyecto MiPrimeraApp y crear una nueva Clase llamada
Perro. (Proyecto > Add > Class)

Cibertec Per S.A.C Visual Studio 2015 Developer C# (PDS1508)

5. Definir la clase Perro y las clases que corresponden a distintas razas dentro del
archivo Perro.cs:
namespace MiPrimeraApp
{
public abstract class Perro
{
private int nivelDeEntrenamiento;
protected int NivelDeEntrenamiento
{
get
{
return nivelDeEntrenamiento;
}
set
{
if (value < 1)
nivelDeEntrenamiento = 1;
else
{
if (value > 5)
nivelDeEntrenamiento = 5;
else
nivelDeEntrenamiento = value;
}
}
}
protected int NivelDeAgresividad { get; set; }
protected Perro(int nivelDeEntrenamiento)
{
NivelDeEntrenamiento = nivelDeEntrenamiento;
NivelDeAgresividad = 3;
}
public string Ladrar()
{
if ((NivelDeAgresividad - NivelDeEntrenamiento) > 3)
return "Guau!!";
return "...";
}
public abstract void RecibeEntrenamiento();
}
public class Chihuahua : Perro
{
public Chihuahua(int nivelDeEntrenamiento)
: base(nivelDeEntrenamiento)
{
NivelDeAgresividad = 5;
}
public override void RecibeEntrenamiento()
{
NivelDeEntrenamiento = NivelDeEntrenamiento + 1;
}
}
public class Boxer: Perro
{

Cibertec Per S.A.C Visual Studio 2015 Developer C# (PDS1508)

public Boxer(int nivelDeEntrenamiento)


: base(nivelDeEntrenamiento)
{
}
public override void RecibeEntrenamiento()
{
NivelDeEntrenamiento = NivelDeEntrenamiento + 2;
}
}
public class Doberman : Perro
{
public Doberman(int nivelDeEntrenamiento = 4)
: base(nivelDeEntrenamiento)
{
NivelDeAgresividad = 4;
}
public override void RecibeEntrenamiento()
{
NivelDeEntrenamiento = NivelDeEntrenamiento + 1;
}
}
}

6. Ingresar el siguiente fragmento de cdigo en Program.cs para instanciar las clases y


llamar a sus mtodos.
using System;
namespace MiPrimeraApp
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Creando Chihuahua");
var perro1 = new Chihuahua(1);
Console.WriteLine("Perro 1: {0}", perro1.Ladrar());
perro1.RecibeEntrenamiento();
perro1.RecibeEntrenamiento();
Console.WriteLine("Perro 1 entrenado: {0}",
perro1.Ladrar());
Console.WriteLine("Creando Boxer");
var perro2 = new Boxer(1);
Console.WriteLine("Perro 2: {0}", perro2.Ladrar());
Console.WriteLine("Creando Doberman");
var perro3 = new Doberman();
Console.WriteLine("Perro 3: {0}", perro3.Ladrar());
Console.ReadLine();
}
}
}

Cibertec Per S.A.C Visual Studio 2015 Developer C# (PDS1508)

7. Ubicar el cdigo de cada clase en un nuevo archivo con el nombre de la clase


(Proyecto > Add > Class por cada clase).
8. Adicional: Investigar sobre el Patrn de Diseo Strategy (Design Patterns) y tratar
de
aplicarlo
en
la
lgica
del
mtodo
RecibeEntrenamiento.
(http://www.dofactory.com/net/design-patterns)

IV. EVALUACIN
1. Responder a las siguientes preguntas:

Qu es el .NET Framework?
Cul es la diferencia entre un Proyecto y una Solucin?
Cul es la diferencia entre Clase y Objeto?
Cul es la diferencia entre una Propiedad y un Campo? (Property vs Field).
Para qu sirve el concepto de Herencia?
Qu es una Clase Abstracta (Abstract)? En el Laboratorio por qu definimos la
clase Perro como abstracta?
Cul es la diferencia entre mtodos public, protected y private?

Cibertec Per S.A.C Visual Studio 2015 Developer C# (PDS1508)

S-ar putea să vă placă și