I compiti semplici devono essere divisi in funzioni separate? [duplicare]

0

Se devo scrivere un programma semplice (25-35 linee), dovrei dividerlo ulteriormente, in funzioni che hanno poche righe e vengono eseguite max. 2 volte, o per metterlo tutto in uno?

es. se ho bisogno di aggiungere e sottrarre 2 angoli, dovrei fare tutto in una funzione o scrivere uno che converte tutto indietro (e avanti) e uno che fa l'aggiunta / sottrazione effettiva, lasciando principale con solo I / O (in più: dovrebbe l'angolo può essere definito come una struttura o rimanere attaccato a inte, supponendo che non venga usato altrove?

Il mio ragionamento è che il codice è più chiaro e che trovo anche più facile scrivere, ma a quanto pare alcune persone lo trovano inutilmente lungo e troppo complicato. Sto cercando "la strada giusta", preferibilmente esempi o esperienze da colloqui di lavoro. Ovviamente le grandi applicazioni del mondo reale devono essere modulari, ma che dire dei programmi simili a script o che si concentrano esclusivamente su un solo algoritmo?

    
posta Luke 26.11.2014 - 11:57
fonte

3 risposte

5

Non esiste un "modo giusto", devi scegliere quando "promuovere" un frammento di codice in un metodo.

Di solito ha senso creare un nuovo metodo:

  • quando il tuo metodo principale è troppo lungo, gonfio o complesso (leggibilità del codice / manutenibilità)
  • quando quel frammento viene usato due o più volte (nessuna duplicazione del codice)
  • quando tale frammento può essere utilizzato da due metodi o più (riusabilità del codice)
  • quando è necessario utilizzare variabili locali (che sono quasi inutili nel metodo principale)
risposta data 26.11.2014 - 12:49
fonte
1

Questo dipende strongmente dalla tua situazione. Non si dà molto contesto circostante. Per chi stai scrivendo questo? È uno script usa e getta per soddisfare un bisogno specifico in questo momento o hai intenzione di utilizzarlo e mantenerlo più avanti?

Se lo scrivi per te stesso, puoi fare tutto ciò che vuoi, solo tu lo userai. Allo stesso modo, se si tratta di uno script usa e getta, non importa se non lo si utilizzerà in futuro.

Se stai chiedendo "best practice" o stai scrivendo questo con l'intenzione che lo manterrai / altre persone lo useranno, allora è generalmente preferibile suddividere il codice nel più piccolo pezzo possibile riutilizzabile. In questo modo è molto semplice modificare, aggiungere o rimuovere passaggi al tuo codice che potresti dover utilizzare in futuro ma che al momento non possono vedere.

È un enorme dolore dover strappare metà del tuo codice perché hai fatto alcune ipotesi di alcuni mesi fa che non valgono più. Io, come molti altri sono sicuro, ho imparato questa lezione nel modo più duro. Generalmente è meglio scrivere codice con il minor numero possibile di presupposti e creare metodi generici che possono essere sostituiti in qualsiasi momento modificando il meno possibile il codice esistente.

    
risposta data 26.11.2014 - 15:35
fonte
0

Usi lo stesso identico codice che è più di una o due linee in altre parti? Split

Lo farai in futuro? Split

    
risposta data 26.11.2014 - 16:21
fonte

Leggi altre domande sui tag