Materiale didattico

di il
1 risposte

Materiale didattico

Salve a tutti,

Sono nuovo nel forum, come potete capire dal titolo del post, sto cercando materiale didattico per imparare a programmare.

Nell'ultimo periodo mi sto affacciando alla programmazione anche se NON ho un background educativo nell'argomento. Ho trovato molti siti per imparare diversi linguaggi ma ho la sensazione che alla fine dei corsi proposti da quei siti non so ancora come acquisire quella indipendenza nella elaborazione del mio proprio codice che vorrei.

Finora ho nozioni basi di Python, C++, HTML e Java.

La mia domanda quindi é: esiste materiale didattico (abbastanza pratico) per acquisire più padronanza di quei linguaggi?

Per "abbastanza pratico" intendo esercizi ma non solo, anche progetti con altre persone o collaborazioni online (possibilmente gratis).

Spero che il mio post sia abbastanza chiaro. Grazie e buona domenica a tutti.

1 Risposte

  • Re: Materiale didattico

    @MarcoPolo: il tuo approccio, come nel 99.999999% dei casi, parte da un concetto sbagliato!

    Conoscere un linguaggio di programmazione (o anche N linguaggi) NON VUOL DIRE SAPER PROGRAMMARE.

    Saper programmare vuol dire saper implementare un algoritmo/risolvere un problema, mediante un computer INDIPENDENTEMENTE dal linguaggio di programmazione.

    Per fare un esempio: sapere italiano, inglese e klingon (se sei un patito di Star Trek) NON VUOL DIRE essere in grado di scrivere un racconto di fantascienza, oppure un giallo.
    Ma se sai scrivere racconti di fantascienza o racconti gialli, lo puoi fare in qualunque lingua!

    Ora, avere nozioni di C++/Python/Java (che fanno parte della stessa categoria di paradigmi di programmazione, con gli opportuni dettagli) non basta.
    Saprai si e no l'1/10000 di quello che serve.

    Per esempio, giusto per darti qualche indicazione di massima:

    - proprieta' delle principali strutture dati (lista, vettore, struttura, albero grafo, mappa, ...)
    - proprieta' dei principali algoritmi (ordinamento, scansione di una lista/albero/grafo, ...)
    - programmazione parallela/thread
    - programmazione di rete/http,ftp, e tcp/ip
    - accesso ai database/teoria relazionale dei dati, ed oggi anche NoSQL DB

    per poi passare a argomenti specifici per il particolare settore di interesse.

    Ad esempio, se ti interessa il Web e le applicazioni Web, oltre a HTML, CSS, JavaScript, devi conoscere XML, XSLT, XPath, concetti su come si progettano le interfacce utente, un'infinita' di librerie (da jQuery, a D3, ed altre n-mila ...). E questo SOLO PER LA PARTE CLIENT. Poi c'e' la parte Server!

    NON ESISTE un tutorial per imparare tutte queste cose: servono TANTI libri, uno (e spesso PIU' di uno) per ogni argomento, e poi saperli fondere tutti insieme.

    Un eventuale tutorial dovrebbe avere decine o centinaia DI MIGLIAIA di pagine!

    Se pensi che il solo libro introduttivo su Python ha circa 1000 (MILLE) pagine!
    Prova ad immaginare un tutorial di 1000 pagine per ogni argomento indicato!
Devi accedere o registrarti per scrivere nel forum
1 risposte