PDA

View Full Version : [Java] Imparare a programmare: Consigli per un libro di programmazione


badboy-j
31-03-2009, 08:33
Salve a tutti!:D
Vorrei illustrarvi la mia situazione: sono iscritto alla facoltà di informatica e dovrei fare l'esame di programmazione Java. Purtroppo alle lezioni del mio professore non capisco un benemerito.......... Era già successo con il corso di programmazione C, allora ho preso l'ottimo (per me) libro "Corso completo di programmazione C" Deitel & Deitel è ho imparato. Ho preso 23 all'esame. Ora vorrei fare lo stesso con Java e mi servirebbe un consiglio sul manuale da comprare. Sono graditi libri con molti esempi e moltissimi esercizi. Ovviamente parto da zero.
Mi hanno consigliato "Java 2 La Guida Completa" 5/ed, McGraw Hill. Che ne dite? P.S: Il libro deve essere italiano, prima o poi imparerò l'inglese :doh:

Grazie cari!!!:D :D :D

agente mm8
31-03-2009, 13:37
Io ti consiglio "Java - Mattone dopo Mattone". E' completo, in italiano, e spiega dettagliatamente sia j2se (Standard Edition) sia j2ee (Enterprise Edition).
;)

ndakota
31-03-2009, 14:28
io ti consiglio questo
http://www.libreriastrategica.it/libri/__concetti_informatica_fondamenti_java.php
ce l'ho e mi sembra ottimo :)

RaouL_BennetH
31-03-2009, 16:22
Scusa l'intromissione :)

Volevo farti una domanda (senza nessuna vena polemica) dato che leggo spesso richieste di consigli tipo la tua:

Mi chiedevo.... possibile mai che nelle facoltà di informatica gli studenti non sappiano nemmeno su cosa devono studiare ? Cioè, non ci sono testi ufficiali, dispense etc??

E poi... possibile che i professori di informatica a quanto sembra siano più ignoranti degli studenti ?


Ripeto, non è assolutamente una polemica rivolta direttamente a te, ho solo approfittato dello spunto :)

Grazie mille.

RaouL.

badboy-j
31-03-2009, 16:59
Scusa l'intromissione :)

Volevo farti una domanda (senza nessuna vena polemica) dato che leggo spesso richieste di consigli tipo la tua:

Mi chiedevo.... possibile mai che nelle facoltà di informatica gli studenti non sappiano nemmeno su cosa devono studiare ? Cioè, non ci sono testi ufficiali, dispense etc??

E poi... possibile che i professori di informatica a quanto sembra siano più ignoranti degli studenti ?


Ripeto, non è assolutamente una polemica rivolta direttamente a te, ho solo approfittato dello spunto :)

Grazie mille.

RaouL.

Ti spiego per sommi capi come funziona rispondendo alle tue domande:

1) Il metodo del mio professore è il seguente:
-Arriva
-Scrive un programma
-Lo spiega, cioè: ti comincia a spiegare le cose che deve, per quelle che non sappiamo e che verranno affrontate dopo dice "Questo lo vediamo più avanti"
-Assegna un esercizio che sarà quello che verrà fatto la prossima lezione
-Va via tutto contento, pensando di averci insegnato anche oggi qualcosa

Quello del professore precedente è invece il seguente:
-Arriva
-Apre il suo bel Vaio da 1.999,00€
-Lo collega al proiettore e fa partire le slide
-Spiega la programmazione commentando i programmi scritti sulle slide
-Va via tutto contento, pensando anche lui di averci insegnato anche oggi qualcosa

2) I professori non solo assolutamente più ignoranti degli alunni. Il problema sta nel fatto che la materia viene spiegata in modo (secondo me) non adeguato.

Un professore su 10 capisce le esigenze degli alunni. L'anno scorso ho avuto un professore di "Architetture degli elaboratori" fantastico. Riesco a tracciare tutto il percorso del segnale di un istruzione in linguaggio Assembly all'interno di un processore ad occhi chiusi.... e non riesco a capire perchè l'istruzione System.out.println stampa qualcosa.

A quanto pare non sono l'unico che la pensa così nella mia facoltà, ma per carità, mi posso anche sbagliare. Questo è solo un mio punto di vista.

Voglio solo dare un consiglio ai posteri:
Se da grandi volete fare i programmatori, non andate all'università. imparerete sicuramente di più seguendo un corso specifico. Grazie, ciao!
:Prrr:

Tzor
31-03-2009, 18:58
"Dai fondamenti agli oggetti - Corso di programmazione JAVA"

di Giovanni Pighizzini e Mauro Ferrari

Pearson - Addison Wesley






Io mi sono trovato benissimo, libro con molti esempi

~FullSyst3m~
31-03-2009, 21:47
Ti spiego per sommi capi come funziona rispondendo alle tue domande:

1) Il metodo del mio professore è il seguente:
-Arriva
-Scrive un programma
-Lo spiega, cioè: ti comincia a spiegare le cose che deve, per quelle che non sappiamo e che verranno affrontate dopo dice "Questo lo vediamo più avanti"
-Assegna un esercizio che sarà quello che verrà fatto la prossima lezione
-Va via tutto contento, pensando di averci insegnato anche oggi qualcosa

Quello del professore precedente è invece il seguente:
-Arriva
-Apre il suo bel Vaio da 1.999,00€
-Lo collega al proiettore e fa partire le slide
-Spiega la programmazione commentando i programmi scritti sulle slide
-Va via tutto contento, pensando anche lui di averci insegnato anche oggi qualcosa

2) I professori non solo assolutamente più ignoranti degli alunni. Il problema sta nel fatto che la materia viene spiegata in modo (secondo me) non adeguato.

Un professore su 10 capisce le esigenze degli alunni. L'anno scorso ho avuto un professore di "Architetture degli elaboratori" fantastico. Riesco a tracciare tutto il percorso del segnale di un istruzione in linguaggio Assembly all'interno di un processore ad occhi chiusi.... e non riesco a capire perchè l'istruzione System.out.println stampa qualcosa.

A quanto pare non sono l'unico che la pensa così nella mia facoltà, ma per carità, mi posso anche sbagliare. Questo è solo un mio punto di vista.

Voglio solo dare un consiglio ai posteri:
Se da grandi volete fare i programmatori, non andate all'università. imparerete sicuramente di più seguendo un corso specifico. Grazie, ciao!
:Prrr:

Spero che di non trovare un prof cosi. Comunque questa cosa fa riflettere molto su due punti, almeno a me:

1) Quando uno dice: "ma perchè alcune uni dicono che sono migliori di altre?". Semplice: il livello della didattica e la bravura dei prof. Come hai detto tu, ci sono prof che ti fanno capire le cose e le puoi fare ad occhi chiusi.

2) Molti professori prendono per scontato che i loro alunni andando ad informatica sanno già programmare. Invece persone come me ad esempio, che non hanno avuto la fortuna di scoprire la programmazione alle scuole medie come molti al giorno d'oggi, iniziano più tardi e magari arrivano all'uni con poca pratica ed esperienza o addirittura, come molti che conosco, senza aver mai programmato (e poi diventano più bravi di chi ha iniziato a 11 anni).

Questo è tutto. Se uno deve andare all'uni per fare il programmatore, come giustamente hai detto tu, può anche evitare. Per quello basta fare un ITIS o studiare e fare pratica da autodidatta.

Energy++
01-04-2009, 11:26
Ti spiego per sommi capi come funziona rispondendo alle tue domande:

1) Il metodo del mio professore è il seguente:
-Arriva
-Scrive un programma
-Lo spiega, cioè: ti comincia a spiegare le cose che deve, per quelle che non sappiamo e che verranno affrontate dopo dice "Questo lo vediamo più avanti"
-Assegna un esercizio che sarà quello che verrà fatto la prossima lezione
-Va via tutto contento, pensando di averci insegnato anche oggi qualcosa

Quello del professore precedente è invece il seguente:
-Arriva
-Apre il suo bel Vaio da 1.999,00€
-Lo collega al proiettore e fa partire le slide
-Spiega la programmazione commentando i programmi scritti sulle slide
-Va via tutto contento, pensando anche lui di averci insegnato anche oggi qualcosa

2) I professori non solo assolutamente più ignoranti degli alunni. Il problema sta nel fatto che la materia viene spiegata in modo (secondo me) non adeguato.

Un professore su 10 capisce le esigenze degli alunni. L'anno scorso ho avuto un professore di "Architetture degli elaboratori" fantastico. Riesco a tracciare tutto il percorso del segnale di un istruzione in linguaggio Assembly all'interno di un processore ad occhi chiusi.... e non riesco a capire perchè l'istruzione System.out.println stampa qualcosa.

A quanto pare non sono l'unico che la pensa così nella mia facoltà, ma per carità, mi posso anche sbagliare. Questo è solo un mio punto di vista.

Voglio solo dare un consiglio ai posteri:
Se da grandi volete fare i programmatori, non andate all'università. imparerete sicuramente di più seguendo un corso specifico. Grazie, ciao!
:Prrr:

quoto tutto specialmente la parte in grassetto... :(, la maggior parte fa così.

Purtroppo funziona così in ambiente universitario a quanto ho capito... fanno il loro lavoro (e neanche tanto bene) solo per perchè devono, poi ovviamente possono essere persone preparatissime e sapere benisssimo la loro materia

~FullSyst3m~
01-04-2009, 11:27
quoto tutto specialmente la parte in grassetto... :(

Purtroppo funziona così in ambiente universitario a quanto ho capito... fanno il loro lavoro (e neanche tanto bene) solo per perchè devono

Spero di non incontrare prof cosi.

Energy++
01-04-2009, 11:32
Spero di non incontrare prof cosi.

non ti preoccupare, ci farai l'abitudine :p

~FullSyst3m~
01-04-2009, 11:33
non ti preoccupare, ci farai l'abitudine :p

Porca tr....:muro:

Samos87
01-04-2009, 12:25
Dipende molto dai prof., alcuni sono eccezionali ed altri schiacciano un bottone e leggono le slides (che magari non sono neanche le loro).

L'importante é arrangiarsi nel caso il prof. spieghi male e non lasciar perdere la materia!

~FullSyst3m~
01-04-2009, 12:32
Dipende molto dai prof., alcuni sono eccezionali ed altri schiacciano un bottone e leggono le slides (che magari non sono neanche le loro).

L'importante é arrangiarsi nel caso il prof. spieghi male e non lasciar perdere la materia!

Uno va all'uni per imparare, se si deve arrangiare perchè trova prof schiaccia bottoni, tanto vale fare l'autodidatta e si risparmiano pure soldi.

banryu79
01-04-2009, 12:53
Uno va all'uni per imparare, se si deve arrangiare perchè trova prof schiaccia bottoni, tanto vale fare l'autodidatta e si risparmiano pure soldi.
Eh no, all'uni non si va per imparare, si va per sostenere esami e prendere la laurea, è diverso (e quindi si pagano tasse e balzelli) :asd:
Sono ironico, eh! :)

~FullSyst3m~
01-04-2009, 12:55
Eh no, all'uni non si va per imparare, si va per sostenere esami e prendere la laurea, è diverso (e quindi si pagano tasse e balzelli) :asd:
Sono ironico, eh! :)

Si lo so ;)

Samos87
01-04-2009, 14:01
Uno va all'uni per imparare, se si deve arrangiare perchè trova prof schiaccia bottoni, tanto vale fare l'autodidatta e si risparmiano pure soldi.

Ok mi scuso per il mega OT, dico quest'ultima cosa e poi basta.

A parer mio l'università da una visione più ampia che altrimenti é difficile avere, poi visto che il tempo é sempre ZERO praticamente NULLA viene approfondito abbastanza e quindi arrangiarsi é sempre necessario. Perdersi i prof. eccezionali ed una formazione universitaria per qualche prof. incompetente non ne vale la pena secondo me ;).

P.S. Per quel che vedo circa la metà degli universitari (io sono nell'altra) va per il pezzo di carta, imparare é secondario.

~FullSyst3m~
01-04-2009, 14:41
Ok mi scuso per il mega OT, dico quest'ultima cosa e poi basta.

A parer mio l'università da una visione più ampia che altrimenti é difficile avere, poi visto che il tempo é sempre ZERO praticamente NULLA viene approfondito abbastanza e quindi arrangiarsi é sempre necessario. Perdersi i prof. eccezionali ed una formazione universitaria per qualche prof. incompetente non ne vale la pena secondo me ;).

P.S. Per quel che vedo circa la metà degli universitari (io sono nell'altra) va per il pezzo di carta, imparare é secondario.

Queste sono le persone che non imparano nulla.

islandofjava
01-04-2009, 14:57
Salve a tutti!:D
Vorrei illustrarvi la mia situazione: sono iscritto alla facoltà di informatica e dovrei fare l'esame di programmazione Java. Purtroppo alle lezioni del mio professore non capisco un benemerito.......... Era già successo con il corso di programmazione C, allora ho preso l'ottimo (per me) libro "Corso completo di programmazione C" Deitel & Deitel è ho imparato. Ho preso 23 all'esame. Ora vorrei fare lo stesso con Java e mi servirebbe un consiglio sul manuale da comprare. Sono graditi libri con molti esempi e moltissimi esercizi. Ovviamente parto da zero.
Mi hanno consigliato "Java 2 La Guida Completa" 5/ed, McGraw Hill. Che ne dite? P.S: Il libro deve essere italiano, prima o poi imparerò l'inglese :doh:

Grazie cari!!!:D :D :D

I Deiteli non li trovo entusiasmanti.
Quello su C++ è fatto da cani.
Java così così.

Mattone dopo Mattone ce l'ho ma la versione cartacea.
Secondo me è più adatto a chi sa già un po' programmare, quindi nel tuo caso potrebbe andare bene.
La versione online non è aggiornata da tanto ma dacci un occhio :)
http://www.java-net.it/jmonline/introduzione/indice.htm

Se vuoi qualcosa di gratuito valuta anche il lavoro di Claudio De Sio.
http://www.claudiodesio.com/


Sull'argomento Università, diciamo che è abbatanza ciclico.
Comunque per la complessità e la varietà di materie, lo studente si deve armare anche di buona volontà e fare da solo.
E laurearsi in Informatica non significa solo imparare a programmare. Anche chi ci va solo per conseguire un pezzo di carta sviluppa capacità e competenze che lo rendono molto più flessibile di fronte alle problematiche proposte sul lavoro e con un livello di astrazione che lo colloca sopra a chi si ferma prima.
Non è sempre così ma di solito sì.
Per raggiungere la stessa maturità un autodidatta deve faticare molto di più con il rischio di imparare bad practice che poi andranno corrette in un'età in cui risulta più difficile adattarsi.

~FullSyst3m~
01-04-2009, 22:39
I Deiteli non li trovo entusiasmanti.
Quello su C++ è fatto da cani.
Java così così.

Mattone dopo Mattone ce l'ho ma la versione cartacea.
Secondo me è più adatto a chi sa già un po' programmare, quindi nel tuo caso potrebbe andare bene.
La versione online non è aggiornata da tanto ma dacci un occhio :)
http://www.java-net.it/jmonline/introduzione/indice.htm

Se vuoi qualcosa di gratuito valuta anche il lavoro di Claudio De Sio.
http://www.claudiodesio.com/


Sull'argomento Università, diciamo che è abbatanza ciclico.
Comunque per la complessità e la varietà di materie, lo studente si deve armare anche di buona volontà e fare da solo.
E laurearsi in Informatica non significa solo imparare a programmare. Anche chi ci va solo per conseguire un pezzo di carta sviluppa capacità e competenze che lo rendono molto più flessibile di fronte alle problematiche proposte sul lavoro e con un livello di astrazione che lo colloca sopra a chi si ferma prima.
Non è sempre così ma di solito sì.
Per raggiungere la stessa maturità un autodidatta deve faticare molto di più con il rischio di imparare bad practice che poi andranno corrette in un'età in cui risulta più difficile adattarsi.

Eppure molti diplomati e autodidatti fanno i programmatori. Questo perchè li formano e costano poco. Chi li assume evidentemente non pretende la forma mentis di un informatico. Comunque se chi ci va solo per la carta acquisisce una certa mentalità, figuriamoci chi ci va per imparare e farne un'esperienza e non solo per la carta.

P.S: un'età nella quale risulta più difficile adattarsi per quale motivo?

islandofjava
02-04-2009, 01:00
Eppure molti diplomati e autodidatti fanno i programmatori.

Sì ma parti sempre da una premessa sbagliata. Chi esce da Informatica con le competenze acquisite non mira a fare solo il programmatore; i risvolti dal punto di vista della carriera sono molteplici e molti di più di chi quel titolo non ce l'ha. E non solo perché nel mondo del lavoro ci sono barriere imposte da chi offre posti di lavoro (ovvero quando richiedono la laurea) ma perché proprio tecnicamente chi l'ha seguito ha una marcia in più.

Poi programmatore vuol dire tutto e non vuol dire niente.

Se stiamo parlando di coder allora quello lo può fare fino ad un certo livello un diplomato. Se stiamo parlando di software architect di soluzioni mediamente complesse, non lo può fare perché entrano in gioco problematiche per cui chi ha studiato si trova con gli strumenti giusti per risolverle.


Questo perchè li formano e costano poco.

La formazione in un'azienda non costa mai poco.
E gli stipendi in Italia sono livellati, che tu sia diplomato o laureato all'inizio (se sei solo un coder) prendi praticamente uguale.
Per cui all'azienda conviene tu abbia a parità di costo maggiori competenze o esperienza.


Chi li assume evidentemente non pretende la forma mentis di un informatico.

Sì ma non si può fare una regola generale. Dipende da caso a caso. A maggior ragione poiché in Italia domina la PMI, ogni contesto di lavoro è a sé e dipende da cosa cerca quel datore di lavoro in quell'azienda e per magari un progetto preciso.


Comunque se chi ci va solo per la carta acquisisce una certa mentalità, figuriamoci chi ci va per imparare e farne un'esperienza e non solo per la carta.

Beh ma è normale.
Pur andando lì per il pezzo di carta, per andare avanti ti devi fare il mazzo per cui per osmosi pur non volendo immagazzinare conoscenze, le assimili, come in un processo di osmosi.
Se poi ti applichi e lavori su quelle competenze (nel senso che ti aggiorni e studi al di là di quel che è previsto nel programma) allora i risultati saranno ancora maggiori, soprattutto in prospettiva lavorativa.


P.S: un'età nella quale risulta più difficile adattarsi per quale motivo?

Per un problema fisiologico.
Oltre all'età anagrafica, c'è anche un'età cerebrale.
Più vai in là con gli anni e più la tua capacità di apprendimento ecc. ecc. diminuisce.

~FullSyst3m~
02-04-2009, 01:08
Sì ma parti sempre da una premessa sbagliata. Chi esce da Informatica con le competenze acquisite non mira a fare solo il programmatore; i risvolti dal punto di vista della carriera sono molteplici e molti di più di chi quel titolo non ce l'ha. E non solo perché nel mondo del lavoro ci sono barriere imposte da chi offre posti di lavoro (ovvero quando richiedono la laurea) ma perché proprio tecnicamente chi l'ha seguito ha una marcia in più.

Certo.

Poi programmatore vuol dire tutto e non vuol dire niente.

Cioè?

Sì ma non si può fare una regola generale. Dipende da caso a caso. A maggior ragione poiché in Italia domina la PMI, ogni contesto di lavoro è a sé e dipende da cosa cerca quel datore di lavoro in quell'azienda e per magari un progetto preciso.

PMI?

Per un problema fisiologico.
Oltre all'età anagrafica, c'è anche un'età cerebrale.
Più vai in là con gli anni e più la tua capacità di apprendimento ecc. ecc. diminuisce.

Io spero di non essere svantaggiato dato che ho iniziato a 21 anni, prima di allora non conoscevo programmazione e compagnia bella, anche se era fin dalle elementari che smanettavo con il pc, ma a livello superficiale, mai approfondito tipo programmazione, sicurezza ecc.

islandofjava
02-04-2009, 01:55
Certo.

Quindi capisci che il fatto che ci siano persone solo diplomate che lavorano in questo settore non significa che la laurea non sia uno spartiacque tra chi ce l'ha e chi no nel mondo del lavoro.


Cioè?


La risposta alla tua domanda sta nella frase che non hai quotato :)

Oltretutto termine programmatore ha assunto un valore quasi dispregiativo perché i non addetti ai lavori considerano questa professione come la semplice compilazione di codice (compilazione nel senso di stesura).
Sarebbe più corretto usare la parola sviluppatore che sottointende tutte le varie sfumatore più o meno grosse che esistono.
Svariate di queste sono precluse ad un diplomato. (a meno che non abbia moltissima esperienza alle spalle e di un certo valore)


PMI?


Piccola Media Impresa

Ovvero il tipo di azienda che costituisce la stragrande maggioranza dell'imprenditoria italiana.


Io spero di non essere svantaggiato dato che ho iniziato a 21 anni, prima di allora non conoscevo programmazione e compagnia bella, anche se era fin dalle elementari che smanettavo con il pc, ma a livello superficiale, mai approfondito tipo programmazione, sicurezza ecc.

C'era stata una discussione un po' di tempo fa sull'età.
Al di là delle opinioni personali, iniziare prima è un vantaggio sì.
Ma se lo fai con gli strumenti che ti da l'Università non corri il rischio di imparare pratiche sbagliate che poi dovresti correggere più avanti.

Molto meglio partire da una tabula rasa che dover disimparare.


Per cui come ti ho detto in pvt, coltiva la tua passione e non demoralizzarti prima ancora di iniziare.
Perché nessuno può sostituirsi a te e non hai alcun motivo per pensare di non farcela se nemmeno ci provi.
Anche perché se c'è un settore in cui davvero c'è spazio per tutti è proprio l'IT.

~FullSyst3m~
02-04-2009, 02:21
Quindi capisci che il fatto che ci siano persone solo diplomate che lavorano in questo settore non significa che la laurea non sia uno spartiacque tra chi ce l'ha e chi no nel mondo del lavoro.

Si lo capisco, ma molti dicono che la laurea non serva a nulla.

Oltretutto termine programmatore ha assunto un valore quasi dispregiativo perché i non addetti ai lavori considerano questa professione come la semplice compilazione di codice (compilazione nel senso di stesura).
Sarebbe più corretto usare la parola sviluppatore che sottointende tutte le varie sfumatore più o meno grosse che esistono.
Svariate di queste sono precluse ad un diplomato. (a meno che non abbia moltissima esperienza alle spalle e di un certo valore)


E' vero, l'ho notato pure io. Ha assunto un valore veramente bruttissimo. E riguardo i diplomati è come hai detto tu, alcune cose le imparano dopo anni di esperienza, ma ciò non significa che possono coprire le conoscenze universitarie.

C'era stata una discussione un po' di tempo fa sull'età.
Al di là delle opinioni personali, iniziare prima è un vantaggio sì.
Ma se lo fai con gli strumenti che ti da l'Università non corri il rischio di imparare pratiche sbagliate che poi dovresti correggere più avanti.

Molto meglio partire da una tabula rasa che dover disimparare.

Un vantaggio per cosa? Non credo che 21 anni siano tanti. Poi spero di recuperare il tempo perso all'uni comunque.

Per cui come ti ho detto in pvt, coltiva la tua passione e non demoralizzarti prima ancora di iniziare.
Perché nessuno può sostituirsi a te e non hai alcun motivo per pensare di non farcela se nemmeno ci provi.

Purtroppo sono cosi, nemmeno provo a fare le cose. Mi guardo intorno e mi demoralizzo. Oltretutto mi fa rabbia vedere 11enni che scoprono la programmazione e iniziano a smanettare e io invece fino a poco tempo fa credevo fosse qualcosa da laureati.

Anche perché se c'è un settore in cui davvero c'è spazio per tutti è proprio l'IT.

Questa è un'altra cosa della quale vorrei parlare: io ero dell'idea che il settore informatico fosse riservato a persone in gamba, che sanno il fatto loro, che hanno una determinato bagaglio cultuare e tecnico, ma mi rendo sempre più conto, e vedo, che chiunque può arrivare e lavorare in questo campo. Persone che prima dei 30 anni non sapevano ad esempio cosa fosse Java, gente che non ha mai toccato un pc in vita propria. Addirittura una volta ho chiesto ad uno: "ma come mai ti è venuto in mente di fare un corso Java a 30 anni se non ti eri mai interessato di pc?" e lui: "bè ero senza lavoro cosi ho preso la strada più sicura".

Sono deluso e amareggiato da tutto questo.