Perdo qualcosa scrivendo in c # e utilizzando i convertitori di codice online gratuiti vb.net? [chiuso]

2

La società che lavoro utilizza vb.net dato che ci sono molti programmatori che sono passati da vb6 a vb.net. Fondamentalmente più risorse vb.net in azienda per supporto / manutenzione vs c #. Sono un codificatore c # e mi chiedevo se potevo continuare a scrivere in c # e usare solo i molti convertitori di codice online gratuiti c # per vb.net. In questo modo, sarò più produttivo e anche più commerciabile poiché ci sono più posti di lavoro c # rispetto ai lavori di vb.net. Ho fatto il vb6 molti anni fa e sono a mio agio nel debugging del codice vb.net. È solo il linguaggio di programmazione principale. Sono più a mio agio in c #. Perdo qualcosa se utilizzo questo approccio. (conversione del codice). Basato su ciò che ho letto online, il futuro di vb.net è davvero "debole". Si prega di avvisare. grazie

    
posta Gullu 09.07.2012 - 15:47
fonte

4 risposte

8

Non so del convertitore e se ti farà perdere qualcosa (rendimento saggio).
Ma sono sicuro di una cosa, imparare una nuova lingua non guasterebbe il tuo curriculum.
Secondo me è sempre bello imparare qualcosa di nuovo e considerare il tuo caso:
La lingua principale dell'azienda è VB, molto meglio con l'intero ambiente di lavoro.
Mostra che puoi adattarti facilmente alle modifiche se scegli la lingua e inizia a lavorare con essa.

    
risposta data 09.07.2012 - 16:41
fonte
8

Nonostante entrambe le lingue in esecuzione su .NET Framework, presentano alcune differenze che possono rendere alcune cose più facili o addirittura possibili in VB che non sono in C # e viceversa.

Alcune cose in cima alla mia testa:

  • La versione VB della classe Application ha una proprietà SplashScreen. Quando impostato su un modulo nel metodo principale, tale modulo mostrerà quando viene chiamato Application.Run (), fino a quando il modulo principale è pronto per essere mostrato. In C # questo non è disponibile, quindi per fornire funzionalità simili devi "rollare il tuo" usando il Load manager del form principale; i tuoi colleghi VB guarderanno il codice tradotto e diranno "perché non hai semplicemente usato quello che ti dà la lingua?"

  • Correlati: i gestori di eventi (MulticastDelegates) in VB hanno il controllo nullo integrato; puoi generare un evento in VB senza doversi preoccupare se qualcuno sta effettivamente ascoltando. Questo non è così in C #; devi prima eseguire un controllo nullo (e tecnicamente, dato che gli ascoltatori possono cambiare mentre l'evento viene gestito, la migliore pratica nelle applicazioni con thread è quella di "clonare" la raccolta di gestori ed eseguirla invece). Quando tradotto, il codice risultante sarebbe ridondante.

  • La conversione e la conversione funzionano in modo diverso in entrambe le lingue. C # richiede una conversione implicita definita tra due tipi per la conversione. VB al contrario "coercera" il tipo ogni volta che vede QUALSIASI cast valido tra il tipo effettivo e il tipo atteso, che può portare a comportamenti imprevisti quando VB costringe il tipo e quindi sceglie un diverso overload o ramo di codice rispetto allo stesso codice in C # .

Per ulteriori differenze, consulta link

Quindi, consiglierei di imparare la sintassi VB e le differenze linguistiche, e se utilizzi il convertitore su base giornaliera o meno, riconoscerei almeno situazioni in cui lo scopo del codice C # che stai scrivendo sarebbe più facile da realizzare nel VB diretto, o dove il codice C # non tradurrà (blocchi "non sicuri", blocchi "spuntati" / "non selezionati", dichiarazioni di classi parziali, ecc.)

    
risposta data 09.07.2012 - 17:35
fonte
1

Se non lo esegui prima dal tuo manager, la cosa che più probabilmente perderai è il tuo lavoro ... e se lo esegui dal tuo manager, il risultato più probabile è che non ti viene assegnato qualsiasi progetto VB.net.

Le conversioni automatiche ti danno un punto di partenza, non un prodotto finito.

    
risposta data 10.07.2012 - 05:50
fonte
-1

Se ti è stato chiesto di scrivere codice in Java, potrei capire la tua preoccupazione ... sapendo che VB.Net è quasi identico a C # ma nella sintassi, perché non provare a imparare quelle piccole differenze e ad aggiungere abilità e valori ?!

    
risposta data 09.07.2012 - 18:00
fonte

Leggi altre domande sui tag