Newsgroup: it.comp.lang.visual-basic
Titolo: Visual basic 6.0 vs Visual basic 2005 express

Buon giorno a tutti.
Ho la necessita' di migrare da un' applicazione scritta molti anni fa
in clipper/dbase ad un'applicazione windows perche':
1) devo gestire/importare  immagini (si tratta di una gestione di
ambulatorio medico),
2) vorrei utilizzare un database + solido e + sicuro dei files DBF he
utilizzo ora(soprattutto per la sicurezza dei dati)
Negli anni passati ho iniziato ad imparare il linguggio VB 5.0 e poi
VB 6.0 utilizzando come database access 97 e poi 2000 ma ho presto
rinunciato per questi motivi:
a) la ricerca di un record (su circa 500.000  divisi in ua mezza
dozzina di tabelle) mentre era accettabile utizzando DAO era
estremamente lenta utilizzando ADO e leggevo da piu' parti che DAO
veniva progressivamente abbandonato da M$
b) leggevo pareri discordanti sull'affidabilita' di access nel gestire
le muli-utenze (l'applicazione attualmente gira con un minimo di 3 a 5
utenti concorrenti)
Nel frattempo gli anni sono passati. I libri su VB 6.0 e i sorgenti
delle varie applicazioni da cui avrei potuto prendere spunto si sono
accumulati nel mio studio senza che io producessi nulla di efficace
Adesso si fa sempre piu' urgente la necessita' di passare ad un
sistema "visuale" integrato.
Cosa consigliereste:
- ritornare a studiare il VB 6.0 ? (ma ne vale la pena?)
- passare al visual basic 2005? (ho la versione express ma non l'ho
ancora installata). Ma questo mi permette di utilizzare un database
serio (e quale: MSDE mySQL..?)
Grazie per l'attenzione

 serio (e quale: MSDE mySQL..?)
Sì, supporta nativamente OleDB, MSSQL Server (quindi anche MSDE) e sono 
disponibili altri di terzi per MySql e altri.
L'unico consiglio che posso darti è di scegliere in modo definitivo VB6 o 
.Net perchè le due metodologie di programmazione e di accesso ai dati non 
sono intercambiabili, quindi se non vuoi rifare il lavoro 2 volte, una volta 
scelto quello è.
Ciao 

 - passare al visual basic 2005?
Varie:
1) MSDE lo puoi usare tranquillamente anche su VB6.
2) "circa 500.000  divisi in ua mezza dozzina di tabelle" significa un
numero piuttosto basso di record per tabella. Se la ricerca e' lenta
potrebbe essere un problema di DB strutturato male, piuttosto che di ADO.
3) Se hai tempo per studiare e non hai particolari pregiudizi verso
l'ambiente .Net, passa a VS2005.

sviluppare con un linguaggio "morto" 
questo infatti ( e la mancanza di tempo) mi ha trattenuto finora di
tirar fuori i libri su VB 6.0 dagli scaffali e rimettermi a tudiare.
Grazie

l'ambiente .Net, passa a VS2005.
Quali potrebbero essere i pregiudizi "correnti" per l'ambiente .NET?
Ciao e grazie.

 serio (e quale: MSDE mySQL..?)
Si, questo invece è ci che ti consiglio.
Puoi usare moltissimi tipi di db (sql server, sql server express (ex-msde), 
access, oracle ecc.....).
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
"Un problema non è un problema se può essere risolto"
XML: Il futuro dell' informatica 

 ha scritto nel messaggio 
news:gtlb52dgi33j3ihbj...@4ax.com...

Perfetto, non li hai, passa pure a .NET :-)
(c'e' gente che, come me, non ha digerito molto bene il passaggio da VB6 a 
.NET per tutta una serie di motivi...se non fai parte del gruppo, fregatene. 
NET per il momento e' il futuro, i caproni testardi come me il passato :-) )

 (ex-msde), access, oracle ecc.....).
Questo e' uno dei tanti motivi per cui non riesco a passare a .NET

 Questo e' uno dei tanti motivi per cui non riesco a passare a .NET
Ovvero?
ADO.Net?


 Invece - se ho ben capito- non e' cosi?
No, in quanto vb2005 č incredibilmente piů potente di vb6, č tutto un altro 
mondo, č un altro linguaggio.
Ha il paradigma OO, mentre vb6 no(e no, le pseduo-classi di vb6 non 
valgono).
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
"Un problema non č un problema se puň essere risolto"


 ADO.Net?
No.
Perche' mi viene il vomito ogni volta che apro un manuale di .NET, o che 
sento qualcuno parlarne, e di cazzate banalissime in VB6, fatte centinaia di 
volte in 9 anni di sviluppo, si dice che siano possibili solo grazie alle 
immense migliorie di .NET.
Porca vacca!
Io ADO lo uso dalla prima versione, l'ho usato con qualsiasi DB, senza 
problemi, MSDE, Oracle, MySQL, perfino con Outlook Express come DBE, SENZA 
bisogno di caricare in memoria 30 e rotti mega di runt-time di NET
Ed adesso, se apro un manuale o se do' retta a te...si consiglia l'enorme 
accrocchio di NET perche':"Puoi usare moltissimi tipi di db (sql server, sql 
server express (ex-msde), access, oracle ecc.....)."
Ma porca vacca, si potevano usare anche con DAO in VB3!!

 Ma porca vacca, si potevano usare anche con DAO in VB3!!
Non ho detto che *solo* in net puoi usare tutti quei tipi di db -.-
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
"Un problema non č un problema se puņ essere risolto"


mondo, è un altro linguaggio.
Piu' potente in che senso?
(ovvero potrebbe essere utile nel mio caso la maggio potenza)?)
Ciao


sql server express e' -secondo te- abbastanza collaudato da poter
sostituire msde?
Ovvero ritieni che sia piu' stabile di  msde ?


Quale db utilizzi ?
Ciao

>Quale db utilizzi ?
Ho visto appena adesso la risposta che hai dato a Carmine.
Scusa
Bubu

 Ma porca vacca, si potevano usare anche con DAO in VB3!!
Quoto e sottoscrivo.
Ma è anche vero che:
- alcune in .net si fanno "meglio" (la vera programmazione OOP che in .Net
si può fare, tra cui l'ereditarietà visuale, è una gran cosa)
- altre cose in VB6 sarebbero MOLTO più difficili (web service per
applicazioni 3-tier)
Per non parlare di ASP.net, neanche confrontabile con ASP (non c'entra
molto con VB6 ma è un ottimo motivo per passare a .net)
Io peraltro lavoro ancora con VB6 per tutti i miei progetti in
manutenzione, che neanche mi sogno a portare in .Net e sono convinto che
VB6 sul mio pc rimarrà ancora per moooolto tempo.
-- 
Stefano "HappyMan"
http://www.sgr.info

 Ovvero ritieni che sia piu' stabile di  msde ?
Assolutamente si!
SQL Express non è altro che la nuova versione (potenziata) di msde.


 Piu' potente in che senso?
Molto più versatile.
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
"Un problema non è un problema se può essere risolto"


 "Un problema non č un problema se puň essere risolto"


 SQL Express non è altro che la nuova versione (potenziata) di msde.
La domanda era un po' diversa :)
Si chiedeva: SqlServer2000 c'è dal 2000 ed è collaudato.
Ci si può fidare di SqlServer2005 (o come si chiama il nuovo motore)?
Ciao 

 applicazioni 3-tier)
Ti dirò: sento molto la mancanza di qualcosa di semplice come i vecchi 
ActiveX exe.
Sì, adesso ci sono i webservices + remoting, ma prima tutta la 
serializzazione delle classi se la smazzava COM+, adesso devo farmela tutta 
io!
Ciao 



Vero, penso però ad un altra funzionalità che trovo molto comoda: la
possibilità di creare custom controls "inglobati" direttamente nell'exe,
referenziabili nella toolbox ed ereditabili. Se penso al versioning dei
controlli COM questo è un passo da gigante.
In realtà per me il problema di .Net è un altro: le risorse richieste.
A parità di applicazione "windows form" senza funzioni particolari il
framework si mangia decine di mega per fare LATO UTENTE le stesse cose,
magari un poco più lente (se il sistema non è recente). 
Si fa in fretta a dire "con i sistemi di oggi 512 MB di ram e un PIV/Athlon
3000 sono lo standard", forse vale per i privati ma per le aziende è
diverso...
Ciao
PaF
-- 
Stefano "HappyMan"
http://www.thepoint.info

 utilizzo ora(soprattutto per la sicurezza dei dati)
zac
my2Cents
Premessa:
Nessun linguaggio è perfetto per tutto...ma tutti i linguaggi se
"capiti" sono idonei a risolvere un problema informatico (l'efficenza
poi fa la differenza).
Se passi a NET hai una serie di vantaggi (il prioncipale IMHO di
imparare a lavorare OP e sopratutto in logica disconnessa)...e una
serie di svantaggi.
Se partiamo da quello che hai....
ADO non va male con i db....ma che bufala si dice quando si!
Il buon vecchio Lupo asseriva una serie di questioni DAO Vs ADO....e
alla fine si trovò una soluzione tramite "programmillo" scritto da lui
che DAO era effettivamente più veloce (di poco) rispetto ad ADO.
Il problema è che con DAO ti interfacci solo ad Access....
Con ADO praticamente a tutto!
ORA
le cose vanno viste anche da punto di vista pratico...
ossia:
Devo fare un programma...ho poco tempo...devo farlo bene
Access va benissimo....poca...nulla manutenzione....file singolo...2 3
4 ( tiè 5) utenti concorrenti non esplode....
e se fai un programma per dentisti...normalmente non hai bisogno della
multiutenza...e comunque un dentista con più di 5 postazioni io non
l'ho mai visto!!!
Lo stesso per un piccolo gestionale ....se lo pensi per un negozio...un
artigiano....non vai oltre le 5 utenze concorrenti (già sono tante)
Quindi?
se i tuoi programmi di sviluppo rimangono in questo target....non ti
bacare le palle....
continua ad usare DAO....che te frega se non lo supportano più!
I tuoi file di setup continuano ad essere validi...dovrai solo
aggiungere il setup di DAO quando installi!
E la velocità è il massimo che puoi spremere....
SE PERO'
pensi più in generale....
tipo.....
"Adesso uso access....ma vorrei usare anche MSDE o MySQL...o
Postgresql...ossia...
vorrei rendere indipendente lo strato Business da quello DB (per quanto
possibile...perchè poi con le stored IMHO rimischi tutto!) da quello
interfaccia utente...."
Oppure
"Vorrei 'smontare' la mia applicazione in classi funzionali per avere
una versatilità e manutenibilità maggiore...."
ti devi avvicinare ad ADO...e volendo a NET.....
Se passi ad ADO hai una tecnologia di accesso ai dati versatile che con
poche modifiche (una stringa di connessione) ti permette di cambiare
motore DB...
In più....visto che parli di prestazioni decadenti e presumo l'errore
(ossia cursore Dynamic e sempre connesso)...con ADO mantieni i
cursori...anche lato server...insomma hai un controllo pressochè
totale!
Con NET ti diranno che è più veloce....e per me non è vero!
Nel senso che ...se non hai mai ragionato a "classi" è dura con NET...
se non hai mai "smontato" la tua applicazione in classi e oggetti....e
vb6 ci costringeva ad alcuni virtuosismi per farlo...NET è ripido da
digerire!
Inoltre per parlare di ADO.net e mondo sottostante....
scordati cursori....connessioni sempre attive e amenità varie.....
Personalmento ho fatto una fatica immane a progettare una semplice
videoteca connessa ad un database che avesse più di una tabella
relazionata ad altre....
ho scritto tanto codice !
Nel 2005 ho letto (l'ho installato da poco) il manuale "introduzione a
MS VB 2005"
a pag 106 parla del nuovo componente dataNavigator che fornisce servizi
di navigazione tra record e anche di aggiunta/modifica/cancella
dice cjhe con una sola riga di codice permette di popolare un dataset
da un db e di renderlo "navigabile"....
poi sotto ...staccato ...recita
"...
Se si osserva il metodo InitializeComponent, si vedranno
approssimativamente 300 righe di codice che non si dovranno scrivere,
un sostanziale miglioramento di produttività!"
ed io aggiungo...sticazzi!
300 righe di codice per rendere una query modificabile!
...cari vecchi recordset non vi abbandono
pciù smack pciù smack !!!
Certo se "accetti" i componenti di m$ è un bel salto...devi scrivere
veramente poco con il nuovo 2005...
Esiste una conclusione?
NO!
nel senso che la conclusione te la devi dare tu!
PER IL MIO
target di clienti....io mi tengo stretto vb6 e ADO....
e comicio ad usare
(vb.)NET
per piccoli progetti interni e per esperimenti web (aspx mi piace
...quella è una parte che amo ...probabilmente se fossi un
programmatore in php avrei da parecchio buttato via tutto il net! Ma
adesso di imparare il php non ne ho ne il tempo ne la voglia)
Io ho anche un altro handicap....rispetto probabilmente a chi ti ha
risposto!
Io sono programmatore, commerciale, imprenditore,....son tutto in
uno....
mi trovo clienti...sviluppo la soluzione....la manutengo...faccio il
recupero crediti se non pagano ( a colpi di netsky nei denti!  eh eh !
)
Chi ha la fortuna di essere in una struttura dove deve fare solo il
programmatore (junior o senior) probabilmente cambia tutta la visione e
si troverà moooolto meglio con NET (o con java o con c++) che gli
consentirà uno sviluppo distribuito!
Fine!
Ciao!