2010-08-24 14 views
6

Ho visto un thread simile a questo, ma il motivo per cui lo sto chiedendo è perché la mia situazione è diversa.migrazione a C# da Java

Sono stato un tester (automatizzato e manuale) ma ho una buona conoscenza della programmazione Java anche se non ho lavorato come programmatore.

La mia azienda sta considerando di trasferirmi in un ruolo di programmazione C#. Sarà difficile per me imparare C# senza alcuna esperienza precedente nella programmazione?

Grazie

+2

Penso di no. Ognuno è diverso, però. Penso che scoprirai che SO è un posto sicuro in cui puoi rispondere ad alcune domande quando incontri questo o quel posto di blocco. In bocca al lupo! – kbrimington

+0

Forse con l'eccezione del passaggio dall'imperativo al funzionale o viceversa, l'apprendimento di un nuovo linguaggio di programmazione non dovrebbe essere difficile per chiunque abbia un po 'di esperienza e abilità. –

risposta

0

ho difficoltà che conciliano le dichiarazioni "Ho una buona conoscenza di programmazione Java" con "senza alcuna precedente esperienza nella programmazione". Come puoi avere una buona conoscenza della programmazione Java senza alcuna esperienza di programmazione?

Detto questo, se sei un abile programmatore Java, passare a C# non dovrebbe essere molto difficile.

+0

Perché si esercita a casa? Non ho praticamente nessuna esperienza nel mondo della programmazione eppure ho programmato da quando avevo 11 anni. Ecco cosa intendeva. –

+0

Leggendo libri! –

+0

Scusa se ti ho confuso ... Ho imparato la programmazione Java nell'università ... ma non ho lavorato come programmatore ... spero che abbia senso :) – shana

0

Passare a C# non sarà affatto un problema.

Dal momento che conosci già Java, troverai molti concetti in C# di facile comprensione.

In effetti, è sempre una grande cosa imparare e lavorare su più lingue durante la tua carriera, specialmente se coprono diversi paradigmi.

+0

Non prenderei in considerazione le lingue C# e java diverse. Andrei con un diverso tipo di linguaggio (come ruby ​​o scala) per ottenere un'altra prospettiva. –

+0

Grazie per la risposta. Ma senza esperienza nel settore in Java ... è facile lavorare come programmatore C#. Imparo Java all'università ... ma non ho lavorato come programmatore. Ho solo esperienza di test del sistema. – shana

+0

Come Java, C# come prima lingua nel tuo lavoro non dovrebbe essere un problema. – AbdullahC

0

Parlando rigorosamente di sintassi, C# è simile a Java, quindi non dovresti avere problemi (almeno all'inizio sembrerà familiare).

+0

Grazie per la risposta. Ma senza esperienza nel settore in Java ... è facile lavorare come programmatore C#? Ho imparato Java all'università ... ma non ho lavorato come programmatore. Ho solo esperienza di test del sistema. – shana

3

Il mio 2 centesimi è che una volta compresi i concetti chiave della programmazione è possibile passare a qualsiasi linguaggio di programmazione. Cerca di rimanere il più indipendente possibile dal linguaggio.

Specifico per la tua domanda, dovresti essere in grado di effettuare la transizione senza molto sforzo.

+0

Grazie per la risposta. Ma senza esperienza nel settore in Java ... è facile lavorare come programmatore C#? Ho imparato Java all'università ... ma non ho lavorato come programmatore. Ho solo esperienza di test del sistema. – shana

+0

Indipendentemente dal fatto che tu abbia lavorato o meno nell'industria. È imperativo che se desideri diventare un programmatore C# che giochi con le lingue a casa. Alla fine della giornata, non è solo il codice a renderti un buon sviluppatore, ma anche la conoscenza del settore e la capacità di risolvere i problemi del mondo reale con il codice che scrivi. La programmazione per me non è un lavoro, ma uno stile di vita e cerco di tenermi aggiornato (se puoi fare una cosa del genere nel nostro settore) :) –

3

C# e Java sono così simili che non avrete alcun problema. Detto questo, ci sono alcune differenze, this page fa un lavoro piuttosto approfondito di dimostrarle.

Una cosa che non cita è LINQ, che è decisamente diverso visto che stiamo vedendo le due lingue iniziare a divergere un po 'di più.

+0

Grazie per la tua risposta. Ma senza esperienza nel settore in Java ... è facile lavorare come programmatore C#? Ho imparato Java all'università ... ma non ho lavorato come programmatore. Ho solo esperienza di test del sistema. – shana

+0

+1 per il collegamento utile. – AbdullahC

+1

La seconda risposta di pieterG a questa. Onestamente, la programmazione è un modo di pensare e ciò di cui hai bisogno è che quel processo sia un buon programmatore, indipendentemente dalla lingua. Quando usi C#, i roadblock saranno la sintassi, ovvero un problema di Google. Il metodo di pensare dietro al codice è ciò che conta, ed è ciò che è necessario sviluppare prima di qualsiasi lavoro di codifica. – Nate

0

Ho avuto 4 lavori di programmazione nella mia vita, e per 3 di loro non ho avuto alcuna esperienza con la lingua prima di iniziare il lavoro. Il 1 per il quale ho avuto esperienza è finito per essere un disastro completo di un posto di lavoro.

Se esiste una correlazione tra il modo in cui si conosce un linguaggio di programmazione specifico prima di iniziare un lavoro e come è possibile ottenere/eseguire un lavoro in un luogo in cui usano quella lingua, devo ancora vederlo nel mio 10+ anni. Direi che è probabilmente uno dei fattori meno importanti che contribuiscono al tuo successo.

A meno che non pianifichi di lavorare in un'azienda per un periodo di tempo molto breve, imparerai molte cose nuove, e probabilmente nuove lingue, mentre lavori lì. Sia che tu sappia che quello che stanno usando ora è come quanto fosse alto Michael Jordan quando era alle superiori: dopo poche dozzocento/mille/mille ore di pratica, completamente irrilevante.

+0

scusa ... vuoi dire che la precedente esperienza lavorativa come programmatore (in qualsiasi lingua) non è rilevante per iniziare un lavoro di programmazione? (se ne hai la conoscenza?) – shana

+0

La conoscenza della programmazione è molto importante ma è molto più importante avere una disciplina e un atteggiamento di programmazione generale che non conoscere la sfumatura nitida di ogni singola lingua. Se stavo assumendo per un team, cerco qualcuno che mostri una buona comprensione di problem solving, analisi, codifica difensiva/sicura, lavoro di squadra, ecc. Su qualcuno che capita di conoscere ogni codice di ritorno non documentato che qualche metodo potrebbe restituire ma scrive risme di codice spaghetti. – locka

+0

shana: No, sto dicendo che alcune lingue hanno una durata di oltre un anno, e nessuno qui (AFAICT) vuole davvero essere il programmatore COBOL del futuro. – Ken

0

Senza alcuna esperienza di settore in Java non sarà facile lavorare in ... Java. Quello che voglio dire è che avrai esattamente le stesse difficoltà in C# come avresti in Java.Il cambiamento della lingua non sarà il problema, la grande differenza sarà lavorare con le esigenze e le pratiche del mondo reale.

Non fraintendetemi, non voglio dire che avrete problemi: imparerete solo un sacco di cose nuove. Se hai una solida base "concettuale" che passa da Java a C# sarà facile, ho fatto lo stesso senza sforzo.

Leggere un buon libro (ad esempio, Pro C# di Troelson) e raccogliere rapidamente le differenze più importanti. Poi con il tempo imparerai le altre cose che sono molto diverse da Java (per esempio WPF, Linq, ecc.).

In conclusione, non aver paura e vai avanti!

-1

Se si dispone di conoscenze di programmazione, non sarebbe molto difficile spostarsi in C#. Nella mia esperienza proveniente da PHP ti suggerisco le seguenti operazioni,

Libri:

1- C# 4.0 in a Nutshell il riferimento definitivo

2- Apress.Pro.ASP.NET.MVC.Framework

Tutorial:

1- controllare il sito web http://www.asp.net e probabilmente la cosa migliore potrebbe essere quella di passare direttamente in MVC

2- controllare il tutorial nerddinner http://nerddinnerbook.s3.amazonaws.com/Part1.htm per sapere come funziona.

3- Scarica NerdDinner quadro codice http://nerddinner.codeplex.com/

4- uso entità invece di LINQ sulla base di elezioni MS per il futuro

5- Scarica alcuni starter-kit da http://www.asp.net/mvc/samples/mvc-music-store di controllare il modo in cui funziona.

Spero che aiuti. brgds,

0

C# dovrebbe essere banale da imparare se si conosce Java. Le differenze a livello di programmazione sono in gran parte sintattiche per la maggior parte.

La difficoltà (e questo è lo stesso con Java) è che la lingua è solo un elemento abilitante per un gran numero di librerie e tecnologie. Quindi non potresti avere problemi a raccogliere C# ma potresti colpire un muro di mattoni che sta imparando WPF perché non c'è analogo in Java. ecc. Oppure potresti provare a scrivere ASP.NET ma non hai mai imparato JSP/Spring in Java, quindi non hai nulla a cui relazionarti.

La strategia migliore è iniziare in piccolo, acquisire familiarità con i costrutti e quindi provare a implementare qualcosa di utile. per esempio. in WPF, potresti scrivere un semplice client Twitter usando i servizi web. In ASP.NET potresti scrivere una semplice app per il blog collegata all'app del database.

Una volta acquisite le nozioni di base e ipotizzando di seguire le migliori pratiche, dovrebbe essere abbastanza semplice espandersi verso l'esterno.