3 modi sorprendenti per scrivere un codice semplice

La vita è davvero semplice, ma insistiamo per renderla complicata.

Crediti immagine: unsplash.com Tom Grimbert

Scrivere codice semplice è in realtà molto semplice. Ma lo rendiamo un affare complicato rendendolo "pronto per il futuro".

E una volta che impareremo a superare questa illusione di prontezza per il futuro, il nostro codice non solo diventerebbe più semplice e più pulito, ma cresceremo anche in statura come grande sviluppatore.

Lasciatemi spiegare.

Ai miei tempi d'oro di programmazione, un fatto mi è stato insegnato dogmaticamente in ogni occasione.

"Non scrivere mai lo stesso codice due volte".

"Devi riformattare il tuo codice e renderlo riutilizzabile per il" bene superiore ". Rendi il codice simile a una scatola nera che può essere utilizzata da tutti gli altri sviluppatori sotto il sole. I grandi sviluppatori lasciano il codice più grande come eredità duratura.

Fin qui tutto bene.

Solo che le mie creazioni di codice si sono gradualmente evolute in brutti grumi di mostruoso nulla che è diventato quasi impossibile da capire e interpretare. La mia igiene del codice è andata a vuoto e ho iniziato a perdere giorni e mesi a "correggere" e "resuscitare" i demoni che avevo creato.

La programmazione è difficile. Quando scrivi un programma, ci possono essere da uno a un gazillion di righe di codice e commetterai errori. A volte sono grandi, a volte sono piccoli, ma indipendentemente dalle dimensioni, tutti impiegano del tempo per trovare e risolvere i problemi. A volte, hai bisogno di aiuto per uscire dal vortice "pericoloso" di "impotenza" che ti risucchia rapidamente.

E a volte, hai solo bisogno di ... un'anatra di gomma.

Il concetto di papera di gomma è stato menzionato per la prima volta da Deane Parker nel suo eccellente post "How to Give a Good Conference Talk", in cui ha descritto la pratica di una presentazione ad alta voce, al fine di migliorarla. L'idea di utilizzare un'anatra come cassa di risonanza non è nuova, ma il punto in cui segna punti è nella sua semplicità d'uso ed efficacia.

Il più grande vantaggio di usare un'anatra di gomma come cassa di risonanza è che è paziente, non ti giudica e, soprattutto, non ci vuole il tempo di qualcun altro. C'è qualcosa di magico nello spiegare ad alta voce i tuoi problemi, anche a qualcosa di inanimato come un'anatra di gomma, che può aiutarti a vedere la soluzione ai tuoi problemi.

Mentre attraversi il tuo codice, spiegandolo riga per riga all'anatra di gomma, ti fermi e inizi a pensare alla situazione dall'esterno. Ti costringi a valutare te stesso e ad acquisire una comprensione obiettiva di tutto ciò che hai scritto nel "calore" del momento.

E poi prima o poi ottieni il tuo momento “AH-HA”. La risposta arriva solo a te.

Ed è così che ci si sente quasi ogni volta: "Duh! Sapevo che!"

Ecco alcune delle cose che le sessioni di paperelle di gomma mi hanno insegnato a scrivere codice migliore.

Non è necessario scrivere un componente riutilizzabile OGNI VOLTA.

Alcuni sosterranno che dovresti sempre provare a rendere i tuoi componenti il ​​più riutilizzabili possibile, perché ti richiede di affrontare tutti questi problemi di qualità indipendentemente da ciò e produrre un software migliore. Sarebbe fantastico se il tuo unico obiettivo fosse quello di creare il miglior software al mondo, ma nessuno ti sta pagando per farlo.

No, vieni pagato per scrivere software di qualità sufficiente entro il tempo e il budget assegnati. Se passi del tempo inutile a placcare oro il tuo codice, potrebbe farti sentire freddo, ma è decisamente dispendioso. Devi tracciare una linea nella sabbia di quanto deve essere veramente buono questo prodotto e attenersi a ciò, altrimenti non finirai mai.

Non ne avrai bisogno

YouArentGonnaNeedIt (spesso abbreviato YAGNI) è una pratica di programmazione estrema che afferma:

"Implementa sempre le cose quando ne hai davvero bisogno, mai quando prevedi che ne hai bisogno."

Anche se sei totalmente, totalmente, totalmente sicuro di aver bisogno di una funzionalità, in seguito, non implementarla ora.

Ci sono due ragioni principali per praticare YagNi:

  • Risparmia tempo perché eviti di scrivere codice non necessario
  • Il tuo codice è migliore perché eviti di inquinarlo con "ipotesi" che si rivelano più o meno sbagliate ma restano comunque in giro.

Crea la cosa più semplice che potrebbe funzionare.

La programmazione estrema menziona due regole d'oro per scrivere un semplice codice.

· In primo luogo, implementare una nuova funzionalità nel modo più semplice che si possa pensare che "potrebbe funzionare". Non costruire molte straordinarie sovrastrutture, non fare nulla di stravagante, basta metterlo per farlo funzionare. Fai passare il codice ai Test unità per la nuova funzionalità (e tutte le funzionalità, come sempre).

· Secondo, e questo è fondamentale per la regola, refactoring il sistema in modo che sia il codice più semplice possibile, comprese tutte le funzionalità che ha ora. Segui la regola di OnceAndOnlyOnce e le altre regole di qualità del codice per rendere il sistema il più pulito possibile.

Ricorda sempre, non stiamo cercando il modo più veloce; stiamo cercando il risultato più semplice. Quindi, prima spezziamo il metodo esistente in pezzi. Ciò lascia in esecuzione i casi di test esistenti. Quindi modifichiamo (semplicemente, ora) uno dei piccoli metodi per gestire il prossimo test case e così via.

La prossima volta che sei bloccato, prova l'anatra

L'ordinamento tramite bug, problemi e enigmi generali è una parte fondamentale della programmazione. Quindi lo sviluppo di tecniche per farti strada tra i bug e trovare la via d'uscita dai vincoli è cruciale tanto quanto l'apprendimento di tutte le sintassi.

E quando sei bloccato e nulla sembra funzionare, prova l'anatra di gomma.

Quindi esci e trova la tua anatra di gomma, che si tratti del classico giocattolo da bagno giallo, o uno vestito come un pirata: scegline uno con cui ti senti a tuo agio e che si adatti alla tua personalità.

Vai avanti; Parla con lui, fai domande, spiega ad alta voce i tuoi problemi, cancella le tue ragnatele e offri grande valore al tuo codice.

Come ha giustamente affermato Chris Pine.

"La programmazione non riguarda ciò che sai; si tratta di quello che puoi capire ".
Circa l'autore-:
Ravi Rajan è un gestore di programmi IT globale con sede a Mumbai, in India. È anche un appassionato blogger, scrittore di poesie di Haiku, appassionato di archeologia e maniaco della storia. Connettiti con Ravi su LinkedIn, Medium e Twitter.

Questa storia è pubblicata in The Startup, la più grande pubblicazione sull'imprenditoria di Medium seguita da +402.714 persone.

Iscriviti per ricevere le nostre storie migliori qui.