Newsgroup: it.comp.lang.visual-basic
Titolo: [?]Programmazione ad oggeti e classi in vb5: a che serve e come vanno usate??

Salve,
vorrei sapere come si usano le classi in vb5... nel senso di capire a che
cosa servon e quando conviene usarle e soprattutto quali i vantaggi e
svantaggi...
quando mi è capitato di vedere progetti vb con classi queste erano usate
come i classici moduli .bas ma penso non sia questa la giusta
implementazione o no?
Non riesco ad afferrare l'utilità dell'uso delle classi in un caso concreto
potete darmi una mano??
grazie a tutti!

La tua risposta richiederebbe un libro intero,mi limiteró a dirti che per me
la parte piú difficile della programmazione OOP é stata proprio capire
quando usarla.
Usarla come sostituzione di una library di routines non conviene, l'overhead
é troppo pesante rispetto all'uso di un semplice modulo .bas.
Per capire l'uso di classi e collection devi sforzarti di vedere il tuo
problema come un insieme di uno o piú oggetti (anche dello stesso tipo)
ognuno dei quali ha delle caratteristiche (proprietá),svolge dei compiti
(metodi) e puó anche generare degli eventi (Eventi).
Una volta definito questo scenario, la tua applicazione deve occuparsi di
gestire questi oggetti tra loro.
Il vantaggio é che se quando crei un oggetto, lo testi, e sei sicuro che
funziona, puoi scordarti come é fatto l'oggetto al suo interno e passare ad
un livello di astrazione superiore, cioé usare l'oggetto, sicuro che quando
usi i suoi metodi e proprietá l'oggetto fa quello che deve fare.
L'oggetto potrebbe anche essere sviluppato da qualcun altro (vedi ad esempio
gli ocx) e tu potresti semplicemente usare l'oggetto senza nemmeno vedere il
codice presente all'interno.
L'uso delle collection per costruire classi container custom ti aiuterá nel
mettere insieme i vari oggetti e creare l'oggetto finale.
Lo so non é facile (non lo é stato neanche per me) comunque ti consiglio ti
perderci un pó di tempo perché ne vale la pena.
Attualmente sto sviluppando delle applicazioni che senza OOP non saprei
neanche da che parte iniziare mentre con l'utilizzo degli oggetti non dico
che siano delle banalitá ma poco ci manca.
Ciao
Corrado

...

Le classi e tutta la programmazione ad oggetti derivante serve per crearti
dei componenti di codice separati. Guarda alle classi come controlli OCX
senza interfaccia grafica. Per esempio puoi costruirti una classe che ti
gestisce un disco rigido con metodi come GetFreeSpace, CopyFile, MoveFile e
quanto la tua fantasia possa creare. La figata sta nel poter richiamare più
istanze di queste classi e quindi avere proprietà e variabili diverse per
ogni istanza, cosa impossibile da attuare con un modulo bas. Nel caso
dell'esempio riportato potresti benissimo avere una istanza di classe per
ogni HardDisk. Inoltre con il polimorfismo e l'ereditarietà puoi gestire
classi diverse utilizzando una loro interfaccia comune e l'ereditarietà ti
permette di non riscrivere il codice che già esiste in un'altra classe e di
implementarlo all'interno della tua.
Lo so che l'ultima parte è un po' complicata ma altrimenti sarebbe stato un
discorso lungo e non so quanto poi tanto ti interessino gli oggetti.
---------------------------- Emanuele -
vsav...@pelagus.it
 ------------------------------------