Está en la página 1de 38

Sistema de Reserva de Horario Medico

Estndares de Programacin
Programacin (Nombre)
Versin 1.0
Historial de Versiones
Fecha Versin Descripcin Autor
29/06/2013 1.0 Elaboracin del documento.



Sistema de Reserva de Horario Medico


Tabla de Contenidos




Sistema de Reserva de Horario Medico


Organizacin del proyecto
Proyecto:
Contar con un servicio que se encargue de recopilar, procesar y consolidar la informacin
respecto a la reserva de horarios mdicos. El producto a desarrollar es un sistema web
global para lograr el control de reservas automatizado, con la intencin de agilizar su
funcionamiento. Las reas a tratar por el sistema web son: gestin de recursos humanos,
staff de mdicos, reservas de citas mdicas.

Estndares para la Creacin de la Base de Datos:
Estndares:
Revisin de Pares

Es la revisin del cdigo que un miembro del equipo ha escrito. Esta revisin es realizada por l
mismo o por un par del equipo. El equipo evala el cdigo para identificar fortalezas, debilidades,
oportunidades e inconsistencias con lo descrito en el presente documento.

La revisin de pares se realiza a travs de todo el desarrollo de cdigo (desarrollo de la aplicacin,
refactoring, mantenimiento, integracin y reingeniera).

Hay 4 principales razones para realizar la revisin de pares:

1. Mejora la calidad en el desarrollo de cdigo; mejorando las habilidades del desarrollador
2. Es una forma efectiva de compartir conocimiento
3. Ayuda a garantizar que las polticas de cdigo han sido implementadas correctamente
4. Mejora la cohesin con el equipo de desarrollo

La revisin de pares es un proceso continuo. La revisin se realiza al finalizar el desarrollo de una
determinada funcionalidad.



Sistema de Reserva de Horario Medico


Pruebas de Unidad

La prueba de unidad es probar la funcionalidad de una clase. Se pasan datos a los mtodos y se
verifica la obtencin y seteo de los datos.

Las pruebas de unidad se realizan a todas las clases en el desarrollo.

Si la funcionalidad actual de un objeto difiere de lo esperado, entonces puede afectar
adversamente a la colaboracin entre objetos, lo cual puede afectar la estabilidad y fiabilidad del
Sistema.

Notacin

Actualmente tenemos 3 tipos de notacin de cdigo: Pascal, Camel y el hngaro.

Utilizaremos el estndar de notacin Camel-Pascal

1. Miembros de instancia, variables/campos y parmetros: Usar notacin Camel (Ejemplo:
miVariable)
2. Variables para los controles Web/Windows: Usar notacin Hngara (Ejemplo: btnAceptar)
3. Todos los dems identificadores: Usar notacin Pascal (Ejemplo: MiClase)
4. Para nombrar los archivos que tengan significado para la arquitectura se utilizara la notacin
Pascal con el nombre propio de la funcionalidad en ingls (Ejemplo ClienteController.aspx,
VentasServices)
Notacin Pascal
Es una notacin de cdigo para nombrar a los identificadores.

En la notacin Pascal la primera letra del identificador es en mayscula, luego las siguientes letras
son en minsculas hasta iniciar la segunda palabra, si hay una segunda palabra, se pone en
mayscula la primera letra de la segunda palabra, luego las siguientes letras de la palabra se
ponen en minsculas y as sucesivamente.



Sistema de Reserva de Horario Medico


La notacin Pascal se usa para identificar Clases, Constantes, Delegados, Enumeraciones,
Valores en las enumeraciones, Eventos, Manejadores de eventos, Excepciones, Variables de
miembros estticos, Interfaces, Mtodos, Namespace y propiedades.

Ejemplos:

Identificador Notacin Ejemplo
Clase Pascal Auto
Constante Pascal ValorMaximo
Delegado Pascal CambiarInformacion
Enum Type Pascal ElegirColor
Enum Value Pascal SoloNegro
Evento (Delegado) Pascal ChangeDirection
Event Handler Pascal OnChangeDireccion
Exception Pascal FueraDeServicioException
Variable Miembro
Esttica
Pascal Valor
Interfase Pascal IVentas
Mtodo Pascal PararServicio()
Namespace Pascal Empresa.ReglasDeNegocio
Propiedad Pascal Radiador

La notacin pascal representa a los identificadores que son significantes, mientras que la notacin
Camel es usada para representar identificadores que son menos significantes y accedidos a travs
de mtodos (ejemplo variables miembro de instancia y parmetros).

Notacin Camel

La notacin Camel es usada para nombrar identificadores.


Sistema de Reserva de Horario Medico



En la notacin Camel la primera palabra del identificador es en minscula, la primera letra de la
segunda palabra (en caso exista) es en mayscula y el resto es en minscula. El patrn utilizado
para la segunda palabra es usado para las subsecuentes palabras.

Ejemplos:

Identificador Notacin Ejemplo
Variable miembro de
instancia
Camel cuentaTerceros
Parmetro Camel parametroCuenta



Formato de Cdigo
Identacin

Contenido en Bloque:
Identar el abrir y cerrar llaves ({}).
Identar el contenido dentro de las sentenciase case.

Nueva Lnea de Cdigo

Llaves
Colocar una llave abierta en una nueva lnea para los tipos.
Colocar una llave abierta en una nueva lnea para los mtodos.
Colocar una llave abierta en una nueva lnea para los bloques de control de flujo.
Palabras Clave
Colocar else en una nueva lnea.
Colocar catch en una nueva lnea.
Colocar finally en una nueva lnea.


Sistema de Reserva de Horario Medico



Espacios

Declaracin de Mtodos
Insertar un espacio entre el nombre del mtodo y el parntesis abierto.
Insertar un espacio entre los parntesis y el listado de argumentos.
Insertar un espacio entre los argumentos vacos.

Llamadas a los mtodos
Insertar un espacio entre el nombre del mtodo y los parntesis.
Insertar un espacio entre los parntesis y el listado de argumentos.
Insertar un espacio entre los argumentos vacos.

Otros
Insertar un espacio luego de colocar una palabra de control de flujo.
Insertar un espacio dentro de los parntesis en una expresin.
Insertar un espacio dentro de los parntesis al momento de realizar un cast.
Insertar un espacio en los parntesis del constructor.
Insertar un espacio despus de usar el cast.


Corchetes
Insertar un espacio antes de abrir un corchete.
Insertar un espacio dentro de los corchetes vacos.
Insertar espacios dentro de los corchetes.

Delimitadores
Insertar un espacio despus de la coma.
Insertar un espacio despus del punto.
Insertar un espacio despus del punto y coma en una sentencia for.









Sistema de Reserva de Horario Medico


Estructura del Cdigo

.NET tiene 3 niveles para estructurar el cdigo: assembly; namespace, y complex types (Interface,
Class, etc.).

Elegimos assembly para estructurar una funcionalidad especfica o podemos elegir estructurar una
funcionalidad dentro de un namespace jerrquico anidado o elegimos estructurar una funcionalidad
dentro de una interface, una estructura, una clase, una clase parcial o genrica. La eleccin que
hagamos para estructurar el cdigo impacta no solo en la accesibilidad del mismo sino tambin en
la flexibilidad y Mantenibilidad del cdigo. Mientras ms grande es la aplicacin ms alto es el
impacto.


Desarrollo del Cdigo
Desarrollo de Clases

La funcionalidad de una aplicacin viene de la colaboracin de clases concretas (objetos),
entonces el desarrollo de clases juega un rol principal en la construccin de una aplicacin.

El desarrollo de clases incluye identificar el rol de una clase, determinar la interface que se
expondr para colaborar con otras clases concretas. Identificar como se utilizar la interface y
construir la funcionalidad usando algoritmos.

El desarrollo de clases se lleva a travs de todo el desarrollo de la aplicacin. Las clases son
desarrolladas dentro de los namespace dentro del framework de una aplicacin. Hay varios
elementos que se consideran necesarios para el desarrollo de las clases, incluyendo lo siguiente:

Construir una clase como un objeto colaborativo: Aunque una clase es la plantilla de un objeto,
esto no se da hasta que la clase es instanciada y entra en colaboracin con otros objetos.


Sistema de Reserva de Horario Medico



Patrones de diseo: Considere si los patrones de diseo le ayudarn en el desarrollo de la
capacidad colaborativa al momento de crear, estructurar o aplicar el comportamiento de una clase.

Construir una interface: Determinar que funcionalidad de cada clase se expondr a otras clases,
en otras palabras Cul es el rol colaborativo de la clase dentro de la aplicacin?
Herencia: Considerar el papel de una clase y la herencia de una interface en la evolucin de una
interface y la funcionalidad de una clase.

Composicin/Contencin: Considerar el papel de una composicin o contencin en la evolucin
de una interface y la funcionalidad de una clase.

Encapsulamiento/Accesibilidad: Considerar la forma ms apropiada para encapsular el acceso a
la funcionalidad a travs de modificadores.

Estado: Identificar como las clases manejarn el estado.

Funcionalidad: Funcionalidad de cdigo, considerar tcnicas de codificacin (encapsular, abstraer
clases crticas)

Prueba de Unidad: Probar la funcionalidad expuesta por una clase.

Prueba de Colaboracin: Probar la colaboracin entre la instancia de la clase y sus objetos
colaboradores para identificar si las relaciones estn trabajando de la forma prevista.

Iteracin: Iterar el diseo y construccin de una clase.

Estos elementos no son los nicos y no son considerados aislados, a menudo cuando un elemento
(por ejemplo la funcionalidad) es considerado se deben considerar otros en el diseo y el desarrollo
(por ejemplo, patrones de diseo, encapsulamiento, herencia, etc.).


Sistema de Reserva de Horario Medico





Composicin

Aunque la herencia de clases es potente, tiene un costo: es relativamente inflexible comparado con
la composicin, la cual ofrece flexibilidad a un mnimo costo.

Composicin o contencin se refiere a una clase que adquiere funcionalidad desde la instancia
interna de otras clases; en otras palabras, un objeto es compuesto por otros objetos y aprovecha su
funcionalidad en lugar de implementarla o heredarla.

La composicin es usada cuando un objeto requiere una funcionalidad dada y esa funcionalidad
est disponible en otros objetos.

La composicin puede ser definida como sigue:


public class Automovil
{
private eng Maquinaria;
private rad Radiador;
}

Herencia de Clase

Es la capacidad para, progresiva y estratgicamente, agrupar o estructurar una funcionalidad desde
una abstraccin base a travs de su especializacin o implementacin.



Sistema de Reserva de Horario Medico


.NET soporta herencia simple de una Clase (esto es, una clase puede heredar directamente desde
solamente otra clase). La herencia de clase es transitiva; en otras palabras, una clase de tercera
generacin puede heredar los miembros directamente desde la segunda (su clase base) e
indirectamente desde la primera generacin.

Para participar en herencia de clases, una subclase debe residir en el mismo espacio de
compilacin como la clase padre. Sin embargo, si la clase es modificado como clase de tipo parcial
una vez compilado ya no puede ser extendida.

La herencia de clase puede especificarse como sigue:


public class Carro: Automovil
{;}


Donde la clase Car es la subclase (especializacin) y Automovil es la clase base (generalizacin o
abstraccin).
Herencia de Interface

Ofrece la capacidad para definir una interface que puede ser implementada a cualquier nivel en un
una herencia jerrquica.

La herencia de interface ofrece una herencia mltiple de una interface, pero a diferencia de una
clase, no ofrece la implementacin.

La herencia de interface ofrece la posibilidad para extender y reusar el diseo publicado en una
clase, interface o estructura dado por un interface. Para participar de la herencia de interface, el tipo
implementado debe residir en el mismo espacio de compilacin como un tipo de interface.


Sistema de Reserva de Horario Medico



La herencia de interface puede ser especificado como:


interface IConvertible
{
void AbrirConvertible();
}
//Clase Carro heredando de IConvertible
public class Carro: IConvertible
{
//implementando AbrirConvertible()
void AbrirConvertible ();
{//implementando funcionalidad }
}

Overriding

Es la posibilidad que tiene una subclase para imponer su propia funcionalidad sobre un mtodo
virtual.

Es un proceso en el cual el mtodo virtual de una clase base es sobrescrito por un mtodo de la sub
clase, el cual tiene el mismo nombre y misma firma.

La firma de un mtodo implica el nombre del mtodo y el nmero de modificadores y tipos en sus
parmetros. No incluye el tipo de retorno del mtodo).

La funcionalidad base o padre debe ser genrica o generalizada por defecto; la sobre escritura es
usada para especializar la funcionalidad en una implementacin de clase dada.


Sistema de Reserva de Horario Medico



La sobre escritura es configurada en la clase base donde el mtodo es modificado con la palabra
clave virtual y su efecto es una subclase, donde el mtodo es modificado con la palabra clave
override.

La sobre escritura puede ser especificada como sigue:


//cdigo en la clase base
abstract class Automovil
{
//miembro virtual
virtual void Iniciar()
{//iniciar funcionalidad generic para automovil
}
}

//cdigo en las subclases
public class Carro: Automovil
{
//miembreo anular
override void Iniciar()
{//funcionalidad de inicio especializado para un carro
}
}

Overloading



Sistema de Reserva de Horario Medico


La sobrecarga es la capacidad de incluir ms de un mtodo con el mismo nombre en la misma
clase.

Un mtodo sobrecargado tiene el mismo nombre que otro mtodo, en la misma clase, pero tiene
una firma diferente. La firma de un mtodo implica el nombre y el nombre de modificadores y tipos
de parmetros; no incluye el tipo de retorno del mtodo.

La sobrecarga le brinda al desarrollador de clases la flexibilidad de implementar funcionalidad y
ofrece un bajo riesgo para implementar funcionalidad en una clase establecida sin tener que realizar
una reingeniera de la clase.

La sobrecarga de mtodos se puede realizar en una clase, subclase o interface.

La sobrecarga de mtodos puede especificarse como sigue:


public class Carro : Automovil
{
public void Iniciar()
{ ;}
// Esto sobrecarga mtodo Start () mtodo
public void Iniciar(bool ArrancarEnFrio)
{ ;}
}

Abstract

Un mtodo o clase pueden ser modificados con la palabra clave abstract la cual difiere la
implementacin a la subclase.


Sistema de Reserva de Horario Medico



El modificador abstract, cuando es usado en una clase, significa que la clase no puede ser
instanciada, y cuando es usada en un mtodo, significa que el mtodo debe ser implementado en la
subclase.

El modificador abstract puede ser especificado como sigue:


//clase abstracta
abstract class Automovil
{
//Mtodo abstracto
abstract void Parar();
//nota: una clase abstracta contiene un mtodo no
override void Iniciar()
{ ;}
}

Sealed

La palabra clave sealed es usada para indicar que una clase no puede ser heredada.

El modificador sealed es usado cuando es necesario indicar que no es lgico o no se permite
extender una clase en un dominio dado.

El modificador sealed puede ser especificado como sigue:


sealed class RubberTube {;}


Sistema de Reserva de Horario Medico



new

La palabra clave new es usada como operador y como modificador. En el rol de operador es usada
para instanciar una clase; sin embargo, en el rol de modificador, en el cual nos interesaremos,
oculta una clase derivada o un delegado.

El modificador new puede ser especificado como sigue:


//Ejemplo Class
public class Carro()
{ public Iniciar(); }

public class Modelo : Carro
{ new public Iniciar(); }

//delegar ejemplo
public class Carro()
{ protected delegate void DelegarX (int i); }

public class Modelo : Carro
{ new delegate void DelegarX (double d); }

Private

La palabra clave private es una declaracin de accesibilidad usada para modificar la visibilidad de
un tipo.



Sistema de Reserva de Horario Medico


El modificador private significa que la accesibilidad es limitada al tipo que la contiene (una clase). Un
campo de una clase, por ejemplo es modificado como private y su valor es accedido indirectamente
a travs de la propiedad de la clase.

El modificador private limita su visibilidad o acceso a nivel de la clase.

El modificador private puede especificarse como sigue:


public class Auto
{
private string carColor;
}

Protected

La palabra clave protected es una declaracin de accesibilidad usada para modificar la visibilidad
del tipo.

El modificador protected significa que la accesibilidad es limitada a la clase dada y a cualquier clase
derivada de la clase.

El modificador protected puede especificarse como sigue:


public class Auto
{
protected string algunaParte;
}


Sistema de Reserva de Horario Medico



Internal

La palabra clave internal es una declaracin de accesibilidad usado para modificar la visibilidad de
un tipo.

El modificador internal significa que la accesibilidad es limitada a los objetos dentro del programa.
As la funcionalidad no puede ser accedida por el cdigo cliente fuera del ensamblado (assembly).

El modificador internal extiende la accesibilidad a nivel de ensamblado o programa.


public class Auto
{
internal HacerAlgo()
{;}
}

Protected internal

La palabra protected internal es una declaracin de accesibilidad usado para modificar la visibilidad
de un tipo.

El modificador protected internal significa que la accesibilidad es limitada a un miembro dentro de
una clase dada, una clase derivada de esa clase, y clases no derivadas en el mismo ensamblado.



Sistema de Reserva de Horario Medico


El modificador protected internal puede ser especificado como sigue:


public class Auto
{
protected internal HacerAlgo()
{;}
}

public

La palabra clave public es una declaracin de accesibilidad usada para declarar que no hay lmite
para su accesibilidad o visibilidad de un tipo.

El modificador public puede ser especificado como sigue:


public class Auto
{
public HacerAlgo ()
{;}
}

static

La palabra clave static es un modificador de tipo que es usado para asociar un tipo con una clase.

El modificador de tipo static significa que el tipo dado es miembro de una clase y no es miembro de
una instancia.


Sistema de Reserva de Horario Medico



El modificador de tipos static puede ser especificado como:


public class Cliente
{
//tipo esttico
static void Main()
{ ;}
}



Attribute

Tiene metadatos que pueden ser accedidos desde el cdigo en tiempo de ejecucin para
interrogar entidades dentro de un ensamblado.

Es una clase que deriva de la clase System.Attribute. Tiene metadata o informacin declarativa
que es accesible a travs de reflexin.

Puede ser aplicado a un ensamblado, una clase, un delegado, enumeracin, un evento, un campo,
un miembro, interface, mtodo, modulo, parmetro, propiedad, valor de retorno o una estructura.

Es una etiqueta usada para agregar informacin acerca de un elemento el cual puede ser
accedido por cdigo en tiempo de ejecucin.

Atributos intrnsecos son los ms comnmente usados y son especificados como sigue:


[serializable]
class Carro {;}



Sistema de Reserva de Horario Medico




Sin embargo, cuando puede haber ambigedad como en el caso de un mtodo o un valor de
retorno, el valor por defecto es usado dentro del atributo para indicar cul de los elementos
referencia el atributo:


//Declarar un mtodo con un atributo mediante el "mtodo" atributo
predeterminado
[method: ThatAttribute] int MetodoDos(int i)

//Declarar un valor de retorno con un atributo mediante el "retorno"
atributo predeterminado
[return: OtherAttribute] int MetodoTres(int i)

Class Header

El encabezado de la clase es usado para definir a un alto nivel el dominio y caractersticas de una
entidad.

El encabezado de una clase identifica la clase: contiene el modificador de la clase (ejemplo, public);
la palabra clave class y el nombre de la clase.

El encabezado de la clase puede especificarse como:


public class Carro
{;}

const



Sistema de Reserva de Horario Medico


La constante es una variable de clase cuyo valor es constante, y es comnmente usada en
situaciones sencillas.

La constante es un modificador esttico, el cual es un tipo valor usado en variables locales o
campos miembro, una vez que el valor es asignado no puede ser cambiado en tiempo de ejecucin.
Una constante puede ser usado con bool, byte, char, decimal, double, enum, float, int, long, short,
string, o tipo de referencia.

Una constante puede ser especificada como sigue:


const int ruedas = 4;

delegate

El delegado es una manera conveniente de evitar explcitamente cometer cdigo para llamar a una
funcionalidad desde un objeto nombrado. Agrega flexibilidad para llamar mtodos con la misma
firma en diferentes objetos delegando la colaboracin a un objeto delegado.

Un delegado es una clase que es una referencia a un mtodo para una firma dada y envuelve al
mtodo.

El delegado puede ser especificado como sigue:


public delegate void Cambio(object sender, EventArgs e);

enum



Sistema de Reserva de Horario Medico


La enumeracin es una manera conveniente para almacenar, extender y usar valores constantes
relacionados.

La enumeracin contiene valores distintos en una lista enumerativa (un conjunto de constantes
numricas nombradas). Soporta los tipos siguientes: byte, sbyte, short, ushort, int, uint, long, y
ulong. El tipo por defecto es int (Int32).

La enumeracin es comnmente usada en situaciones complejas en las cuales hay varias
constantes que estn relacionadas.

La enumeracin puede ser especificada como sigue:


enum Radiador
{
Briscoe,
Detroit,
McCord
}

event

El evento es una metodologa por la cual una clase puede generar una notificacin. Es declarado
como una clase delegada y publicado por un objeto contra cualquier otro objeto que se suscribe
agregando o registrando el manejador de evento en la misma firma como un tipo delegado del
evento.

Un evento puede ser especificado como sigue:



Sistema de Reserva de Horario Medico



//declarar delegate
public delegate void Alarma (string ubicacion);

//declare event of type delegate
public event Alarm SobreCalentamiento (string ubicacion);

Field

El campo es una variable que tiene una asociacin de tipo o clase. El campo es asociado con una
clase dentro de una instancia de clase. Un campo modificado como esttico es un campo de la
clase, de cualquier otra forma es un campo de la instancia.

Los campos son colocados inmediatamente despus del encabezado de la clase en el cuerpo de la
clase. Es usado para tener el estado de una propiedad.

Un campo miembro puede ser especificado como sigue:


public class
{
int contador;
}



Method



Sistema de Reserva de Horario Medico


El mtodo es una manera que tienen los objetos de colaborar entre s, enviando mensajes para
acceder a la funcionalidad de otro objeto.

Los mtodos son colocados inmediatamente debajo del listado de propiedades dentro del cuerpo de
una clase.

El mtodo puede ser especificado como sigue:


Lnea simple:
public int Mostrar (string a) {return Console.Write ("Mostrar " + a);}

Misma Lnea:
public int Mostrar (string a)
{
return Console.Write ("Mostrar " + a);
}

Debajo de la lnea:
public string Mostrar
{
return "Mostrar " + a;
}

Property

La propiedad es una manera de establecer u obtener el estado de un objeto.



Sistema de Reserva de Horario Medico


Es un constructor que acta como una fachada a travs de la cual el cdigo cliente puede acceder
al valor o estado interno de la clase el cual es almacenado en un campo privado.

Las propiedades son colocadas inmediatamente despus del listado de eventos en el cuerpo de una
clase.

La propiedad puede ser especificada como sigue (donde _name es un campo privado de la clase):


Lnea Simple:
public int Nombre {get { return _nombre; } set { _nombre = value; }}

Misma Lnea:
public int Nombre
{
get
{
return _nombre;
}
set
{
_nombre = value;
}
}

Debajo de la Lnea:
public int Nombre
{
get {return _nombre;}


Sistema de Reserva de Horario Medico


set {_nombre = value;}
}

Variable

Es asociada con un procedimiento. Puede ser una variable local en un procedimiento (mtodo); un
elemento de un arreglo, o u parmetro de entrada (como un valor por referencia) o un parmetro de
salida.

Una variable es colocada de acuerdo a su categora; por ejemplo, una variable local es colocada
inmediatamente despus del encabezado del procedimiento, y un parmetro de entrada es colocado
dentro de los parntesis de un procedimiento (como un argumento).

Una variable puede ser especificada como sigue:


//variable local
public Carro()
{
int ruedas;
}

//variable como un elemento en un arreglo
int [] x = {2,4,7};

//variable como un parmetro de entrada
public Carro (int ruedas) {;}

//variable como un parmetro de salida


Sistema de Reserva de Horario Medico


static void DoThis(string primerNombre, string segundoNombre, out string nombre)
{
nombre = primerNombre + " " + segundoNombre;
}

If

La sentencia If se usa para controlar al sentencia de una condicin simple.

La sentencia puede ser especificada como:


if (a == b)
{//instrucciones
}

if-else

Es una ramificacin condicional que redirige el control de flujo solo si la condicin es verdadera y
ofrece una opcin en caso la condicin sea falsa.

La sentencia puede ser especificada como:


if (a == b)
{//instrucciones
}
else


Sistema de Reserva de Horario Medico


{//instrucciones diferentes
}


If anidado

Un If anidado es una serie de sentencias if o if-else. Si es usado excesivamente puede degradar la
lectura del cdigo e incrementar el riesgo de errores lgicos (en estos casos es mejor utilizar la
sentencia switch).

La sentencia puede ser especificada como:


if (a <10)
{//instrucciones
if (a>=5)
{//instrucciones adicionales
}
}

switch-case

Ambas sentencias estn asociadas en el control del flujo y encapsulan elegantemente un conjunto
de opciones lgicas. Los tipos vlidos para el parmetro de la sentencia switch son: byte, char,
enum-type, int, long, sbyte, short, string, uint, ulong, y ushort.

La sentencia puede ser especificada como sigue:




Sistema de Reserva de Horario Medico



switch (nroCoche)
{
case 0:
//instrucciones;
break;
case 1:
//instruccion diferente;
break;
default:
//Si el nro de cobre no es ninguno de los anteriores hacer estas instrucciones;
}

break

Se usa la sentencia como un control de flujo para detener la ejecucin en el bloque actual de
cdigo.

La sentencia puede ser especificada como:


if (a == b) break;

try{
//Instrucciones
break;
}



Sistema de Reserva de Horario Medico


default

La etiqueta es utilizada para controlar el flujo de una sentencia y es compaera de la sentencia
switch-case para ofrecer una ejecucin por defecto.

Una sentencia switch-case que muestra el uso de la etiqueta puede ser especificado como sigue:


switch (nroCarro)
{
case 0:
//Instrucciones;
break;
case 1:
//Instrucciones diferentes
break;
default:
//Si el nro de cobre no es ninguno de los anteriores hacer estas instrucciones;
}

continue

Esta sentencia de control de flujo detiene la ejecucin del bloque actual.

La sentencia puede ser especificada como sigue:


if (a == b)
{


Sistema de Reserva de Horario Medico


Console.WriteLine("Atencin: continue");
continue;
}

throw Statement

La sentencia es usada para lanzar una excepcin.

Esta sentencia por especificada como:


try
{
//Instrucciones
throw new System.Exception();
}

try-catch

Esta sentencia es usada para manejar una excepcin que ha sido lanzada.

Esta sentencia puede ser especificada como:


try
{
//Instrucciones
catch (Type1Exception e)


Sistema de Reserva de Horario Medico


{//cdigo para controlar excepcion
}
catch (Type2Exception e)
{//cdigo para controlar excepcion
}
catch (Type3Exception e)
{//cdigo para controlar excepcion
}
}

Try-finally

Esta sentencia es una manera para asegurar que el bloque de cdigo que es localizado en el bloque
finally sea ejecutado luego de abandonar el bloque try.

La sentencia puede ser especificada como:


try
{//Instrucciones
}
finally
{//Ejecutar cdigo
}

try-catch-finally

Esta sentencia es una forma exhaustiva de manejar una excepcin que ha sido lanzada por un
bloque de cdigo.


Sistema de Reserva de Horario Medico



Esta sentencia puede ser especificada como:


try
{
//Instrucciones
catch (Type1Exception e)
{//cdigo para controlar excepcion
}
catch (Type2Exception e)
{//cdigo para controlar excepcion
}
catch (Type3Exception e)
{//cdigo para controlar excepcion
}
finally
{// Ejecutar cdigo
}
}

do-while

Es parte de las sentencias de iteracin que itera el bloque de cdigo al menos una vez.

La sentencia puede ser especificada como sigue:


int i = 0;


Sistema de Reserva de Horario Medico


do
{
//Instrucciones
i++;
}
while (i < 3);
{
//Instrucciones diferentes
}

while

Es una sentencia de iteracin que se itera cero o ms veces.

La sentencia puede ser especificada como sigue:


int i = 0;
while (i < 3) //mientras se cumple la condicin
{
//Instrucciones
i++;
}

for

Es una sentencia de iteracin que evala un conjunto de expresiones de inicializacin para luego
iterar un bloque de cdigo.



Sistema de Reserva de Horario Medico


La sentencia puede ser especificada como sigue:


for (int i=0; i<10; i++)
{
//Instrucciones
}



Sistema de Reserva de Horario Medico


foreach

Es una sentencia de iteracin que enumera una coleccin.

La sentencia puede ser especificada como sigue:


foreach (Llanta l in Carro)
{
BombaDeAire.EmpezarBombear();
}

También podría gustarte