Dato che il modo migliore per imparare è lavorare su progetti, quali sono alcuni buoni software per provare a farti allo scopo di migliorare certe capacità di programmazione o imparare una nuova lingua?
Ho trovato che i seguenti programmi danno un buon inizio con le nuove lingue:
Conway's Game of Life
Facile da implementare. Ti dà un buon inizio con l'utilizzo semplice delle classi container. Non necessita necessariamente di grafica per l'output dei risultati.
Inoltre potresti scrivere una versione 3D di esso e utilizzare un motore di gioco per l'output (ad esempio qualcosa di semplice come Panda3D)
Risolutore di Sudoku
Leggermente più complesso. La complessità può essere adattata alle tue esigenze. O semplicemente annulla i numeri e fermati quando non è più possibile o vai avanti e implementa un albero di ricerca per risolvere problemi più complessi. Problemi e soluzioni per Sudokus a tutti i livelli di difficoltà per testare il tuo programma sono disponibili in rete in abbondanza. Lo stesso per materiale su possibili strategie.
Problemi a tutti i livelli di difficoltà che puoi desiderare. E confronta le tue soluzioni con quelle di programmatori esperti in tutti i principali linguaggi di programmazione.
Non sono sicuro di cosa intendi con "quali sono alcuni buoni software da provare ...", ma posso consigliare il libro " sette lingue in sette settimane "
Ti dà un buon punto di partenza per provare nuove lingue.
Accedi a uno dei seguenti siti e verifica se sei all'altezza delle sfide di codifica che presentano: SPOJ , TOPCODER ecc.
La maggior parte di questi siti ti ha fornito la possibilità di codificare in più linguaggi di programmazione in modo da poter utilizzare quello che più ti è familiare.
E se sei un maestro nel tuo gioco, c'è sempre ICPC .
Direi qualsiasi progetto che soddisfi i seguenti tre requisiti:
Per principianti
Manipolazione stringhe:
Database:
Manipolazione di numeri casuali:
Grafica matrice e di base
Tutto ciò che ti piace abbastanza da continuare a fare. La maggior parte dell'apprendimento viene eseguita in quell'ultimo 1% che viene comunemente ignorato in un progetto collaterale, ma è una parte molto importante di un prodotto di lavoro.
Di conseguenza, è una scelta molto personale ciò che potrebbe essere il progetto. Ecco perché ci sono così tanti grandi progetti di OS là fuori, e perché tutti dicono che sono così importanti quando sono sul tuo curriculum vitae: quella persona ha lavorato duro su di esso e ha imparato molto lavorando su quell'ultimo 1% di esso per fare è utilizzabile dagli altri e gode di ciò che fa.
Leggi altre domande sui tag learning