Quali sono alcune metodologie di programmazione per sviluppatori solisti per progetti più piccoli?Quali sono alcune metodologie di programmazione per sviluppatori solisti?
risposta
Anche come sviluppatore singolo è possibile utilizzare le metodologie applicate ai grandi team di sviluppo.
- Scrivere una specifica.
- Layout a UML.
- Realizza design UI a matita e carta.
- Test di corridoio: se ti aspetti una grande folla, chiedi a mamma se è facile da usare.
- Revisione tra pari: è possibile creare team di revisione ad hoc con altri sviluppatori solisti.
- Mantieni un programma aggiornato.
- e così via ...
ho solista sviluppare tutto il tempo, e queste pratiche mi tengo in linea con il mio lavoro e dare il mio boss una grande risorsa per sapere quello che ho fatto e in che misura lungo io sono. E mi tengono in pista, per l'avvio!
seguire quanto disposto in questa domanda Stack Overflow:
anche. Utilizzare il controllo del codice sorgente. Non crederesti quante volte sono stato morso da quello su progetti personali.
Quasi tutte le metodologie di sviluppo funzioneranno in un ambiente solo, ad eccezione di quelli che richiedono esplicitamente un team (come la programmazione side-by-side). Ma anche in quel caso potresti aggirare il problema creando semplicemente amici immaginari/compagni di squadra o sviluppando un disturbo di personalità multipla.
+1 per il fattore lol. –
Il disturbo della personalità multipla non sarebbe il più efficiente perché non saresti mai in grado di sederti e lavorare davvero con i tuoi compagni di squadra. Dovresti inviare continuamente email agli altri membri del team o lasciare messaggi vocali. Sarebbe come comunicare con membri del team tutti in fusi orari diversi. – TheTXI
Non so dopo aver visto Jekyll sulla BBC, penso che avrei potuto fare un po 'di merda se avessi avuto quello. Dove devo firmare? –
La metodologia papera di gomma viene in mente: http://lists.ethernal.org/oldarchives/cantlug-0211/msg00174.html
È davvero spaventoso :) –
Una birra funziona o si limita alle anatre? –
non ho mai saputo che esistesse un nome per quello che ho fatto per anni! :-D – IaCoder
Discusso qui http://stackoverflow.com/questions/28197/do-you-follow-the-personal-software-process-does-your-organization-team-follow-t – MarkJ
La questione è più una questione di ciò che hai dimestichezza con e quali problemi speri di risolvere. La maggior parte delle metodologie sono utilizzate da uno sviluppatore solista ad un certo punto (la programmazione delle coppie è un'eccezione degna di nota). Il problema è che sei veramente solo o semplicemente lavori da solo? Ho scoperto che è inestimabile avere persone con cui posso rimbalzare idee. Inoltre, avere qualcun altro a guardare il tuo codice (peer review) è un ottimo modo per trovare problemi che non puoi "vedere". Quindi, sono d'accordo con Aiden Bell "Programmare sul tuo forno non è cool." Vorrei provare a connettermi a una comunità (come SO) in cui è possibile far rimbalzare le idee dagli altri. Quindi devi costruire la tua metodologia in modo tale da consentire interruzioni quando invii un'idea.
Ha senso? Perché stai programmando da solo?
Pat O
davvero una metodologia ufficiale, ma ho fatto un sacco di sviluppo da solista (consulente indipendente e ISV), e qui ci sono le cose che ho trovato per essere importante:
- Trova un'organizzazione online (come oisv.com) per condividere pensieri e idee
- Assicurati di prendere il tempo di interagire con persone reali nel mondo reale obiettivi
- Set di progetto, scadenze e milestones tempo
- Prendere da fare appropriata up-front design e progetto di pianificazione
- impostare le ore di lavoro sono parte bastone a loro
- non funzionano troppo e scottarsi out
- Niente è mai perfetto, in modo da lottare per una buona codice che funziona, non perfezione
- Ottenere alcuni hobby non-programmazione
Molte tecniche agili grande lavoro da solista:
- interviste utente e storie: Se non si conosce ciò che gli utenti vogliono, perché sarebbe il software utile?
- Una semplice specifica: O anche solo una dichiarazione di intenti. "Lascia che le persone trasmettano brevi messaggi ai propri elenchi di abbonati." "Utilizza in-degree per ordinare i risultati di ricerca su Internet." "Consenti alle persone di rispondere in modo collaborativo alle domande di programmazione." Qualunque cosa.
- Un elenco di cose da fare rigorosamente ordinato: Utile per impedirti di affogare nei tuoi pensieri.
- Registro tangenti: Una buona lista di cose da fare ha una componente "da non donare", quindi non ti ossessionare con le cose che non hai intenzione di fare (ancora).
- YAGNI: Rimanere sul bersaglio. Questo è molto importante quando lavori da solo, perché non c'è nessuno che ti dica "No! Non reinventare la digitazione dinamica in Java! Ritorna al progetto." Gli elenchi dei To-Do non aiutano con questo.
- Sviluppo basato su test: I test di scrittura ti costringono a pensare al risultato finale, anziché impantanarti nei dettagli di implementazione. Ti impantanerai abbastanza comunque; non c'è bisogno di peggiorare le cose.
- Versioni frequenti: Fatti rispettare le scadenze. "Avremo una versione di funzionalità completo che comprende le storie degli utenti 1-4 da Venerdì Non si collegherà alla rete o salvare i dati su disco, ma XYZ ...".
- test Utente: Invita i tuoi amici a guardare quello che stai facendo in base a un programma decentemente frequente - forse una volta al mese, forse ogni settimana, a seconda del numero di amici che hai e di quanto birra/pizza vuoi nutrirli. Presta molta attenzione a quello che dicono e fanno e pensano quando usano il software.
e altre cose che sembrano solo come hanno senso in grandi progetti può aiutare molto:
- controllo Fonte: Installare git. È semplice come l'osso. Usalo. Non ossessionarti.
- Backup off-site: Sai. In caso di incendi domestici o alluvioni.
- Un blog: Ma è possibile scrivere solo quando viene rilasciato un rilascio. ;) Inoltre ti aiuta a creare un pubblico per il tuo prodotto prima ancora che venga spedito.
Spero che questo aiuti! Programmare da solo su un grande progetto può essere molto scoraggiante.
lmao YAGNI ... È iniziato con un regexp ... then Bison ... quindi una macchina virtuale ... Non stavo semplicemente scrivendo una semplice webapp ?? –
+1 per TDD e l'elenco delle cose da fare. –
Questo è più di un trucco che una metodologia. Quando esegui il debug, spiega i bug a voce alta come se stessi cercando di spiegarlo a un collega. È stupido, ma costringersi ad articolare il problema a voce alta spesso rivela quale sia il problema.
- 1. Metodologie di programmazione Excel
- 2. Metodologie per la progettazione di un linguaggio di programmazione semplice
- 3. Quali sono alcune alternative di pagerank?
- 4. Quali sono alcune grandi domande per l'iPhone per l'allenamento?
- 5. Quali sono alcune librerie Python scritte per dimostrare la programmazione reattiva funzionale?
- 6. Quali sono alcune buone risorse per iniziare con la programmazione COBOL?
- 7. Quali sono alcune buone alternative a InstallShield?
- 8. Quali sono alcune applicazioni pratiche dell'algoritmo ROT13?
- 9. Quali sono alcune alternative a PlayN?
- 10. Quali sono alcune strategie per mantenere uno schema di database comune con un team di sviluppatori e nessun DBA?
- 11. Quali sono alcune risorse per l'apprendimento del Lambda Calculus?
- 12. Quali sono alcune opzioni per proteggere redis db?
- 13. Quali sono i linguaggi di programmazione per GPU
- 14. Dove sono alcune buone guide di programmazione Xlib?
- 15. Errori di programmazione comuni da evitare per gli sviluppatori Haskell?
- 16. Quali sono alcune delle più popolari strategie di layout Git?
- 17. Quali sono alcune caratteristiche interessanti del codice sorgente di EveryBlock.com?
- 18. Quali sono alcune buone risorse sull'uso di Lucene.Net?
- 19. Quali sono alcune tecniche per la migrazione di un'applicazione MFC di grandi dimensioni in WPF/.NET?
- 20. Quali sono i migliori screencast relativi alla programmazione?
- 21. agenda di programmazione per sviluppatori C# - algoritmi per
- 22. Quali sono alcune buone alternative all'ereditarietà multipla in .NET?
- 23. Quali sono alcune API OFX (Open Financial Exchange)?
- 24. Quali sono i vantaggi di Windows 7 per gli sviluppatori di software?
- 25. Quali modifiche ci sono nel "Contratto di licenza del programma per gli sviluppatori di iPhone"
- 26. Quali sono alcuni esempi di programmazione a livello di caratteri?
- 27. Quali sono alcune operazioni che richiedono molto tempo in C?
- 28. Quali sono alcune applicazioni economicamente importanti dell'apprendimento automatico?
- 29. MS Windows Consigli di programmazione per sviluppatori Mac/Unix
- 30. Quali sono i vantaggi del linguaggio di programmazione Kotlin?
Potrei aggiungere "No SO browsing quando si suppone che si stia codificando" con la mia metodologia personale. –
ForeverAloneProgramming: https://github.com/nopara73/ForeverAloneProgramming – nopara73