Mostrando entradas con la etiqueta POO. Mostrar todas las entradas
Mostrando entradas con la etiqueta POO. Mostrar todas las entradas

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: