Em 5 de junho de 2012 21:56, CDMB . <[email protected]> escreveu:
>
> Boa noite a todos,
> gostaria que algum especialista analisasse esse simples código e me dissesse 
> qual das opções é melhor e porque.
> São dois códigos que fazem a mesma coisa e eu já testei e funcionam.
>
> Código 1:
>
> if [ $LER = s ]; then mod1="4"; elif [ $LER = n ]; then mod1="0"; else 
> func_ERR; fi
>
> Código 2:
>
> case $LER in
>      s)
>        mod1="4"
>      ;;
>      n)
>        mod1="0"
>      ;;
>      *)
>        func_ERR
>          ;;
> esac
>

Não sou especialista mas vou arriscar um palpite modesto, o segundo é
melhor por ser mais legível e por ser otimizável em C, no bash eu não
sei, pode até ser implementado da mesma forma.

Na indiferença a legibilidade é preferível.

Uma forma de testar seria colocar mais testes condicionais, executar
com o comando time e torcer pro sistema perceber alguma diferença.

[]'s
-------------------------
Histórico: http://www.fug.com.br/historico/html/freebsd/
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd

Responder a