2010-04-19 9 views
13

Come io sono un principiante che ha appena finito il mio ingegneria e ho buone conoscenze in C, C++ ... ho pensato di studiare C# come pure, ma ho scoperto che C# 4.0 è stato rilasciato .....È necessario imparare tutte le altre versioni di C# prima di iniziare con C# 4.0?

  • Devo interessarmi delle versioni precedenti di ?
  • Quali sono i suggerimenti che dai per principianti per imparare C# velocemente?
  • quali sono i fattori da considerare quando si passa da c, C++ a C#?

risposta

19

C# 4 è fondamentalmente un superset di tutte le altre versioni, quindi se si conosce C# 4 allora si conoscono sicuramente le versioni precedenti. D'altra parte, penso che valga la pena conoscere cosa c'è in quale versione. Ho un paio di "bluffer's guides" sul mio C# in Depth sito web che danno un po 'di informazioni su C# 2 e 3 - Ne farò uno simile per C# 4 al più presto. Vedere this question per un elenco molto breve di funzionalità in ciascuna versione.

Per quanto riguarda la migrazione da C e C++, provare a ignorare tutto ciò che si pensa di conoscere. Alcuni bit saranno simili, alcuni saranno completamente diversi. Dovresti cercare di lavorare nel modo in cui il linguaggio ti aspetta, piuttosto che applicare idiomi C++ ad esso.

Si potrebbe leggere Essential C# 4.0, C# 4.0 in a Nutshell o Accelerated C# 2010. Il mio libro - C# in Depth - avrà presto una seconda edizione, che copre C# 4, ma è davvero progettato per le persone che già conoscono C# 1.

+0

Detto questo, dovrebbe davvero prendere una versione di C# Approfondimento dopo aver appreso le basi - ne vale la pena! – RCIX

+0

Devo dire Jon, mi sono piaciuti molto i capitoli di esempio di C# in Depth e sto aspettando che la seconda edizione venga rilasciata prima di consegnare i miei soldi in contanti. – gingerbreadboy

+1

@runrunraygun: Questo è abbastanza giusto - non vedo l'ora di contarlo come "fatto" :) Sono in indicizzazione ora, che non è mai divertente :( –

0
  1. Si dovrebbe preoccupare di .NET 3.5.
  2. Imparate rapidamente? Scrivi un sacco di codice e leggi this.
  3. C è un animale completamente diverso. C++ non ha GC e altre sottigliezze. Potrai (si spera) capire gli oggetti. Ma ci sono molte nuove cose supportate in C#, come interfacce, delegati, thread incorporati, LINQ, ecc.
+7

Non c'è niente come C# 3.5 ... –

0

I migliori consigli che posso dare - ottenere un buon libro! Controlla la serie Wrox: hanno ottimi libri e possono iniziare rapidamente. Cerca qualcosa come ".NET 4 Beginning".

E no - se si conoscono i principi che non lo fanno hanno Per conoscere tutti i dettagli relativi alle versioni precedenti, soprattutto se siete sicuri che si dovrà lavorare solo con i nuovi .. Ma se si avere il tempo e il desiderio - non fa mai male saperne di più, credimi :)

Buona fortuna!

5

No. Basta avere un buon libro sulla 4.0. Se il libro è completo (ad es. Nto a "per le persone che conoscono 3.5) è completo.

Basta dimenticare le versioni precedenti, A MENO CHE non sia stato specificamente richiesto (non tutti i progetti commerciali utilizzeranno 4.0 al momento)

?

Consigli Ottenere un buon libro, leggere la documentazione

C/C++ -.... il benvenuto in un mondo in memoria gestita aggirare la garbage collection approccio ora ottenere in giro non avendo puntatori (che è possibile manipolare) e non lamentarti: più velocemente ti senti a tuo agio con quell'ambiente, più velocemente ti senti bene;)

1

Devo preoccuparmi delle versioni precedenti di ?

Sì, dovresti. Ti consiglio di iniziare con 2.0, che è la base per tutte le versioni future, quindi di imparare in modo incrementale le versioni 3.0, 3.5 e 4.0 rilasciate di recente.

Quali sono i suggerimenti forniti per il principiante per imparare C# rapidamente?

Come la maggior parte delle lingue, il più grande suggerimento è quello di utilizzare . Inizia a codificare alcune piccole applicazioni per provare a sfruttare le funzionalità linguistiche comuni, quindi passa a provare diverse aree del framework che ti interessano.

4

Devo interessarmi delle versioni precedenti?

Sì. Dovresti almeno sapere quali funzioni di 4.0 NON hanno la versione precedente.

C'è una buona probabilità che se si utilizza .NET sul lavoro, non saranno ancora a 4.0. Pertanto, avrai bisogno di sapere quali funzioni puoi usare e quali dovrai risolvere.

Quali sono i suggerimenti che dai per principianti per imparare C# rapidamente?

Trova un buon libro e inizia dall'inizio.

mi sento di raccomandare sia Pro C# 2010 and the .NET 4.0 Platform o C# In Depth: Second Edition

Quali sono i fattori da considerare quando si spostano da C, C++ a C#?

Conoscere le convenzioni di denominazione e le differenze di ciascuna.

C/C++ viene compilato nel codice nativo. C# ottiene la compilazione JIT.

C# ha la gestione della memoria. C/C++ non (almeno non lo stesso).

C non è una lingua orientata agli oggetti. C++/C# lo sono, ma ognuno gestisce OO in un modo leggermente diverso.

Queste differenze cambieranno il modo in cui scrivi/pensi al tuo codice.

0

C# 4.0 è il superset delle funzionalità delle versioni precedenti. Quindi la risposta alla tua prima domanda è "no, leggi solo un libro in C# 4.0".

0

.NET 4.0 aggiunge funzionalità alle versioni precedenti e anche se era un nuova lingua del tutto è ancora necessario conoscere la versione "precedente" perché sono ancora utilizzati nel settore. La buona notizia è che non è necessario imparare una versione, basta imparare .NET e poi scoprire se la funzione esiste nelle versioni precedenti.

L'apprendimento di C# è come imparare qualsiasi altra lingua: seguire un corso, creare un progetto per animali domestici o imparare mentre si va (o tutti).

Quando ci si sposta da C++ a C# la più grande differenza è l'esistenza della garbage collection. Per fortuna C# è molto simile al C++ quindi dovresti essere in grado di leggerlo (e scriverlo) praticamente dal primo giorno. Dovresti riuscire a trovare alcune differenze (le strutture sono valori proprio come int) e hai una libreria di classi base molto ampia che puoi usare.

0

Sarebbe uno spreco di tempo per imparare TUTTE le versioni C#. Vai subito all'apprendimento di C# 4.0 e non dimenticare la versione immediatamente precedente alla 4.0. La padronanza dell'IDE che usi è molto importante. E, soprattutto, codice, codice, codice.

c, C++ e C# sono "fratelli e sorelle" quindi sei in un territorio familiare.

1

Sono un principiante anche in C#. Mi sto concentrando sulla nuova tecnologia, dal momento che la maggior parte delle aziende vorranno la più recente tecnologia. Così ho enfatizzato il 3.5 (e breifly guardato oltre 3.0 e 2.0). Le probabilità sono, non si dovrà lavorare su un nuovo progetto utilizzando 1.0 o 1.1 Se fossi in te, mi merion concentrarsi su 4.0 e avere una buona comprensione del 3,5

HTH

0

Un fattore nessuna delle risposte finora sembra aver menzionato il fatto che ci sono molti costrutti nelle versioni precedenti che non sono più rilevanti se si sta costruendo una nuova applicazione .NET 4 da zero.

Non è sufficiente sapere che .NET 4 è un superset delle versioni precedenti, ti consigliamo di sapere quali aree delle versioni precedenti sono sostanzialmente obsolete in modo da poterle evitare e utilizzare i nuovi e migliori costrutti.

Ad esempio, non utilizzare ArrayList, utilizzare invece il List<T> generico; non utilizzare Hashtable, utilizzare Hashset<T> o Dictionary<T, U>; utilizzare il nuovo tipo Task invece di Thread e primitive di sincronizzazione per semplificare il codice; ecc. ecc.