View Full Version : [LIBRO C#] consiglio per chi viene da JAVA e C
salve, conosco il C e il JAVA, vorrei iniziare al meglio ad approcciare il C#, che libro mi consigliate? preferirei libri di edizione USA, grazie.
PS
l'uscita di C# 5 è imminente? Ci saranno cambiamenti sostanziali o tra C# 4 e 5 cambierà poco?
salve, conosco il C e il JAVA, vorrei iniziare al meglio ad approcciare il C#, che libro mi consigliate? preferirei libri di edizione USA, grazie.
PS
l'uscita di C# 5 è imminente? Ci saranno cambiamenti sostanziali o tra C# 4 e 5 cambierà poco?
Cambiera' poco.
Io mi sono trovato bene con la collana APress
http://www.amazon.co.uk/Pro-2010-NET-4-0-Platform/dp/1430225491/ref=sr_1_1?ie=UTF8&qid=1312189434&sr=8-1
tomminno
01-08-2011, 12:44
salve, conosco il C e il JAVA, vorrei iniziare al meglio ad approcciare il C#, che libro mi consigliate? preferirei libri di edizione USA, grazie.
PS
l'uscita di C# 5 è imminente? Ci saranno cambiamenti sostanziali o tra C# 4 e 5 cambierà poco?
Ad oggi si sa che Windows 8 uscirà con .Net 4.5 però parliamo almeno del 2012 inoltrato. Nessuna sostanziale modifica all'orizzonte. C'è tutto il tempo per imparare ad usare .Net 4.0
vi ringrazio, in realtà del framework .Net mi interessa relativamente, nel senso che comunque quando si programma è meglio tenersi con 1-2 release di ritardo rispetto a quella attuale per questioni di compatibilità, il linguaggio è la mia priorità per adesso.
in quel libro viene spiegato il linguaggio o il framework? mi faresti una mini-recensione?
darkito85
02-08-2011, 00:46
Io ti consiglierei McGraw-Hill - C# 4.0 The Complete Reference . Parla in maniera marginale dell'architettura .Net e si sofferma più sul linguaggio vero e proprio, coprendone tutte le caratteristiche.
tomminno
02-08-2011, 10:25
vi ringrazio, in realtà del framework .Net mi interessa relativamente, nel senso che comunque quando si programma è meglio tenersi con 1-2 release di ritardo rispetto a quella attuale per questioni di compatibilità, il linguaggio è la mia priorità per adesso.
in quel libro viene spiegato il linguaggio o il framework? mi faresti una mini-recensione?
Se ti interessa C# non puoi fare a meno di conoscere .Net.
Il tuo ragionamento del rimanere indietro con le versioni, che è un pò tipico del mondo Java dove non è raro trovare chi utilizza ancora le versioni 1.3 e 1.4, può andare bene in ambito aziendale (magari una sola release, 2 sono un pò troppe), ma dovendo cominciare da 0 meglio partire direttamente con l'ultima versione.
Se ti interessa C# non puoi fare a meno di conoscere .Net.
Il tuo ragionamento del rimanere indietro con le versioni, che è un pò tipico del mondo Java dove non è raro trovare chi utilizza ancora le versioni 1.3 e 1.4, può andare bene in ambito aziendale (magari una sola release, 2 sono un pò troppe), ma dovendo cominciare da 0 meglio partire direttamente con l'ultima versione.
Quoto.
DioBrando
02-08-2011, 13:14
salve, conosco il C e il JAVA, vorrei iniziare al meglio ad approcciare il C#, che libro mi consigliate? preferirei libri di edizione USA, grazie.
Io mi sono trovato meravigliosamente bene con Essential C# (http://www.amazon.com/Essential-3-0-NET-Framework-3-5/dp/0321533925).
Il 3.0 su Framework 3.5 l'ho comprato in carta, la versione su C# 4.0 ha commenti un filo meno positivi ma forse perché si aspettavano una parte più rilevante sulle novità del linguaggio e del framework.
Valutazioni molto alte comunque.
C# 4.0 in a Nutshell, C# 4.0 The Complete Reference e C# in Depth sono altri ottimi libri (ma vengono dopo, per me, Essential).
Darei un'occhiata anche Framework Design Guidelines (http://www.amazon.com/Framework-Design-Guidelines-Conventions-Libraries/dp/0321246756/ref=sr_1_1?s=books&ie=UTF8&qid=1312283117&sr=1-1) di Brad Abrams.
Mentre se ti interessa capire bene come funziona tutta l'architettura dell'ecosistema C# via CLR (http://www.amazon.com/CLR-via-C-Jeffrey-Richter/dp/0735627045/ref=sr_1_1?ie=UTF8&qid=1312283211&sr=8-1) (ed il quarto capitolo) o Essential .NET, Volume I: The Common Language Runtime (http://www.amazon.com/Essential-NET-Common-Language-Runtime/dp/0201734117/ref=sr_1_1?s=books&ie=UTF8&qid=1312283427&sr=1-1) sono penso i migliori sull'argomento.
PS
l'uscita di C# 5 è imminente? Ci saranno cambiamenti sostanziali o tra C# 4 e 5 cambierà poco?
Le più grosse novità riguarderanno il paradigma asincrono
Presentazione di Heijsberg (http://channel9.msdn.com/events/PDC/PDC10/FT09)
Ad oggi si sa che Windows 8 uscirà con .Net 4.5 però parliamo almeno del 2012 inoltrato. Nessuna sostanziale modifica all'orizzonte. C'è tutto il tempo per imparare ad usare .Net 4.0
sei sicuro ci sarà uno step intermedio?
Non ho letto da nessuna parte di una versione 4.5 del framework.
A quel che sapevo sarà una major come per il linguaggio.
tomminno
02-08-2011, 14:28
sei sicuro ci sarà uno step intermedio?
Non ho letto da nessuna parte di una versione 4.5 del framework.
A quel che sapevo sarà una major come per il linguaggio.
Tutto quello che so deriva dalle informazioni fuoriuscite da Microsoft riguardo all'ambiente di sviluppo di Windows 8.
Per .Net parlavano di 4.5 se poi magari diventerà 5.0 non lo so.
La notizia sconvolgente è il ritorno degli investimenti sul C++ con l'API WinRT e una parificazione (promessa) delle funzionalità native e gestite. Insomma pare che su Win8 ci saranno le WPF native in quanto XAML sarà parte integrante del sistema operativo.
PPL, AMP WinRT, le news su Visual Studio vNext, Microsoft è tornata ad investire alla grande sul C++.
La notizia mi fa felice ma d'altra parte mi chiedo anche perchè...
Per finire Erich Gamma entrato nel team di Visual Studio sembra nel reparto C++ con un team tutto suo.
DioBrando
02-08-2011, 15:06
Tutto quello che so deriva dalle informazioni fuoriuscite da Microsoft riguardo all'ambiente di sviluppo di Windows 8.
Per .Net parlavano di 4.5 se poi magari diventerà 5.0 non lo so.
Ah ok me le ero perse io allora :)
La notizia sconvolgente è il ritorno degli investimenti sul C++ con l'API WinRT e una parificazione (promessa) delle funzionalità native e gestite. Insomma pare che su Win8 ci saranno le WPF native in quanto XAML sarà parte integrante del sistema operativo.
PPL, AMP WinRT, le news su Visual Studio vNext, Microsoft è tornata ad investire alla grande sul C++.
La notizia mi fa felice ma d'altra parte mi chiedo anche perchè...
Per finire Erich Gamma entrato nel team di Visual Studio sembra nel reparto C++ con un team tutto suo.
WPF nativo era abbastanza scontato visto che vogliono fare uscire (finalmente?) un sistema unificato. Sfruttando il fatto che sia vettoriale la parte di interfaccia dovrebbe essere relativamente facile da rilasciare.
Per quanto riguarda C++ non credo sia mai passato così tanto in secondo piano, in fondo sulle estensioni (guarda C++AMP) ci hanno sempre lavorato :)
vNext sarà la nomenclatura per credo tutti i prodotti. Visual Studio ALM sarà piuttosto rivoluzionato mentre non vedo l'ora di vedere all'opera LINQ2WCF e le promesse per una configurazione dei servizi molto più semplice.
Sulla carta tanta roba :oink:
*edit*: ho letto solo ora con attenzione...quell'Erich Gamma del Gamma alias Gang of Four? :eek:
DioBrando
02-08-2011, 17:03
salve, conosco il C e il JAVA, vorrei iniziare al meglio ad approcciare il C#, che libro mi consigliate? preferirei libri di edizione USA, grazie.
PS
l'uscita di C# 5 è imminente? Ci saranno cambiamenti sostanziali o tra C# 4 e 5 cambierà poco?
Dato che provieni da Java, dimenticavo di questo (http://www.robmiles.com/c-yellow-book/C%20Sharp%20from%20Java%20Orange%20Book%202009.pdf) ;)
banryu79
02-08-2011, 17:06
Dato che provieni da Java, dimenticavo di questo (http://www.robmiles.com/c-yellow-book/C%20Sharp%20from%20Java%20Orange%20Book%202009.pdf) ;)
Page not found, purtroppo :(
Per quanto riguarda C++ non credo sia mai passato così tanto in secondo piano, in fondo sulle estensioni (guarda C++AMP) ci hanno sempre lavorato :)
Già, in fin dei conti Microsoft vorrebbe che gli sviluppatori esterni utilizzassero solo C# in modo da legarli il più possibile alle proprie piattaforme, ma con C# non esiste proprio che si possano realizzare sistemi operativi ed altro software "fondamentale" (che opera a basso livello oppure che non può permettersi l'overhead che C# e la sua infrastruttura di supporto portano con se) e quelle sono cose che servono anche a Microsoft.
In un certo senso C# è quello che Visual Basic era per Windows pre-.Net (linguaggio e tool "facili" ma che ti vincolano alla piattaforma e che sul lungo termine non è che siano così convenienti come potrebbero sembrare a prima vista).
DioBrando
02-08-2011, 17:22
Page not found, purtroppo :(
vaf :mbe:
l'ho scaricato neanche tanto tempo fa -_-'
Vabbè comunque è dello stesso autore del C# Yellow Book e riporta l'esperienza del passaggio fatto da un docente universitario che l'ha utilizzato per insegnare al corso di Programmazione del primo anno di Università (americana).
http://www.csharpcourse.com/
Qui una versione online
http://www.scribd.com/doc/24439167/C-Sharp-From-Java-Orange-Book-2009
:)
DioBrando
02-08-2011, 17:29
Già, in fin dei conti Microsoft vorrebbe che gli sviluppatori esterni utilizzassero solo C# in modo da legarli il più possibile alle proprie piattaforme, ma con C# non esiste proprio che si possano realizzare sistemi operativi ed altro software "fondamentale" (che opera a basso livello oppure che non può permettersi l'overhead che C# e la sua infrastruttura di supporto portano con se) e quelle sono cose che servono anche a Microsoft.
moh oddio io non la vedo tanto così.
Ormai quasi tutto è .NET a parte le componenti di basso livello e nemmeno tutte.
Per altro dalla fucina di MS Research sono usciti e ci sono altri progetti in cantiere in merito. Singularity in passato, lo stesso SharpOS...
In un certo senso C# è quello che Visual Basic era per Windows pre-.Net (linguaggio e tool "facili" ma che ti vincolano alla piattaforma e che sul lungo termine non è che siano così convenienti come potrebbero sembrare a prima vista).
Ai tempi di VB6 non c'era proprio scelta, ora tutto sommato con Mono ed i tool allegati non mi sembra proprio ci si possa così lamentare.
Ok non tutto il framework sarà disponibile ma la gran parte sì e se pensi che ci girano numerosi altri linguaggi in quella infrastruttura, mi pare che il taglio con il passato sia stato netto.
VB.NET condivide con il suo progenitore solo il nome parziale e qualche keyword poi la cosa muore lì...
Dato che provieni da Java, dimenticavo di questo (http://www.robmiles.com/c-yellow-book/C%20Sharp%20from%20Java%20Orange%20Book%202009.pdf) ;)
Page not found, purtroppo :(
lo si può scaricare da qui http://www.robmiles.com/c-yellow-book/
grazie per il suggerimento, appena posso lo leggo :)
moh oddio io non la vedo tanto così.
Ormai quasi tutto è .NET a parte le componenti di basso livello e nemmeno tutte.
Per altro dalla fucina di MS Research sono usciti e ci sono altri progetti in cantiere in merito. Singularity in passato, lo stesso SharpOS...
Ai tempi di VB6 non c'era proprio scelta, ora tutto sommato con Mono ed i tool allegati non mi sembra proprio ci si possa così lamentare.
Ok non tutto il framework sarà disponibile ma la gran parte sì e se pensi che ci girano numerosi altri linguaggi in quella infrastruttura, mi pare che il taglio con il passato sia stato netto.
VB.NET condivide con il suo progenitore solo il nome parziale e qualche keyword poi la cosa muore lì...
il C# è una bella tecnologia, e se fosse aperta in tutto sarebbe ancora meglio, è modulare in tutto nel passaggio dal codice sorgente all'eseguibile, adotta un linguaggio di "intermezzo" e offre un meccanismo simile al Java con una VM come la CLR, rendendo possibili anche eventuali porting, infatti il progetto mono, in sostanza, è una CLR su Linux e MAC.
Tra i linguaggi orientati agli oggetti è secondo me il più interessante.
Io ti consiglierei McGraw-Hill - C# 4.0 The Complete Reference . Parla in maniera marginale dell'architettura .Net e si sofferma più sul linguaggio vero e proprio, coprendone tutte le caratteristiche.
ecco, forse questo approccio può interessarmi di più
Se ti interessa C# non puoi fare a meno di conoscere .Net.
Il tuo ragionamento del rimanere indietro con le versioni, che è un pò tipico del mondo Java dove non è raro trovare chi utilizza ancora le versioni 1.3 e 1.4, può andare bene in ambito aziendale (magari una sola release, 2 sono un pò troppe), ma dovendo cominciare da 0 meglio partire direttamente con l'ultima versione.
Quoto.
non saprei, a volte Microsoft non fornisce nuovi framework per sistemi vecchi ...
Io mi sono trovato meravigliosamente bene con Essential C# (http://www.amazon.com/Essential-3-0-NET-Framework-3-5/dp/0321533925).
Il 3.0 su Framework 3.5 l'ho comprato in carta, la versione su C# 4.0 ha commenti un filo meno positivi ma forse perché si aspettavano una parte più rilevante sulle novità del linguaggio e del framework.
Valutazioni molto alte comunque.
C# 4.0 in a Nutshell, C# 4.0 The Complete Reference e C# in Depth sono altri ottimi libri (ma vengono dopo, per me, Essential).
Darei un'occhiata anche Framework Design Guidelines (http://www.amazon.com/Framework-Design-Guidelines-Conventions-Libraries/dp/0321246756/ref=sr_1_1?s=books&ie=UTF8&qid=1312283117&sr=1-1) di Brad Abrams.
Mentre se ti interessa capire bene come funziona tutta l'architettura dell'ecosistema C# via CLR (http://www.amazon.com/CLR-via-C-Jeffrey-Richter/dp/0735627045/ref=sr_1_1?ie=UTF8&qid=1312283211&sr=8-1) (ed il quarto capitolo) o Essential .NET, Volume I: The Common Language Runtime (http://www.amazon.com/Essential-NET-Common-Language-Runtime/dp/0201734117/ref=sr_1_1?s=books&ie=UTF8&qid=1312283427&sr=1-1) sono penso i migliori sull'argomento.
Le più grosse novità riguarderanno il paradigma asincrono
Presentazione di Heijsberg (http://channel9.msdn.com/events/PDC/PDC10/FT09)
sei sicuro ci sarà uno step intermedio?
Non ho letto da nessuna parte di una versione 4.5 del framework.
A quel che sapevo sarà una major come per il linguaggio.
grazie, ho visto la PDC10, piuttosto noiosa ma le novità sembrano molto più interessanti :)
DioBrando
02-08-2011, 18:57
lo si può scaricare da qui http://www.robmiles.com/c-yellow-book/
grazie per il suggerimento, appena posso lo leggo :)
prego :)
il C# è una bella tecnologia, e se fosse aperta in tutto sarebbe ancora meglio, è modulare in tutto nel passaggio dal codice sorgente all'eseguibile, adotta un linguaggio di "intermezzo" e offre un meccanismo simile al Java con una VM come la CLR, rendendo possibili anche eventuali porting, infatti il progetto mono, in sostanza, è una CLR su Linux e MAC.
Tra i linguaggi orientati agli oggetti è secondo me il più interessante.
Non mi è molto chiara la tua prima frase "aperta in tutto sarebbe ancora meglio"...che intendi :confused:
DioBrando
02-08-2011, 18:58
ecco, forse questo approccio può interessarmi di più
non saprei, a volte Microsoft non fornisce nuovi framework per sistemi vecchi ...
grazie, ho visto la PDC10, piuttosto noiosa ma le novità sembrano molto più interessanti :)
trovi anche un Powerpoint oltre che il filmato. Il file si chiama FT09-Hejlsberg.ppt
prego :)
Non mi è molto chiara la tua prima frase "aperta in tutto sarebbe ancora meglio"...che intendi :confused:
compilatore e librerie?
DioBrando
02-08-2011, 19:08
compilatore e librerie?
ok ma sono standard ECMA, non sono chiusi. Altrimenti senza specifiche come facevano ad implementare Mono? Reverse Engineering? Sicuramente non sarebbe venuto fuori un lavoro del genere...
ok ma sono standard ECMA, non sono chiusi. Altrimenti senza specifiche come facevano ad implementare Mono? Reverse Engineering? Sicuramente non sarebbe venuto fuori un lavoro del genere...
non tutto è aperto, non ricordo i dettagli ma c'era qualcosa di chiuso, inoltre uno standard ECMA non vuole dire nulla di per se, anche il C è uno standard ma ci sono tantissimi compilatori, il Javascript è uno standard ECMA ma non gode certo di una certa "uniformità" nell'implementazione.
salve, conosco il C e il JAVA, vorrei iniziare al meglio ad approcciare il C#, che libro mi consigliate? preferirei libri di edizione USA, grazie.
PS
l'uscita di C# 5 è imminente? Ci saranno cambiamenti sostanziali o tra C# 4 e 5 cambierà poco?
io mi sono trovato benissimo con la serie professional c# della wrox
cdimauro
04-08-2011, 21:11
non tutto è aperto, non ricordo i dettagli ma c'era qualcosa di chiuso, inoltre uno standard ECMA non vuole dire nulla di per se, anche il C è uno standard ma ci sono tantissimi compilatori, il Javascript è uno standard ECMA ma non gode certo di una certa "uniformità" nell'implementazione.
Quindi se per tutti i linguaggi ci sono sempre differenze, perché impuntarsi su C#, le cui implementazioni attuali sono molto fedeli?
Riguardo alle librerie, tutto ciò che è standard ECMA è disponibile anche su implementazioni di .NET diverse da quella Microsoft. Quello non ECMA non è stato ancora portato del tutto, ma in ogni caso non è necessario utilizzarlo per i progetti (ci si può mantenere sulla parte standard).
io mi sono trovato benissimo con la serie professional c# della wrox
grazie, la wrox la trovo interessante, non mi piace la loro impaginazione, trovo che i testi abbiano contenuti ma siano poco leggibili; comunque sia grazie per l'info, magari qualche titolo per specificare quale testo intendi non sarebbe male
Quindi se per tutti i linguaggi ci sono sempre differenze, perché impuntarsi su C#, le cui implementazioni attuali sono molto fedeli?
Riguardo alle librerie, tutto ciò che è standard ECMA è disponibile anche su implementazioni di .NET diverse da quella Microsoft. Quello non ECMA non è stato ancora portato del tutto, ma in ogni caso non è necessario utilizzarlo per i progetti (ci si può mantenere sulla parte standard).
forse sarà per la mia mentalità, ma un framework come Mono " in divenire " non lo considero una buona CLR, e comunque lo standard non definisce tutto, ed è questo forse l'unico aspetto comune a tutti o quasi tutti i linguaggi, sulla carta sono tutti standard, poi inizi a capire come funzionano le cose solo provando.
in ogni caso mi sembra che almeno la versione ufficiale di C# non cambierà molto neanche con la 5.0, un paio di keywords in più e programmi adattabili al paradigma asincrono senza tanti fronzoli.
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.