Newsgroup: it.comp.lang.visual-basic
Titolo: .Net o ancora VB6?

Ciao a tutti,
Mi servirebbe un consiglio sulla tecnologia da utilizzare in quanto trovo le
vostre dritte sempre molto utili.
il mio gruppo di lavoro è stato incaricato di riscrivere un pacchetto
software scritto parecchio tempo fa in VB3.
Ora...nel gruppo ci sono sia sviluppatori .Net (C# e VB.Net), sia
sviluppatori VB6.
I primi sviluppano essenzialmente applicativi client-server spesso
web-enabled, i secondi principalmente mantengono  programmi scritti tempo fa
e sviluppano utilities di supporto, gui a basi di dati, etc.
Il pacchetto da riscrivere è un programma standalone operante in locale che
non deve essere web-enabled/client-server etc: punti di forza IMHO di .Net.
Unica peculiarità è che immagazzina i dati in files Access, utilizzati come
file-utente, quindi serve il supporto al db (sempre locale).
VB6 sarebbe quindi +che sufficiente per questo tipo di applicativo, che si
potrebbe sviluppare senza scomodare .Net.
Anche se molte features sarebbero interessanti, tipo il supporto all'OOP che
semplificherebbe il lavoro di più persone allo stesso progetto, la
manutenzione del codice sul lungo termine, la modularità...
Inoltre non so se conviene investire di già su qst tecnologia .Net alla luce
del fatto che l'applicativo che riscriveremo dovrà "durare" almeno un 5
anni, visto che abbiamo in previsione di agganciargli nei prox anni (come
fatto a suo tempo con l'altro) moduli aggiuntivi (tipo plug-in) per
aumentarne le prestazioni. E fra 3-4 anni? Forse conviene già passare a .Net
in questo caso, voi che dite? Oppure i tempi sono così lunghi che forse
anche .Net sarà vecchia ai tempi?
Non so proprio decidermi....
Voi esperti che consigliate?
So che sono stato generico..ma vi prego di darmi una mano :-)
Grazie!
zXc

Da quello che scrivi e visto che già avete la conoscenza utilizzerei, ad
occhi chiusi .NET, il fatto che poi l'applicativo debba "durare" a lungo è
un ulteriore motivo.
Come sono dell'idea che non convenga migrare applicazioni VB6 verso .NET se
l'unico scopo è la manutenzione, iniziare nuovi progetti (non banali) con
VB6 mi pare fuori luogo.
La piattaforma .NET è già uscita da più di un anno, a breve avremo il
framework v1.1 e VS 2003, già si parla della prossima release (Whidbey)
credo perciò sia il momento giusto per 'iniziare l'avventura'.
Sono appena tornato da Redmond e ti posso assicurare che .NET è un "must" in
Microsoft, ci sono dei grossi investimenti dietro e non hanno la minima
intenzione di cambiare direzione (magari prima del 2005)
Certo, c'è molto da studiare, e a molti, studiare non piace...
HTH
-- 
Corrado Cavalli [Microsoft MVP]
UGIdotNET - 
http://www.ugidotnet.org

 un ulteriore motivo.
anch'io soono per .net ma non con microsoft.Se proprio devi spendere soldi
per un nuovo compilatore sarà forse meglio valutare delphi che è anche
multipiattaforma e .net .
ciao :)

Grazie mille per le informazioni (wow, direttamente da Redmond).
Il progetto in effetti non è banale, ma comunque fattibilissimo con VB6
senza "scomodare" .NET (framework pensato sicuramente per applicativi
diversi da quello che abbiamo in mente e già impiegato appunto nella nostra
realtà per sistemi +complessi).
Diciamo quindi che .Net, se ho capito bene, sarebbe giustificato, +che dalle
funzionalità richieste dall'applicativo, dai lunghi tempi di realizzazione
del progetto e dalla durata dello stesso (manutenzione e aggiornamento nei
prossimi 3 anni almeno).
In effetti non si parla di manutenzione del codice VB3 ma di riscrittura
totale, quindi mi sa che hai ragione e l'avventura dovrebbe partire con
.Net, guardando, più che al presente al futuro...e, dato che si lavora in
.Net, sfruttare già da subito tutti i vantaggi che la nuova piattaforma di
sviluppo propone.
Sicuramente c'è molto da studiare, ma credo che questa sia una attività
scontata per ogni sviluppatore sw che vuole mantenere sempre alto il suo
livello di professionalità e di aggiornamento.
Grazie ancora!
ah...approfitto per una domanda: supponendo che allora si parta con il
progetto in .Net e con un progetto completamente ex-novo per cui senza
recuperare codice vb (tra l'altro del vb3), cosa conviene utilizzare, C# o
Vb.net? Immagino che per questo tipo di applicativo sia una scelta
dipendente solo dalla disponibilità di programmatori in ciascuno dei due. Ma
ho sentito dire che quando si sviluppa .Net conviene utilizzare C#, creato
proprio per la nuova tecnologia. Mi affido al tuo competente giudizio.
zXc

Grazie per la dritta circa l'utilizzo su .Net, mi sa che mi orienterò in
questa direzione.
In effetti non ho valutato Delphi, mi potresti dire il perchè dovrei farlo
(guerre di religione a parte)?
Il fatto che il mio progetto non diventi multipiattaforma non è una
limitazione ed inoltre dispongo già di VS.net e VS6, quindi non dovrei
nemmeno valutare l'acquisto di un nuovo compilatore.
Unica esperienza fatta con Delphi era ai tempi del 3.0 e purtroppo non è
andata a buon fine visto che si cercava di far dialogare Access con il
front-end Delphi...un macello, anche se oggi con l'introduzione di ADO in
Delphi credo non ci siano più così tanti problemi.
A me Delphi piaceva molto prima perchè permetteva una programmazione a
oggetti migliore ed una compilazione di eseguibili senza troppi moduli
runtime.
Ora, migrando su .Net in Delphi dovrei comunque portarmi dietro il framework
come in VB (fino a quando non sarà presente di default su tutte le macchine
con s.o. win) e VB.net / C# supportano oramai pienamente l'oo (almeno per
quel che serve a me).
Teniamo conto che si stanno facendo anche sforzi per portare su altre
piattaforme i compilatori c# e 
vb.net
 (progetto Mono), per cui probabilmente
anche la portabilità verrà prima o poi garantita.
Mi puoi quindi spiegare i motivi per cui si dovrebbe considerare Delphi (no
flame please, visto che non è nemmeno il ng adatto).
Grazie mille.
zXc

 intenzione di cambiare direzione (magari prima del 2005)
Solo?!?!?!?! :)))
Beato te...
Comunque per zXc non ho alcun dubbio nel consigliarti un linguaggio .NET...
Per quanto riguarda Delphi... Ma é veramente .NET? Usa il framework? Se
sì... allora la differenza rispetto ai vari 
VB.NET
 o C# é talmente minima
che il consiglio é di usare ciò che conosci meglio...
Se invece Delphi é può "SOLO" produrre Web Services (mi pareva che fosse
così) allora mettilo da parte e abbraccia il nostro amato VB.NET...
            Ciao
                                        Allanon
--
- SPAMKILLER
 L'indirizzo delle risposte é 
itlangv...@michele.sytes.net
 LASCIATE il NOSPAM fa parte dell'indirizzo :-)
  Per superare le impostazioni di protezione antispam scrivete
  nel testo del messaggio la scritta "SPAMKILLER"
Scusate il disturbo, ma non posso più di pubblicità

 nemmeno valutare l'acquisto di un nuovo compilatore.
beh visto che gia possiedi 
vs.net
 e non hai interesse che diventi
multipiattaforma la scelta mi sembra evidente :))
ciao

Due consigli:
1) Utilizza il linguaggio che conosci meglio, quindi se conosci _bene_ VB
passa a 
VB.NET
, le potenzialità dei due linguaggi è la stessa.
2) Impara il CLR (Common Language Runtime), ti assicuro che c'è molto da
imparare (sono circa 8000 classi...)
Una volta che conosci il CLR il linguaggio altro non è che un wrapper sopra
il CLR, se poi vorrai passare da 
VB.NET
 a C# (o viceversa) non impiegherai
molto tempo.
I linguaggi dotNET sono così 'legati' che, oltre ad utilizzare lo stesso
ambiente di sviluppo (Visual Studio) puoi utilizzare routines scritte in C#
da 
VB.NET
 oppure ereditare classi in C# da baseclasses scritte in 
VB.NET
.


 che c'è molto da imparare (sono circa 8000 classi...)
Quando qualcuno mi chiede come me la cavo col .NET, ora
almeno so cosa rispondere... cavolo, io ho una sola vita,
e le mie giornate sono solo di 24 ore !
A proposito... se sono 8000 classi adesso, nelle prossime
versioni cosa succederà ?
Bye, G.