Tengo un código que es muy desordenado con el if
- else
si comprueba que está haciendo. La cantidad de ramificaciones y ramificaciones anidadas es bastante grande (más de 20 si - else si y anidado también). Está haciendo que mi código sea más difícil de leer y probablemente sea un cerdo de rendimiento. Mis aplicación comprueba una gran cantidad de condiciones que recibe por parte del usuario y por lo que la aplicación debe comprobar todo el tiempo para diferentes situaciones, por ejemplo:Declaraciones anidadas 'if' - 'else'
Si el texto de cuadro de texto no es 0, continúe con el siguiente ...
if ((StartInt != 0) && (EndInt != 0))
{
Y entonces aquí se comprueba si el usuario ha elegido fechas:
if ((datePickerStart.SelectedDate == null) || (datePickerEnd.SelectedDate == null))
{
MessageBox.Show("Please Choose Dates");
}
aquí, si las datepickers no son nulos continúa con el código ...
else if ((datePickerStart.SelectedDate != null) && (datePickerEnd.SelectedDate != null))
{
// CONDITIONS FOR SAME STARTING DAY AND ENDING DAY.
if (datePickerStart.SelectedDate == datePickerEnd.SelectedDate)
{
if (index1 == index2)
{
if (StartInt == EndInt)
{
if (radioButton1.IsChecked == true)
{
printTime3();
}
else
{
printTime();
}
}
Esto es solo una pequeña parte de los cheques que se están realizando. Algunos de ellos son funcionales y otros son para validación de entrada.
¿Hay alguna manera de hacerlo más legible y menos de un cerdo de rendimiento?
Tal vez deberías hacer las validaciones frente al Método o Evento si lo estás haciendo dentro, como si (dtp.SelectedDate == null) regresara; que proceder con el manejo de la información. – Burimi
Tengo la fuerte sensación de que SelectedDate pertenece a un control de calendario, estos nunca pueden ser nulos; en su lugar, debe verificar 'datePickerStart.SelectedDate == DateTime.MinValue'. –
El código está funcionando bien, no es mi problema. El problema al que me refiero es la legibilidad y el rendimiento de tal complejo, si no se ramifica – Yosi199