[THREAD UFFICIALE] Raccolta di materiale di studio, manuali, tutorial, risorse. Tutti i linguaggi

L

lock3r

Ospite
#1
Questo thread è una raccolta di materiale di studio, manuali, tutorial.
Vige una sola regola: non si posta materiale reperito illegalmente, solo manuali free o comunque liberamente scaricabili.


Link di download agli editor più noti.
Eclipse
Compatibile con moltissimi linguaggi (Java, C, C++, python... fare riferimento al sito ufficiale per una lista completa dei linguaggi supportati) ma spesso i compilatori sono da installare separatamente, a mano o tramite plug in. Multipiattaforma, esiste in versione Windows, Mac Os, Linux (per tutte e 3 a 32 o 64bit) e Mobile.
Eclipse Downloads

Code::Blocks
Uno degli editor più famosi per il C ed il C++, compatibile con Linux, Mac OS, Windows.
Downloads

Notepad++
Famosissimo editor per windows, basato sulle win32.
Notepad++ Home

Sublime Text
Ottimo editor cross-platform gratis con moltissime caratteristiche avanzate
Sublime Text - Download

Gedit
Editor testuale di GNOME, offre tramite plug in tutte le funzionalità possibili ed immaginabili. Multipiattaforma, consigliato solo ad utenti esperti. Di base offre solo il riconoscimento della sintassi.
Apps/Gedit - GNOME Wiki!

Visual Studio Community
Un IDE gratuito, con funzionalità complete ed estendibile per la creazione di applicazioni moderne per Windows, Android e iOS,
nonché di applicazioni Web e servizi cloud

https://www.visualstudio.com/it-it/products/visual-studio-community-vs.aspx

Visual Studio Code
Modifica del codice ridefinita e ottimizzata per lo sviluppo e il debug di applicazioni cloud e Web moderne.
Visual Studio Code è disponibile gratis sulla tua piattaforma preferita: Linux, Mac OS X e Windows

https://www.visualstudio.com/it-it/products/code-vs.aspx


free-programming-books
Progetto su Github che raccoglie risorse per la programmazione e non
https://github.com/vhf/free-programming-books/blob/master/free-programming-books-it.md


Java
Sono presenti i link per il download di Thinkin in Java, un ottimo manuale per i principianti in Java, free in versione elettronica, e link a manuali liberamente scaricabili dalla rete.
Link alla pagina ufficiale del libro
Bruce Eckel's MindView, Inc: Free Electronic Book: Thinking in Java, 3rd Edition

Link per il download:
http://mindview.net/Books/TIJ/DownloadSites

Manuali vari in Italiano reperibili in rete....
http://www.demonello.it/ebooks/[eBook_ita]_Manuale_Ita_Pratico_Di_Java.pdf

...da Wikibook...
http://it.wikibooks.org/wiki/Java

Ottimo manuale per la versione 5 di Claudio De Sio Cesari: oltre 700 pagine di linguaggio e teoria OOP.
http://www.claudiodesio.com/download/oo_&&_java_5.zip

Introduction to Programming Using Java
Ottimo testo in inglese per imparare il Java
http://math.hws.edu/javanotes/

Sviluppo di Interfacce Grafiche in Java. Concetti di Base ed Esempi.
Dispensa didattica
http://pages.di.unipi.it/milazzo/teaching/AA1516-ProgJava/extra/DispensaSwing.pdf

Java per Android
La programmazione per Android, benché basata su Java, offre un approccio sensibilmente diverso dalla programmazione normale.

C
Manuali in Italiano:
Guida pratica C:
http://blacklight.gotdns.org/guidac.pdf

Guida C di wikibook (ottima e completissima):
https://it.wikibooks.org/wiki/C

Guida completa alle librerie C (da wikibook)
https://www-s.acm.illinois.edu/webmonkeys/book/c_guide/index.html

Si consiglia inoltre la bibbia del C che é scritta veramente molto bene: "il linguaggio C, fondamenti e tecniche di programmazione" di Paul e Harvey Deitel.

C++
Guida: dal C al C++ by wikibook (ottima per chi deve affrontare il passaggio verso un linguaggio ad oggetti)
https://it.wikibooks.org/wiki/Dal_C_al_C++

Corso completo:
http://www.bo.cnr.it/corsi-di-informatica/corsoCstandard/Lezioni/01Indice.html

In inglese ma ottimi:
Thinkin in C++ vol 1 & 2
http://www.manuali.it/manuali-guide...u/Thinking-in-Cpiupiu-2nd-ed-Volume-1/595.htm
http://www.manuali.it/manuali-guide...u/Thinking-in-Cpiupiu-2nd-ed-Volume-2/665.htm
cplusplus.com
Sito di informazioni, articoli e tutorials
http://www.cplusplus.com/

C#

Python

Ruby
Learn Ruby - The Hard Way
http://learnrubythehardway.org/book/

Ruby on Rails Tutorial
http://www.railstutorial.it/book (in italiano)
https://www.railstutorial.org/book/ (versione originale in inglese)

Visual Basic .NET
Manuale di programmazione con Microsoft Visual Basic 2010 Express per insegnanti di scuole dell’infanzia, primarie, medie
http://vbscuola.it/VB2010/A_Scuola_con_VB2010.pdf


Sviluppo Web
Web development tutorials (in inglese)
http://www.w3resource.com/index.php


Guida HTML5
https://www.web-link.it/html5/


Sicurezza e Pentesting
Progetto su Github che raccoglie e-books (in inglese)
https://github.com/Hack-with-Github/Free-Security-eBooks


Scripting
 
Ultima modifica da un moderatore:
3,228
491
Hardware Utente
CPU
Intel Core i5 4670K
Scheda Madre
Asus Z87-Plus
Hard Disk
WD Caviar Green 500GB
RAM
G.Skill Ares 2x4GB 1600MHz
Scheda Video
Sapphire 7850 1GB @ 1050MHz
Scheda Audio
Integrata
Monitor
Acer V193w
Alimentatore
XFX ProSeries 550W Core Edition
Case
CM HAF 912 plus
Sistema Operativo
ArchLinux + KDE - Windows 10
#2
Interessante.:ok:
Io consiglierei anche qualcosa riguardante la teoria, ciclo di vita del software, teoria dei dati ecc, un minimo di sistemi operativi/kernel. C e C++ vanno separati.
Per Java, c'è l'ottimo manuale per la versione 5 di Claudio De Sio Cesari: oltre 700 pagine di linguaggio e teoria OOP. Scaricabile gratuitamente qui: http://www.claudiodesio.com/download/oo_&&_java_5.zip
Prima era un libro, adesso l'autore ha reso libero il titolo, essendo arrivato alla versione 7.
Per python c'è anche: Una panoramica sulla documentazione | Linguaggio di programmazione Python
 
Ultima modifica:
L

lock3r

Ospite
#3
Interessante.:ok:
Io consiglierei (da studente) anche qualcosa riguardante la teoria, ciclo di vita del software, teoria dei dati ecc, un minimo di sistemi operativi/kernel.
Provvedo!!


C e C++ vanno separati.
Anche no! :P C++ è, come dice il nome, un superset di istruzioni C, quindi tecnicamente metterli insieme dovrebbe andar bene. Comunque separarli non costa niente!

Per Java, c'è l'ottimo manuale per la versione 5 di Claudio De Sio Cesari: oltre 700 pagine di linguaggio e teoria OOP. Scaricabile gratuitamente qui: http://www.claudiodesio.com/download/oo_&&_java_5.zip
Prima era un libro, adesso l'autore ha reso libero il titolo, essendo arrivato alla versione 7.
Per python c'è anche: Una panoramica sulla documentazione | Linguaggio di programmazione Python

Aggiungo subito! :)

- - - Updated - - -
@signore del tempo

Mhm il problema dei manuali sui cicli di vita etc è che normalmente sono argomenti affrontati dai manuali. Ci rifletto un po'. Se vuoi posta qualcosa che aggiorno il primo post!! :)
 
3,228
491
Hardware Utente
CPU
Intel Core i5 4670K
Scheda Madre
Asus Z87-Plus
Hard Disk
WD Caviar Green 500GB
RAM
G.Skill Ares 2x4GB 1600MHz
Scheda Video
Sapphire 7850 1GB @ 1050MHz
Scheda Audio
Integrata
Monitor
Acer V193w
Alimentatore
XFX ProSeries 550W Core Edition
Case
CM HAF 912 plus
Sistema Operativo
ArchLinux + KDE - Windows 10
#4
Anche no! :P C++ è, come dice il nome, un superset di istruzioni C, quindi tecnicamente metterli insieme dovrebbe andar bene. Comunque separarli non costa niente!
Meglio separarli. Parliamo a novellini. Già quando vedo "programmatori" che scrivono in C++ ma non usano OOP sbrocco, meglio eliminare il problema alla radice.

- - - Updated - - -

Per il C++ consiglio: http://www.bo.cnr.it/corsi-di-informatica/corsoCstandard/Lezioni/01Indice.html , corso molto completo. @wine
 

wine

Bannato a Vita
2,027
718
Hardware Utente
CPU
AMD Phenom II X4 955 C2 @3.6 GHz + TRUE 12 BE (push pull config)
Scheda Madre
Sabertooth 990FX
Hard Disk
Samsung 840 128 + Maxtor 500
RAM
4 GB Crucial Ballistix Elite
Scheda Video
AMD Radeon 5450
Scheda Audio
Integrata
Monitor
Samsung P24FHD
Alimentatore
Thermaltake Toughpower XT 775W modulare
Case
Cooler master CM 690 II
Sistema Operativo
ArchLinux GNOME - Winf8
#6
Ottima idea @lock3r.

Penso che magari andrebbe bene anche aggiungere in futuro linguaggi di scripting (come Lua) e linguaggi di markup.

Aggiungo un testo sul tanto amato/odiato C#:

http://www.programmersheaven.com/ebooks/csharp_ebook.pdf

È un testo in inglese, purtroppo si ferma a C#2 e si basa tantissimo sull'implementazione .NET anzichè sullo standard. Dovrebbe comunque andare bene per coloro che vogliono iniziare a conoscere le peculiarità del linguaggio.

Liberamente ridistribuibile ma NON modificabile.

- - - Updated - - -

Dai, così ridiamo con i 5 filosofi.:asd:

- - - Updated - - -

Mi piacerebbe anche riuscire a trovare qualcosa relativo a Vala, il linguaggio di programmazione con sintassi presa da C# (tanto) e Java (molto meno) ma che NON necessita di Virtual Machine.

Purtroppo non si trova nulla.
 
3,228
491
Hardware Utente
CPU
Intel Core i5 4670K
Scheda Madre
Asus Z87-Plus
Hard Disk
WD Caviar Green 500GB
RAM
G.Skill Ares 2x4GB 1600MHz
Scheda Video
Sapphire 7850 1GB @ 1050MHz
Scheda Audio
Integrata
Monitor
Acer V193w
Alimentatore
XFX ProSeries 550W Core Edition
Case
CM HAF 912 plus
Sistema Operativo
ArchLinux + KDE - Windows 10
#7
@wine @signore del tempo
Stavo pensando anche di postare un po' di classi già fatte che ho, tipo una test and set già fatta, un package fatto da me che aggiunge funzionalità a JFrame, il package con i design patterns già fatti pronti all'uso etc.
Che ne pensate?
No.
Se io insegnassi programmazione, probabilmente non permetterei di utilizzare codice scritto da altri per semplificarti il lavoro, neanche funzioni tipo pow() ecc.
Una volta che capisci il loro funzionamento, provi a farle tu stesso e fungono, il discorso cambia.
 
L

lock3r

Ospite
#8
No.
Se io insegnassi programmazione, probabilmente non permetterei di utilizzare codice scritto da altri per semplificarti il lavoro, neanche funzioni tipo pow() ecc.
Una volta che capisci il loro funzionamento, provi a farle tu stesso e fungono, il discorso cambia.
Sisi certo, però non è che offro funzioni di base già fatte tipo pow(). Ad esempio la classe ProTabbedPane serve per espandere le funzionalità di JTabbedPane, aggiungendo la possibilità di inserire testo verticale, sfumature, la possibilità di prendere le schede e modificarne l'ordine e così via a runtime etc etc. I design patterns sono solo già fatti nel senso di struttura della classe, ma ovviamente per usarli devi implementarli tu. Mi sembrava una buona idea perché ad esempio dopo che hai capito il funzionamento di un oggetto condiviso asincrono te ne freghi di scriverlo te (anche se l'esempio è un po' infelice visto che sono 4 righe di codice) ma ne cerchi uno già fatto, stessa cosa per le varie test and set e semafori, tanto quanto per le funzionalità avanzate di JFrame che sono da implementare. Boh, vediamo che ne pensa @wine!
 

wine

Bannato a Vita
2,027
718
Hardware Utente
CPU
AMD Phenom II X4 955 C2 @3.6 GHz + TRUE 12 BE (push pull config)
Scheda Madre
Sabertooth 990FX
Hard Disk
Samsung 840 128 + Maxtor 500
RAM
4 GB Crucial Ballistix Elite
Scheda Video
AMD Radeon 5450
Scheda Audio
Integrata
Monitor
Samsung P24FHD
Alimentatore
Thermaltake Toughpower XT 775W modulare
Case
Cooler master CM 690 II
Sistema Operativo
ArchLinux GNOME - Winf8
#9
Boh, vediamo che ne pensa @wine!
Se son cose semplici e non troppo complesse direi di si.

Magari per ogni linguaggio si potrebbe anche mettere un semplice esempio di main. :look:
 
3,228
491
Hardware Utente
CPU
Intel Core i5 4670K
Scheda Madre
Asus Z87-Plus
Hard Disk
WD Caviar Green 500GB
RAM
G.Skill Ares 2x4GB 1600MHz
Scheda Video
Sapphire 7850 1GB @ 1050MHz
Scheda Audio
Integrata
Monitor
Acer V193w
Alimentatore
XFX ProSeries 550W Core Edition
Case
CM HAF 912 plus
Sistema Operativo
ArchLinux + KDE - Windows 10
#10
Come editor aggiungerei tutta la gamma Visual Studio (v. Basic, v. C#, v. C++ ecc). Inoltre specificherei i linguaggi supportati dagli IDE.
Ancora meglio specificherei su quali OS gira; una guida di base a gcc/g++/gdb non sarebbe una cattiva idea.
 
L

lock3r

Ospite
#11
Come editor aggiungerei tutta la gamma Visual Studio (v. Basic, v. C#, v. C++ ecc). Inoltre specificherei i linguaggi supportati dagli IDE.
Ancora meglio specificherei su quali OS gira; una guida di base a gcc/g++/gdb non sarebbe una cattiva idea.
Allora, riguardo VB e VB.net io non ne so veramente niente, nel senso che mi rifiuto di usare una piattaforma come .net e il VB non mi ha mai attirato. La faresti tu una raccolta per il VB ed affini, magari mi raccogli anche qualche tutorial perché io non avendolo mai usato non sono in grado di capire se è una buona guida oppure no. Grazie amico :)

Per le guide su gcc ed affini quoto, ora cerco in rete qualcosina, non ho voglia di scrivere visto e considerato che ce ne sono centinaia. Per gli IDE mi metto subito al lavoro. :sisi:

- - - Updated - - -
@signore del tempo

ho aggiornato la lista degli editor, se hai altri consigli ben vengano!!!! :D
 
Mi Piace: wine

wine

Bannato a Vita
2,027
718
Hardware Utente
CPU
AMD Phenom II X4 955 C2 @3.6 GHz + TRUE 12 BE (push pull config)
Scheda Madre
Sabertooth 990FX
Hard Disk
Samsung 840 128 + Maxtor 500
RAM
4 GB Crucial Ballistix Elite
Scheda Video
AMD Radeon 5450
Scheda Audio
Integrata
Monitor
Samsung P24FHD
Alimentatore
Thermaltake Toughpower XT 775W modulare
Case
Cooler master CM 690 II
Sistema Operativo
ArchLinux GNOME - Winf8
#12
Come editor aggiungerei tutta la gamma Visual Studio (v. Basic, v. C#, v. C++ ecc). Inoltre specificherei i linguaggi supportati dagli IDE.
Ancora meglio specificherei su quali OS gira; una guida di base a gcc/g++/gdb non sarebbe una cattiva idea.
Vedo che siete in tanti a usare ancora gcc come acronimo di GNU C Compiler. :hihi:
 

wine

Bannato a Vita
2,027
718
Hardware Utente
CPU
AMD Phenom II X4 955 C2 @3.6 GHz + TRUE 12 BE (push pull config)
Scheda Madre
Sabertooth 990FX
Hard Disk
Samsung 840 128 + Maxtor 500
RAM
4 GB Crucial Ballistix Elite
Scheda Video
AMD Radeon 5450
Scheda Audio
Integrata
Monitor
Samsung P24FHD
Alimentatore
Thermaltake Toughpower XT 775W modulare
Case
Cooler master CM 690 II
Sistema Operativo
ArchLinux GNOME - Winf8
#13
Allora, riguardo VB e VB.net io non ne so veramente niente, nel senso che mi rifiuto di usare una piattaforma come .net e il VB non mi ha mai attirato. La faresti tu una raccolta per il VB ed affini, magari mi raccogli anche qualche tutorial perché io non avendolo mai usato non sono in grado di capire se è una buona guida oppure no. Grazie amico :)
Anche tu seguace di "open your source, open your mind"? :asd:

Faccio bene a seguire questa guida secondo voi?Per chi è pratico pensa che sia una buona guida?Non preocupatevi se è lento a caricare il PDF, dopotutto sono più di 1000 pagine :asd:
@signore del tempo potrebbe esserti d'aiuto. A me Visual Basic non è mai interessato. Forse lui lo conosce. :sisi:
 
L

lock3r

Ospite
#14
Anche tu seguace di "open your source, open your mind"? :asd:
Nì. Non è solo quello. La filosofia Open Source mi piace moltissimo, trovo giusto che chi compra un SW abbia accesso completo al suddetto, potendolo modificare etc, ma soprattutto non sopporto le piattaforme chiuse e proprietarie, non sopporto le limitazioni assurde imposte da queste piattaforme e non sopporto che il mio lavoro non sia riusabile. E poi gli editor grafici ti castrano la mente e uccidono la tua fantasia, imho. :)
 
3,228
491
Hardware Utente
CPU
Intel Core i5 4670K
Scheda Madre
Asus Z87-Plus
Hard Disk
WD Caviar Green 500GB
RAM
G.Skill Ares 2x4GB 1600MHz
Scheda Video
Sapphire 7850 1GB @ 1050MHz
Scheda Audio
Integrata
Monitor
Acer V193w
Alimentatore
XFX ProSeries 550W Core Edition
Case
CM HAF 912 plus
Sistema Operativo
ArchLinux + KDE - Windows 10
#15
Vedo che siete in tanti a usare ancora gcc come acronimo di GNU C Compiler. :hihi:
?

Non conosco .NET. Come libro acquistabile c'è qualcosa di asp.italia, mi sembra.