Newsgroup: it.comp.lang.visual-basic
Titolo: per imparare, meglio VB6, VB.NET o C#?

Dovendo imparare da zero, meglio VB6, 
VB.NET
 o C#? E per quali ragioni? 
Libreria nativa, tools di oggetti, Rad, completezza del linguaggio, 
semplicità di apprendimento, potenza e potenzialità, guide e manuali, 
velocità e prestazioni del linguaggio e sue applicazioni.
Antonio 

 Dovendo imparare da zero, meglio VB6, 
VB.NET
 o C#? E per quali ragioni?
C#, per la coerenza nel linguaggio.
Ciao 

Ing. Antonio Sieno ha scritto:

Un bel parimerito fra c#, 
vb.net
 e java.


Non ha senso dire c# o 
vb.net
 in quanto si basano tutti e due sulla 
piattaforma .net.
Comuque, scarterei subito Vb6.
Poi, in base a come ti trovi meglio per la sintassi, scegli 
vb.net
 o c#.
Bye,
-- 
Carmine ( 
pikachu...@gmail.com
 (Togli la scritta NOSPAM) )
Webmaster di The Total Site 4 : 
http://www.thetotalsite.it
My Blog: 
http://blog.thetotalsite.it
MariokartDS Codice Amico: 532639027909 - CarmineC in MarioKartDS
Se un circuito funziona al primo tentativo è perchè il problema è molto
più nascosto e subdolo di quanto tu possa pensare...
E apparirà nel momento in cui farà il massimo danno 

 piattaforma .net.
Osi contraddirmi? ;)
Ciao 

 Osi contraddirmi? ;)
Beh... cioè... dipende....
Dico, uno sceglie c# o 
vb.net
 in base a quale ci piace di +.
IMHO il fatto della sintassi è soggettivo.
Certo, il C# è più coerente e integrato nella piattaforma .net ma...


 Certo, il C# è più coerente e integrato nella piattaforma .net ma...
Dove si riscontra questa maggiore "coerenza" e "integrazione" di C#
rispetto a VB.Net ?
A prescindere che il Microsoft Intermediate Language (MSIL) è esattamente
lo stesso, cosa vi fa propendere per il C# rispetto al VB ?
Ricordo inoltre che per esempio il namespace My introdotto in .NET 2.0
dovrebbe essere disponibile solo per il VB, comodità in più :-)
Ciao
Stefano (che usa VB anche perchè sul portatile le parentesi graffe sono
scomode eheh)
-- 
Stefano "HappyMan"
http://www.sgr.info

 sono scomode eheh)
Maiusc + AltGr + Paretensi quadra...
E ti esce la graffa.


 E ti esce la graffa.
Appunto, scomode (lo dico da sviluppatore anche C++), in vb ne faccio a
meno...


 lo stesso, cosa vi fa propendere per il C# rispetto al VB ?
No, non parlavo ne di integrazione con .Net (???) ne di IL, solo di 
sintassi.
In VB.Net la cosa si è ridimensionata drasticamente ma vi sono ancora dei 
refusi.
Ad es. una cosa che non ho mai capito è la direttiva Open per i file, che 
non risponde a nessuna regola grammaticale di VB, oppure la Name file1 As 
file2... non era più logico una Name file1, file2 come la CopyFile?
In 
vb.net
 una cosa rimasta è ad es. If TypeOf obj Is MyClass Then... Questa 
roba fa a pugni con la grammatica di VB.
Senza scendere in casi particolari come la DirectCast, che accetta e 
restituisce valori impossibili da riprodurre in una funzione scritta in VB 
stesso, e non mi importa se è una funzione "built-in".
E già che sono in polemica, ci voleva tanto a chiamarla solo e semplicemente 
Cast()?
Perchè non DoADirectCastOperationOnThisObject()?
Ciao 

 ha scritto nel messaggio 
news:127r8l8h15h4u.19nqcjao9tb7n$.dlg@40tude.net...


 fatto io) che non sono poi così diversi!.
Certo che bisogna impararli entrambi: le risorse in rete potrebbero essere 
sia in 
vb.net
 che in c#, mica possiamo saltare un documento interessante 
solo perchè è scritto nell'altro linguaggio.
Ah, l'ho già detto che voi programmatori VB siete degli incapaci?
;)
Ciao 

 ha scritto nel messaggio 
news:44844ddb$0$18288$4faf...@reader1.news.tin.it...


 se alcuni dicono fosse tifoso Milanista, si sono picchiati, uno è morto).
Ah, l'ho sentito.
Già con quello che sta succedendo (e anche prima, dato che tutti lo 
sapevano) essere dei tifosi secondo me è proprio da "popolo bue", insultarsi 
alzando la voce per tifoseria già diventa da internati, arrivare alle mani o 
peggio significa proprio che serve una A.T.A. (associazione tifosi anonimi), 
altre che una buona dose di calci in c##o alla metà di quelli che vanno allo 
stadio.
Ciao 

 basta).
Ma scherzo, ovviamente :)
Volevo solo sottolineare la mentalità un po' da "vorrei ma non posso" dei 
programmatori VB.
Prima tutti a lamentarsi che VB6 è limitato, poi quando VB perde i suoi 
limiti tutti a lamentarsi che è difficile e non funziona più come prima.
E la Microsoft sembra rispondere "siete dei cretini, ma siccome pagate un 
contentino non possiamo negarvelo".
Ciao 

 Beh... cioè... dipende....
Barza:
Papà, papà, lo sapevi che gli asini volano ?
Ma no, figliolo, cosa dici...
Ma sì, papà, gli asini volano !
Figliolo, adesso smettila di dire sciocchezze !
Ma papà, l'ho letto sull'Unità ! Non è vero che gli asini volano ?
L'ha scritto l'Unità ? Beh, vedi, "volare", mica sempre... svolazzano,
ecco, qualcuno di meno, qualcuno di più. Poi ci sono anche quelli
che volano abbastanza bene :-).
Bye, G. 

 che volano abbastanza bene :-).
Questa la riciclo :)
Ciao 

Ciao.
Iniziamo col dire che VB6 è un ambiente di sviluppo defunto, di 
conseguenza non credo abbia molto senso investire del tempo nel suo studio.
Per quanto riguarda il confronto 
VB.NET/C#
, ritengo la scelta una 
questione di gusti personali. Ad esempio, i miei gusti sono questi :
http://rsoftware.altervista.org/index.php?mod=none_net&file=vbvscs
L'unica cosa di C# che apprezzo veramente, è rappresentata dalle 
implementazioni alternative (Mono, DotGNU), utilizzabili su sistemi non 
windows. Trovo i compilatori C# (alternativi a quello ms) sono più 
prestanti e completi rispetto alle implementazioni di 
VB.NET
.
Ing. Antonio Sieno ha scritto:

-- 
Ciao.
Roberto Rossi
Web   : 
http://rsoftware.altervista.org

 Ciao.
Se sei il Roberto Rossi della Robert's VB Library, ti prego, mi dici che 
fine ha fatto?Grazie mille!
-- 
Emanuele Torrenti
http://torrenti.altervista.org

 
http://rsoftware.altervista.org/index.php?mod=none_net&file=vbvscs
Questo sembra uno di quegli articoli che compaiono su alcuni blog tecnici il 
1° di aprile.
La mia impressione invece è questa:
E' una bella raccolta di impressioni personali ampiamente confutabili 
spacciate per dati di fatto.
Dire che l'unica utilità del fatto che le istruzioni di c# possono andare su 
più righe è che questo permette un migliore offuscamento del codice è 
quantomeno limitativo.
Come è confutabile che il _ di VB per andare a capo aumenti la leggibilità.
Ciao 

 dovrebbe essere disponibile solo per il VB, comodità in più :-)
Beh, ma allora aggiungiamo anche la keyword MyClass e l'application 
framework. Il product team di VB sa benissimo che l'esperienza "RAD" è il 
primo requisito da soddisfare
-- 
.A
UGIdotNET - User Group Italiano .NET
http://www.ugidotnet.org
Read my blog at: 
http://blogs.ugidotnet.org/pape
 

 Personalmente, uso il linguaggio richiesto dal cliente
Il cliente non vuole che un'applicazione funzioni e basta?
Christian

Ciao.
Ciò che ho scritto rappresenta, ovviamente, la mia opinione su 
VB.NET
 e 
C#. Per quanto mi rigurda sono dati di fatto. Ovviamente, per chi non è 
d'accordo può non essere così, in ogni caso non vedo il problema. Come 
dicevo è solo una questione di gusti e opinioni personali.
Perchè non ci racconti tu, nel dettaglio, i vantaggi di C#?
Fabio ha scritto:

-- 


 
-- 
Ciao.


 dire che non ha avuto un gran successo... :)
Nooo, che peccato... Non è che ce l'hai da qualche parte? Purtroppo ne 
avevo una copia, ma è andata perduta. Utilizzavo soprattutto RCLIni. Me 
la potresti inviare se ti do un indirizzo privato?
Grazie in anticipo
-- 
Emanuele Torrenti
Registered Linux User #409659
http://torrenti.altervista.org

 Grazie in anticipo
-- 
Ciao.


 
http://rsoftware.altervista.org/index.php?mod=none_varie&file=scrivimi
Fatto. Grazie mille.


 Perchè non ci racconti tu, nel dettaglio, i vantaggi di C#?
Vedremo :)
Ciao 

 Non trovi che la frase, come l'articolo, sia un piccolo paradosso?
No.


 No.
Allora te lo spiego :)
Se č un tuo parere non posso essere dati di fatto.
E l'articolo č un insieme di pareri esposti come dati di fatto.
Ciao 

Quindi in sostanza VB6 sarà obsoleto (il Vista non ne consentirebbe neanche 
l'installazione...). VB.net e C# condividono la tecnologia e la libreria per 
le interfacce grafiche, ma C# nasce appositamente per DOTNET. E la comunità 
è in crescita, quindi, per me che sopno interessato alla programmazione di 
software per l'ingegneria civile può andar bene, sia per prestazioni che per 
semplicità e potenza? Riuscirò a fare applicazioni a interfacce stile 
windows in non moltissimo tempo e che siano efficienti? 

 
-- 


 è in crescita
Non credo che si possa dire, di contro, che la comunità di 
vb.net
 sia in 
calo...
Christian

 Christian


 calo...
Ma poi cambia davvero qualcosa? A parte forse che dire C# "fa più figo", 
ma oltre a questo non credo ci sia qualche differenza significativa.
L'importante è capire come si programma il Framework .NET, poi le 
sottigliezze sintattiche sono irrilevanti.
Certo che se uno lo fa per lavoro, cercherà di valutare quali sono le 
competenze più richieste, ma questo è un altro problema.
Personalmente 
VB.NET
 mi sembra più leggibile, e si risparmiano un sacco 
di parentesi graffe e punti e virgola ;-)
Chi viene da VB6 o da Delphi probabilmente sceglierà 
VB.NET
, mentre chi 
viene da C++ o da Java sceglierà C#. E' solo una comodità e un gusto 
personale però.
-- 
news://it-alt.comp.software.openoffice : Il newsgroup dedicato a
OpenOffice.org, la suite open source di applicazioni per ufficio.
Saluti, VITRIOL

 di parentesi graffe e punti e virgola ;-)
Concordo, quando ho dovuto scegliere mi sono guardato dei listati e non 
ho avuto dubbi e mi sono buttato su 
vb.net
Christian

 ha scritto nel messaggio 
news:MPG.1ef0b24f3...@news.tin.it...


In formato digitale e possibilmente in italiano, cosa posso trovare di 
abbastanza completo come documentazione o guida per C#?
L' "ABC" (mi pare si chiami cosě) va bene? 

 personale però.
Io non credo sia proprio una questione di gusti.
Uno che viene da VB6 passerà a VB.Net solo perchè crede che passare a VB.Net 
sia a costo zero, e non ha voglia di impararsi un altro linguaggio.
Ad es. Christian dice che ha guardato un qualche listato in c#, non ci ha 
capito un tubo e ha scelto Vb.net... che razza di valutazione di un 
linguaggio è?
Ciao

 L' "ABC" (mi pare si chiami così) va bene?
???
Forse intendi il libro ABC# di DotNetArchitects?
Bye,
-- 
Carmine ( 
pikachu...@gmail.com
 (Togli la scritta NOSPAM) )
Webmaster di The Total Site 4 : 
http://www.thetotalsite.it
My Blog: 
http://blog.thetotalsite.it
MariokartDS Codice Amico: 532639027909 - CarmineC in MarioKartDS
Se un circuito funziona al primo tentativo è perchè il problema è molto
più nascosto e subdolo di quanto tu possa pensare...
E apparirà nel momento in cui farà il massimo danno 

 linguaggio è?
Non è che non ci ho capito un tubo, 
vb.net
 mi sembrava più chiaro e 
confermo la mia valutazione. Tutte quelle parentesi graffe per esempio 
non rendono il linguaggio meno prolisso, un "End Function" è nettamente 
meglio, per me ovvio.
É stata una delle valutazioni, non è l'unica.
Christian

 meglio, per me ovvio.
Sě, infatti.
Questo dipende dai gusti.
Io ho aspettato con impazienza un VB "serio", poi ho visto che in VB.net 
anzichč fare una cosa fatta bene hanno tirato fuori il solito linguaggio 
raffazzonato e accrocchiato, che non č piů VB6 ma che non segue seriamente 
la filosofia .net, dalla sintassi ancora fantasiosa.
Diciamo che sono passato a c# perchč VB.net mi č parsa una presa per il 
culo.
Ciao 

 Bye,
Sì, proprio quello. Va già bene o è appena sufficiente? 

 
http://rsoftware.altervista.org/index.php?mod=none_net&file=vbvscs
Sono in disaccordo anzi, per essere precisi, alcuni di quelli che tu
elenchi come "svantaggi" di C# secondo me sono *vantaggi*, specialmente
considerando cose come queste:
http://rsoftware.altervista.org/index.php?mod=none_net&file=vbvscs#varop
http://rsoftware.altervista.org/index.php?mod=none_net&file=vbvscs#convert
Ho qualche commento anche su questo:
http://rsoftware.altervista.org/index.php?mod=none_net&file=vbvscs#redim
Io trovo invece molto logico che si dica *quanto è grande* un array,
vale a dire il numero massimo di "slot" disponibili, sarà perché
tutti gli altri linguaggi funzionano(più o meno) così.
Sugli operatori di confronto sono invece d'accordo con te.
http://rsoftware.altervista.org/index.php?mod=none_net&file=vbvscs#with
Questa è una "vecchia" questione: che succede se innesto due with e
devo refenziare una stessa proprietà? Per esempio per allargare la
Width di un controllo "child" a quella di un controllo "parent"?
E' solo un esempio ma se ne potrebbero fare altri...
http://rsoftware.altervista.org/index.php?mod=none_net&file=vbvscs#error
OnError è stata la *dannazione* della gestione errori in VB, trovo
singolare che qualcuno ci si riferisca come una "feature" considerando
anche che necessita(in buona sostanza) anche di "goto", il quale ha
senso solo in alcuni *molto rari* casi di sviluppo e non certo
dell'uso che se ne faceva in VB.
L'idea stessa che avere una propria liberia runtime sia da
considerarsi un vantaggio la trovo quanto meno risibile.
E' stata infatti, questa libreria runtime, una delle maggiori
PITA nello sviluppo di applicazioni VB.
Trovo altresì che sarebbe molto più logico uniformarsi al
dotNET framework piuttosto che avere propri wrappers: cosa
capita, infatti, se un giorno ci troviamo a non poterli utilizzare?
Riguardo l'imports di 
VB.NET
, trovo che ancora una volta ci sia un
grosso problema: che succede se importiamo 2 classi che entrambe
supportano lo stesso metodo? eheheheheheh bisogna andarci piano con
certe cose...
Veniamo ai moduli: il fatto che siano esportabili non li
rende "buoni": infatti non si possono ereditare, nè fare altre
operazioni "tipiche" delle classi, rendendoli di fatto molto
poco utili, se non forse per la questione del main.
Veniamo al late binding: sarà anche potente, però ha una
serie di "piccoli problemi" che vanno considerati:
1) E' *molto* più lento dell'early binding
2) E' molto più difficile farne il debug(perché degli
eventuali errori ci si accorge solo a runtime).
Questo vuol dire che è possibile utilizzarlo solo quando si sa
*esattamente* cosa si sta facendo ed in situazioni molto "controllate".
Inoltre c'è da considerare che usando assieme ad esso il "COM-Interop" i
livelli attraverso cui passa una chiamata aumentano spaventosamente e
questo va considerato, specialmente in situazioni dove la velocità
conta molto.
Quanto invece alle funzioni in overload(vale a dire, diversi argomenti e
stesso nome di funzione) trovo che sia molto più sensato l'approccio
"richiamo quello che mi serve" e non "richiamo ciò che è più
compatibile".
Tutto questo, imho.
Ciao,
Andrea

 Sì, proprio quello. Va già bene o è appena sufficiente?
Per iniziare direi che va bene.
