Definisci il tuo problema e i tuoi requisiti: scopri esattamente cosa vuoi costruire e perché. Va bene se questo cambia nel tempo, ma devi iniziare con qualche idea concreta. Scriverlo è una buona idea.
Fai un piano di alto livello: determina come saranno i componenti del tuo sistema e come si incastreranno tra loro. Ogni componente dovrebbe svolgere un ruolo ristretto e ben definito. Lavorare su questo su carta è probabilmente anche una buona idea.
Scegli la tua piattaforma: decidi quale hardware e sistema operativo desideri scegliere come target e quale linguaggio di programmazione e librerie si adatteranno meglio al tuo obiettivi (che conosci già abbastanza bene da usare o sei disposto a imparare lungo la strada). Potrebbe essere necessario scegliere come target API specifiche del sistema operativo. Prova a determinare quali saranno.
Inizializza il tuo progetto: utilizzando il gestore pacchetti e il sistema di compilazione associato alla tua lingua e alle tue librerie, inizializza un nuovo progetto. Dovrebbe esserci funzionalità per integrare/collegare librerie, creare/eseguire il progetto ed eseguire test. Dovresti anche controllare la versione della directory.
Inizia a creare prototipi di componenti e a scrivere test, il tutto mentre applichi queste modifiche: costruisci le cose in base al ruolo che ti aspetti che svolgano nel tuo sistema. Scrivi test per assicurarti che si comportino come previsto, su output banali e non banali, esercitando idealmente la massima copertura del codice possibile. Rivedi il tuo codice per assicurarti che sia fondamentalmente comprensibile, mantenga le invarianti che ti aspetti e gestisca correttamente i casi limite. Ogni volta che porti a termine una piccola modifica o un miglioramento, confermalo.
Fai funzionare qualcosa: se devi fare molti esperimenti, prova a far funzionare qualcosa di base, quindi passa attraverso il modifiche che hai introdotto nel controllo della versione. Se hai un cambiamento grande e rischioso o desideri sviluppare una nuova funzionalità che sia in gran parte indipendente da altre funzionalità, avvia un nuovo ramo e uniscilo una volta che puoi esaminarlo.
Integra e perfeziona: una volta che hai i componenti che hai testato, scrivi il codice per integrarli e verifica i casi per la tua integrazione. A questo punto, dovresti avere qualcosa di simile all'intero programma che hai immaginato funzionante.
Ripaga il debito: una volta che una nuova funzionalità o comportamento funziona, prova a ripagare il debito tecnico rifattorizzando il tuo codice per renderlo più facile lavorare con. Riempi il tuo codice sorgente con la documentazione.
Modulo di richiesta