w0lf0. (OP)
|
|
March 17, 2014, 03:47:43 PM |
|
Salve ragazzi,nel tempo libero vorrei imparare a programmare,inzio praticamente da 0 e in passato ho fatto solo qualche semplice programmino in Pascal,cosa mi consigliate? Se avete qualche consiglio magari su un buon libro da acquistare,Grazie
|
|
|
|
Sampey
Legendary
Offline
Activity: 2632
Merit: 1040
|
|
March 17, 2014, 04:53:56 PM |
|
Penso che ormai on-line trovi di tutto. Partire da zero significa capire i costrutti fondamentali di un linguaggio di programmazione, qualunque esso sia. Quindi, tipi di variabili, assegnazioni, costrutti if-then-else, cicli. Molti suggeriscono di partire col linguaggio C anche se ti trovi i puntatori tra le palle e te ne dimenticherai se passerai a linguaggi quali JAVA o C# (praticamente identici). La storia si complica quando entri nel mondo Object Oriented, quando ci metti di mezzo le interfacce grafiche e tutti gli eventi. C'e anche da dire che arrivati a questo punto, con qualche buona googlata quando non si sa come fare una cosa, si dovrebbe essere in grado di scrivere del codice. Solitamente il codice che esce in termini di mantenibilità e razionalizzazione è un disastro, perchè si manca di esperienza. Quindi parti dal presupposto che devi imparare, e poi al resto ci penserai.
|
|
|
|
bertani
Legendary
Offline
Activity: 1022
Merit: 1000
|
|
March 17, 2014, 06:04:48 PM |
|
Quindi parti dal presupposto che devi imparare, e poi al resto ci penserai. Buon approccio. La base e' essere curiosi e non accontentarsi mai: se trovi qualcosa che non capisci cerca di non ignorarla solo perche' non ti sembra di utilita' in quel momento Consiglio spesso per partire Python, ma poi ognuno sceglie la sua strada.. io sono partito con ASM, ma non so se te lo consiglierei per il tuo caso (se vuoi capire bene come funziona il tutto _dal basso_ allora e' ottimo, ma richiede sforzi non indifferenti fare la scalata dal basso verso l'alto).
|
|
|
|
Sampey
Legendary
Offline
Activity: 2632
Merit: 1040
|
|
March 17, 2014, 06:09:48 PM |
|
ASM
Assembly??? Eh no dai oh! Ma neanche il cobol!! Sotto al C Sinceramente non credo ci sia bisogno di scendere, a meno che non ti vuoi fare una cultura personale giusto per capire "come funziona".
|
|
|
|
w0lf0. (OP)
|
|
March 17, 2014, 08:26:16 PM |
|
grazie ragazzi secondo voi ha senso iniziare col c#?
|
|
|
|
FaSan
|
|
March 17, 2014, 08:35:10 PM |
|
Dipende da ciò che vuoi ottenere. Se vuoi programmare Web allora mi dedicherei più a linguaggi come il PHP, il Java o Flash.
Se vuoi fare semplici applicativi per Windows, anche i Visual possono aiutarti (Visual C, Visual Basic), se vuoi fare qualcosa Linux, anche Python o C++
Insomma, secondo me, devi avere prima chiaro l' obbiettivo. Poi capite le dinamiche, saltare da un linguaggio all'altro non sarà così complicato.
FaSan
|
|
|
|
gdassori
|
|
March 17, 2014, 10:41:02 PM |
|
Python: è elegante per via dell'identazione obbligatoria, ha un margine d'errore relativamente basso grazia ad una sintassi semplificata, si impara in fretta grazie al prompt interattivo, ha una community larghissima che vuol dire tanto codice già scritto, è alla portata di tutti con guide per ogni livello, è al 100% portabile e ciliegina sulla torta ci sono diversi framework per la realizzazione di applicazioni web. Qui però per fare il salto in avanti dovrai imparare javascript e css.
C# è elogiato da chiunque ci lavori, ma è solo per Windows, cosa che per me è assolutamente inconcepibile.
|
|
|
|
w0lf0. (OP)
|
|
March 18, 2014, 10:50:44 AM |
|
grazie ragazzi,credo di iniziare con Python , ma sbaglio o ci sono due versioni? dite di iniziare con la nuova direttamente?
|
|
|
|
gdassori
|
|
March 18, 2014, 08:56:05 PM |
|
Personalmente ti consiglio la 2, ci sono alcune cose diverse (a parte alcune sottigliezze di poco conto sulla sintassi, ad esempio, una cosa critica è la dichiarazione di variabili globali all'interno di funzioni, che in 2.7 manca), tuttavia nonostante python3 sia "il futuro di python", il presente (e quindi tanto codice già scritto) è ancora 2.7
|
|
|
|
ervalvola
|
|
March 18, 2014, 09:42:57 PM |
|
Solo un pazzo senza speranza può decidere di iniziare col node.js?
|
|
|
|
w0lf0. (OP)
|
|
March 19, 2014, 11:04:39 AM |
|
alla fine ho deciso di cominciare un pò dal basso e ho acquistato il libro Programmazione in C di King
|
|
|
|
Sampey
Legendary
Offline
Activity: 2632
Merit: 1040
|
|
March 19, 2014, 11:12:25 AM |
|
Dopo che avrai imparato i linguaggi, la grammatica e le routine (nonchè il concetto di oggetto dato che buona parte del mondo informatico si muove in object-oriented programming) avrai una grossa scelta da fare (di cui io ti consiglio entrambe).
Desktop Application VS Web Application.
In questo caso la strada si dividerà in 2 nel contesto della presentazione grafica e della comunicazione Client Server oppure Solo Client. Sono 2 contesti molto diversi, che uniscono le loro logiche nella parte "elaborativa" (una classe può essere utilizzata sia in una desktop che in una web application) e si separano completamente nella parte GUI (Graphic User Interface). Per questo motivo uno dei punti fondamentali della programmazione riguarda la separazione della grafica dalla parte elaborativa.
|
|
|
|
|
bertani
Legendary
Offline
Activity: 1022
Merit: 1000
|
|
March 19, 2014, 11:21:21 AM |
|
In quanto a paradigmi il passaggio da procedurale a object oriented non e' banale, il contrario e' piu' semplice. Il funzionale sta da se', ma non sottovalutarlo
|
|
|
|
golikcoin
Legendary
Offline
Activity: 952
Merit: 1000
|
|
March 20, 2014, 12:48:34 PM |
|
|
▄████▄ ▄████████▄ ▄████████████▄ ▄████████████████▄ ████████████████████ ▄█▄ ▄███▄ ▄███▄ ▄████████████████▀ ▄██████████ ▄▄▄▀█████▀▄▄▄▄▀█████▀▄▄▄ ▀██▄ ▄██▀ ▀██▄ ▄██▀ ▀██▄ ▄██▀ ██ ▄█████▄▀▀▀▄██████▄▀▀▀▄█████▄ ▀██▄ ▄██▀ ▀██▄ ▄██▀ ▀██▄ ▄██▀ ▄█▄ ▀██████████████▄ ████████████████████████████ ▀██▄ ▄██▀ ▀██▄ ▄██▀ ▀██▄ ▄██▀ ▀█▀ ██ ▀████████████████████████▀ ▀██▄ ▄██▀ ▀██▄ ▄██▀ ▄█▄ ▀██▄ ▄██▀ ██ ▀████████████████████▀ ▀███▀ ▀███▀ ▀█▀ ▀███▀ ▄███████████████████████████████████▀ ▀████████████████▀ ▀████████████▀ ▀████████▀ ▀████▀
| ║║ ║█ ║█ ║║ | .
| .
║║ ██ ║║
| .
| .
║║ ██ ║║
| .
| ║║ █║ █║ ║║ | |
|
|
|
mix1234
Member
Offline
Activity: 112
Merit: 10
|
|
March 21, 2014, 09:37:07 PM |
|
Consiglio spesso per partire Python, ma poi ognuno sceglie la sua strada.. io sono partito con ASM, ma non so se te lo consiglierei per il tuo caso (se vuoi capire bene come funziona il tutto _dal basso_ allora e' ottimo, ma richiede sforzi non indifferenti fare la scalata dal basso verso l'alto).
Io ero partito dal Python, e qualcosina sono riuscito a farci. Poi però non sono riuscito a usare nessun altro linguaggio perchè mi sembravano tutti avere una sintassi troppo eleaborata (ad esempio mi dimenticavo sempre i ";" nel C o robe simili ). Quindi diciamo che mi ero abituato troppo bene. Vabbè comunque lo facevo così per hobby/divertimento, non mi ci sono mai messo seriamente.
|
|
|
|
Stemby
Legendary
Offline
Activity: 2450
Merit: 1008
|
|
March 22, 2014, 10:09:03 PM |
|
Personalmente ti consiglio la 2
Io invece la 3 nonostante python3 sia "il futuro di python", il presente (e quindi tanto codice già scritto) è ancora 2.7
Dai, ormai da almeno un paio di anni Python 3 si usa proprio per tutto. Programmo solo per hobby, ma son passati molti anni dall'ultima volta che son stato costretto ad usare Python 2. Poi, ora che avrà preso confidenza con Python 3 saranno passati mesi o anni, quindi è meglio portarsi un po' avanti. Ruby spacca di brutto... sinceramente non pensavo che fosse così diffuso. Ciao!
|
“…virtual currencies, could have a substitution effect on central bank money if they become widely accepted.” ECB Report, October 2012
|
|
|
|