seth: Verschachteltes if

Beitrag lesen

gudn tach!

Programmiertechnisch ist weder eine Bedingung mit 10 Abfragen

if (a && b && c)

noch eine Verschachtelung derselben

~~~javascript

if (a)

if (b)
        if (c)


>   
> sinnvoll. Beide Varinaten sind äußert fehleranfällig, schwer zu lesen und wartungsunfreundlich.  
  
so pauschal ("aeusserst ...") stimme ich da nicht zu.  
  
ausserdem kann man einiges davon ganz einfach verbessern durch andere code-formatierung, z.b.  
~~~javascript
  
if(   a  
   && b  
   && c)

oder von mir aus

  
if(   a  
   && b  
   && c  
  )
~~~.  
  
ob etwas "schwer zu lesen" ist, ist gerade in der programmierung sehr oft geschmackssache.  
  

> Die Schreibweise:  
>   
>     ~~~javascript

if (!a)  

>       return false;  
>     if (!b)  
>       return false;  
>     if (!c)  
>       return false;

entspricht zwar nicht der reinen Lehre (ein Ausstiegspunkt je Funktion) ist aber wesentlich leichter zu lesen und problemlos zu erweitern falls mal eine elfte Bedingung hinzukommt.

genauso problemlos erweiterbar sind auch die anderen varianten.

aber ansonsten bin ich ebenfalls der meinung, dass man i.a.r. um 10-fach verschachtelte bedingungen herumkommt, z.b. indem man verschiedene eigenschaften/bedingungen semantisch gruppiert, was im endeffekt vielleicht etwas mehr code bedeutet, aber u.u. mehr uebersicht bringt. das kommt jedoch alles immer _sehr_ auf die anwendung an.

prost
seth