lunes, mayo 25, 2009

Unidad II

Gestión de Proyectos de software
El paradigma orientado a objetos:
La programación orientada a objeto surge de la necesidad de simplificar la estructura de los programas para animar al desarrollador a concentrarse en en sus objetivos.
Enlace para ampliar la información del tema:
Ejemplo de POO en C Sharp
En el siguiente ejemplo tomado del libro Cómo programar en C Sharp de Deitel, se utiliza una clase llamada tiempo. Dicha clase posee tres atributos (hora, minuto, segundo; todos variables enteras), y tres métodos. Vamos con el código, y para una explicación visitar: http://casidiablo.net/poo-c-sharp/#more-2268


using System;
public class Tiempo
{
private int hora; // 0 -23
private int minuto; // 0-59
private int segundo; // 0-59
// Constructor de la clase Tiempo que inicialize
//las variables a cero para poner la hora en media noche
public Tiempo()
{
cambiarHora( 0, 0, 0 );
}
// este metodo asigna una nueva hora en formato 24-horas.
public void cambiarHora(
int valorHora, int valorMinuto, int valorSegundo )
{
hora = ( valorHora >= 0 && valorHora < 24 ) ?
valorHora : 0;
minuto = ( valorMinuto >= 0 && valorMinuto < 60 ) ?
valorMinuto : 0;
segundo = ( valorSegundo >= 0 && valorSegundo < 60 ) ?
valorSegundo : 0;
}
// convertir a hora universal con el metodo format
public string horaUniversal()
{
return String.Format(
"{0:D2}:{1:D2}:{2:D2}", hora, minuto, segundo );
}
// convertir a tiempo estandar (12 horas) usando el metodo format
public string horaEstandar()
{
return String.Format( "{0}:{1:D2}:{2:D2} {3}",
( ( hora == 12 hora == 0 ) ? 12 : hora % 12 ),
minuto, segundo, ( hora < 12 ? "AM" : "PM" ) );
}
} using System;
public class Tiempo
{
private int hora; // 0 -23
private int minuto; // 0-59
private int segundo; // 0-59
// Constructor de la clase Tiempo que inicialize
//las variables a cero para poner la hora en media noche
public Tiempo()
{
cambiarHora( 0, 0, 0 );
}
// este metodo asigna una nueva hora en formato 24-horas.
public void cambiarHora(
int valorHora, int valorMinuto, int valorSegundo )
{
hora = ( valorHora >= 0 && valorHora < 24 ) ?
valorHora : 0;
minuto = ( valorMinuto >= 0 && valorMinuto < 60 ) ?
valorMinuto : 0;
segundo = ( valorSegundo >= 0 && valorSegundo < 60 ) ?
valorSegundo : 0;
}
// convertir a hora universal con el metodo format
public string horaUniversal()
{
return String.Format(
"{0:D2}:{1:D2}:{2:D2}", hora, minuto, segundo );
}
// convertir a tiempo estandar (12 horas) usando el metodo format
public string horaEstandar()
{
return String.Format( "{0}:{1:D2}:{2:D2} {3}",
( ( hora == 12 hora == 0 ) ? 12 : hora % 12 ),
minuto, segundo, ( hora < 12 ? "AM" : "PM" ) );
}
}
Con el siguiente código, utilizamos la clase Tiempo:

using System;
class PruebaTiempo {
static void Main( string[] args ) {
Tiempo tiempo = new Tiempo(); // llamada al constructor de Tiempo
string salida;
// mostrar datos iniciales
salida = "Hora universal inicial es: " +
tiempo.horaUniversal() +
"\nHora estandar inicial es: " +
tiempo.horaEstandar();
// cambiar hora (valida)
tiempo.cambiarHora( 13, 27, 6 );
// aniadir nueva hora a la salida
salida += "\n\nHora universal despues de cambiada: " +
tiempo.horaUniversal() +
"\nHora estandar despues de cambiada: " +
tiempo.horaEstandar();
// cambiar hora (invalida)
tiempo.cambiarHora( 99, 99, 99 );
salida += "\n\nDespues de poner valores invalidos: " +
"\nHora universal: " + tiempo.horaUniversal() +
"\nHora estandar: " + tiempo.horaEstandar();
Console.WriteLine( salida );
}
}
El resultado del programa es el siguiente:
Hora universal inicial es: 00:00:00
Hora estandar inicial es: 12:00:00 AM

Hora universal despues de cambiada: 13:27:06
Hora estandar despues de cambiada: 1:27:06 PM

Despues de poner valores invalidos:
Hora universal: 00:00:00
Hora estandar: 12:00:00 AM

Gestión de proyectos de software orientados a objetos:


No hay comentarios:

Publicar un comentario