Qual è una parola migliore per allineare il tuo nidificazione?

2

Mi è stato insegnato da un vecchio programmatore che ha chiamato questo codice annidato

if(condition){
  <div>
    <b>text <u>text</u></b><br/>
    <table>
      <tr>
         <td>a</td>
         <td>b</td>
      </tr>
    </table>
  </div>
} else {
  log();
}

in contrasto con questo codice che è stato considerato non annidato

if(condition){<div>
<b>text
    <u>text</u></b>
    <table><tr><td>a</td><td>b</td></tr></table>
    </div>
} else {log();}

Quando ho iniziato a leggere i tutorial, ho scoperto subito che avevo la definizione sbagliata da annidare.

Messy vs clean non è sufficiente perché il codice disordinato comprende altri problemi di cui non sto parlando, ad esempio confondendo il flusso della logica, utilizzando in modo inappropriato gli inizializzatori statici, il cattivo uso dei nomi delle variabili, usando il doppio del codice per ottenere il lavoro fatto in un modo più confuso, ecc.

Qual è la parola giusta per questo, dove il primo esempio è ... e il secondo esempio non è ...?

    
posta George Bailey 29.09.2011 - 00:30
fonte

5 risposte

3

L'annidamento è legato all'acclusione di strutture di controllo l'una nell'altra, e questo è di solito indicato attraverso diversi livelli di indentazione all'interno del codice sorgente.

Puoi dire che il primo esempio è Codice sorgente annidato , mentre il secondo non lo è, potresti essere corretto. Se hai detto che era semplicemente rientrato, non fornisci alcuna informazione aggiuntiva riguardo a perché è rientrato.

    
risposta data 29.09.2011 - 03:58
fonte
16

" Indentazione / rientranza " potrebbe essere la parola che stai cercando?

... indent style is a convention governing the indentation of blocks of code to convey the program's structure... Indent style is just one aspect of programming style.

Indentation is not a requirement of most programming languages, where it is used as secondary notation. Rather, programmers indent to better convey the structure of their programs to human readers. In particular, indentation is used to show the relationship between control flow constructs such as conditions or loops and code contained within and outside them...

    
risposta data 29.09.2011 - 00:49
fonte
3

Direi HTML ben formattato o codice pulito . Come la maggior parte dei linguaggi di programmazione, la formattazione non è così importante per il computer. Tuttavia, per i mortali come me una corretta formattazione rende molto più facile da capire. Non ci vuole molto tempo per scrivere codice pulito, ma a lungo termine ti farà risparmiare molto tempo. Se dovessi eseguire il debug del secondo esempio, la prima cosa che farei è riformattarla.

Ci sono vari strumenti che riformatteranno il testo in modo che sia molto più leggibile. Sfortunatamente, i risultati potrebbero mostrare quanto sia scarso il codice originale. Molti generatori di codice producono HTML piuttosto scadenti, che potrebbero essere la causa o il risultato di errori nel formattare correttamente il codice.

    
risposta data 29.09.2011 - 01:58
fonte
1

Il seguente codice è nidificato:

if (someCondition) { /*doSomething*/ } else { while (someOtherCondition) { if (someSubCondition) { /*doSomethingElse*/ } else { /*doSomethingCompletelyDifferent*/ }}}

Nested significa che alcune istruzioni inner sono nidificate all'interno di alcune istruzioni esterne . Infatti, nella maggior parte dei linguaggi di programmazione comuni, praticamente tutto il codice è nidificato, poiché il codice è annidato con funzioni, che sono annidate all'interno dei moduli. E infatti quasi ogni affermazione annida altre affermazioni al suo interno.

Ora il seguente codice è rientrato:

doSomething();
      doSomethingElse();
      doSomethingElseYet();
doSomethingCompletelyDifferent();

Su proprio, con il solo indenting, si aggiungono spazi bianchi orizzontali (di solito spazi o tabulazioni) dopo interruzioni di riga.

Ora indentazione corretta come parte della formattazione corretta è il processo di dare al codice una struttura visiva, che rende evidente la sua struttura (nidificata) (che non è sicuramente il caso per il primo esempio di codice). Quindi cerchiamo di indentarlo correttamente (senza voler ricominciare la guerra religiosa sui diversi stili di indentazione):

if (someCondition) { 
    /*doSomething*/
} 
else { 
    while (someOtherCondition) {
        if (someSubCondition) {
            /*doSomethingElse*/
        }
        else {
            /*doSomethingCompletelyDifferent*/
        }
    }
}

Ora la struttura visiva del codice rappresenta la sua nidificazione. Dal numero di schede che precedono un'istruzione, puoi vedere direttamente quanto è nidificato. Puoi facilmente distinguere le istruzioni interne da quelle esterne e vedere dove iniziano e terminano le affermazioni.

Quindi, per riassumere, la formattazione del codice (che include il rientro) è la tecnica di usare (per lo più) caratteri non significativi per dare al codice sorgente una struttura visiva. Una corretta formattazione del codice significa applicare questa tecnica per dare al codice una struttura visiva, che comunichi la sua struttura semantica.

    
risposta data 30.09.2011 - 13:53
fonte
0

Direi "formattato" o "ben formattato". Non sono d'accordo con "codice pulito" e "codice ristretto" suggerito da altri poster.

    
risposta data 30.09.2011 - 12:21
fonte

Leggi altre domande sui tag