Cambiare da VB.NET a C #? [chiuso]

4

Sto lavorando in cooperativa in un'azienda come specialista in ingegneria dei test. Questo non è tecnicamente un lavoro software, tuttavia, alla fine della giornata, trascorro gran parte del mio tempo a programmare.

Non sono un programmatore wiz in alcun modo, ma mi piace molto usare VB.NET dato che sono stati scritti i progetti avviati nella mia azienda precedenti al mio tempo, quindi è quello che ho imparato e usato in la posizione.

Durante il mio periodo di ricerca ho avuto la sensazione di cercare aiuto online quando ho bisogno che in generale ci sia sempre più supporto per C # rispetto a VB.NET. Ciò mi ha indotto a pensare che potrebbe essere utile per l'azienda andare avanti a programmare meno in VB.NET e altro in C #.

Tuttavia, quasi tutti i progetti nel mio dipartimento (dal momento che molte altre persone lavorano su piccoli progetti di programmazione) sono attualmente scritti in VB.NET. Inoltre, la maggior parte della progettazione del software eseguita nel nostro reparto è relativamente semplice che immagino relativamente a un'area focalizzata sul software di qualsiasi azienda. Probabilmente metà di esso genera pagine html con grafici per illustrare visivamente determinati dati. Tenendo conto di questi due fattori, ci sono evidenti svantaggi nel provare a cambiare il linguaggio di programmazione principale utilizzato. Inoltre, il linguaggio vb.net è molto simile a VBA (per excel) e VBScript, che sono anche utilizzati un po 'nella mia area della società.

In sostanza, non sono sicuro che valga la pena di modificare il linguaggio principale utilizzato poiché non è stata eseguita una programmazione complicata, e comunque sono necessarie lingue simili.

Ero curioso di sapere quali ulteriori approfondimenti i programmatori esperti potrebbero essere in grado di offrirmi riguardo alla modifica della lingua principale utilizzata nella mia area da VB.NET a C #? Quali sono i vantaggi o gli svantaggi che potrei non aver pensato? Quanto è grande il ruolo svolto da ogni vantaggio e svantaggio?

Qual è la tua opinione generale sull'idea di passare da VB.NET a C #?

    
posta user1167662 12.03.2012 - 22:57
fonte

7 risposte

3

Parlando in generale, l'unica ragione per cambiare lingua (semplificando molto il dibattito) è migliorare la produttività degli sviluppatori (nel senso più ampio). Qualunque cosa tu possa fare in una lingua, di solito puoi fare in un'altra, e questo vale soprattutto per i linguaggi .NET. Quindi devi valutare la perdita di produttività causata dal passaggio a una lingua che ancora non conoscono, e anche dal mescolare linguaggi diversi nella base di codice, contro il guadagno di produttività offerto dalla nuova lingua.

Dati tutti i fatti che hai citato sopra, non sembra esserci un caso valido da cambiare.

D'altra parte, come sviluppatore, puoi, e dovresti, esplorare personalmente nuovi linguaggi (anche nuovi gusti di .NET), in modo da essere più versatile e anche sapere quali funzioni speciali una lingua ha da offrire su un altro Quindi forse fai qualche piccolo progetto che non interessa direttamente nessun altro in C #, solo per ottenere la conoscenza e l'esperienza.

    
risposta data 12.03.2012 - 23:06
fonte
4

C # e VB.NET sono molto vicini, e Microsoft intende renderli ancora più vicini cercando di implementare esattamente le stesse funzionalità in entrambi (se è possibile un argomento diverso).

  • In realtà hai qualcosa che non puoi implementare a causa di VB.NET (e cosa è possibile fare in C #)?

  • In realtà hai qualcosa che è un collo di bottiglia a causa di VB.NET, e sarà molto più veloce in C #?

Se no, non vedo alcun motivo per riscrivere l'intera base di codice solo perché è possibile. Sì, c'è un miglior supporto per C # dalla community, specialmente su Stack Overflow. Ma importa? Queste due lingue sono abbastanza vicine da poter usare le risposte fornite per C # in VB.NET in molti casi.

    
risposta data 12.03.2012 - 23:06
fonte
2

DotNetNuke , un grande progetto open source, ha fatto il passaggio da VB.NET a C # qualche tempo fa, e potrebbe essere utile dai un'occhiata a i loro motivi .

Si noti che le loro ragioni erano politiche piuttosto che tecniche. In poche parole, dicono (in un modo molto più educato): " Ci sono molti stupidi decisori che pensano che C # sia più veloce o tecnicamente superiore a VB.NET. non importa se mettiamo il punto e virgola alla fine delle nostre linee o no, potremmo anche passare a C #, per sbarazzarci di questa falsa immagine del progetto di un giocattolo. "

Quindi, da un punto di vista tecnico, ti consiglierei di stare con VB.NET (sintassi di somiglianza con ciò che i tuoi utenti già conoscono), a meno che non ci siano ragioni di marketing convincenti per passare a C #.

    
risposta data 13.03.2012 - 08:16
fonte
1

L'erba è sempre più verde ......

non ha senso fare questo cambiamento, certo che sarai uno dei ragazzi fantastici, ma in realtà non sarà molto diverso ... ad eccezione di XML Literals che puoi inserire in VB.NET e la sintassi che ti aiuterà a confonderti mentre continui a passare da VB a C # quando mantieni il vecchio e il nuovo codice.

No, è un po 'inutile. Ora, se dovessi riscrivere in C ++ o Python, sarebbe diverso, poiché questi sistemi sono molto diversi e hanno punti di forza diversi.

    
risposta data 13.03.2012 - 00:33
fonte
0

L'azienda per cui lavoro ha effettuato questo passaggio, ma solo per nuovi progetti. Dopo aver attraversato la transizione sono d'accordo con i manifesti precedenti che tra VB.Net e C # il cambiamento inizialmente causerà un rallentamento man mano che i programmatori si abitueranno alla nuova lingua, ma alla fine le differenze di funzionalità sono minori. (Questo perché tutte le lingue .Net sono prima tradotte in CIL, un linguaggio comune, prima di essere compilate). Alla fine, la decisione è stata perché i nostri programmatori erano più a loro agio in C # piuttosto che in VB.Net. Dopo essermi allenato in C # nei miei giorni universitari, e immediatamente sono passato a VB.Net quando sono stato assunto (questo era 3 anni fa). Posso dirti che la difficoltà nella transizione è più sintattica rispetto alle funzionalità. Molto raramente mi sono imbattuto in qualcosa che stavo tentando in una lingua che non potevo semplicemente controllare i documenti per scoprire come fare nell'altra. (Ad esempio Equivalenti lingua MSDN ). Un vantaggio importante è che dopo il cambiamento abbiamo raddoppiato le nostre risorse, dal momento che possiamo cercare esempi e spiegazioni online sia per c # che per vb.net, questo ha ridotto il tempo di "bloccarsi".

    
risposta data 13.03.2012 - 01:09
fonte
0

I was curious what additional insight experienced programmers may be able to offer me regarding changing the main language used in my area from VB.NET to C#?

Nella società per cui lavoravo, lavoravamo su progetti con basi di codici VB e C # simultaneamente. Ma poi c'è stato un graduale passaggio a C # a causa del comfort che i miei compagni di squadra hanno provato ad usare la struttura sintattica C #. Questo perché abbiamo avuto più esposizione alla sintassi C # imparando C, C ++ e Java durante la laurea. Non abbiamo fatto alcuno sforzo per modificare le applicazioni VB.Net esistenti mentre reinventavamo la ruota.

Quindi la chiave qui è che, l'esperienza precedente di uno sviluppatore supera di gran lunga le piccole differenze tra le due lingue.

What benefits or disadvantages are there that I may not have thought of? How big a role do each advantage and disadvantage play?

Sebbene C # e VB differiscano in un livello molto piccolo, alla fine tutto viene compilato nell'IL e questa è la ragione per cui NET Framework è indipendente dalla lingua.

Detto questo, non ci sono svantaggi nell'uso di entrambe le lingue.

Buona fortuna!

    
risposta data 13.03.2012 - 06:25
fonte
0

Sono d'accordo con altri poster che suggeriscono che potrebbe non valerne la pena a meno che tu non senta di guadagnare abbastanza in produttività in qualche modo per contrastare i costi a breve termine del cambiamento.

Ero in una posizione simile un paio di anni fa, tuttavia ho deciso di passare. C'erano un numero di ragioniL

  • Mi stavo sviluppando in modo isolato e non avevo un investimento così grande in VB.NET, quindi il costo del trasferimento non era così significativo.
  • Come sviluppatore solista, se avessi bisogno di aiuto, ho trovato più C # online di VB.NET, quindi ho dovuto capire almeno le basi di C #
  • Volevo migliorare il mio CV (curriculum) e, se sono onesto, volevo il divertimento e la soddisfazione personale.

Ti consiglierei di dedicare un po 'di tempo all'apprendimento di alcune nozioni di base di C #, solo per poter trarre il massimo vantaggio dalle varie risorse disponibili online.

    
risposta data 15.03.2012 - 15:46
fonte

Leggi altre domande sui tag