Difficoltà concettuali OOP

giovedì 11 giugno 2009 - 09.39

montapippo Profilo | Newbie

Buongiorno a tutti!

sono passato da poco a visual studio 2008 e sto provando a programmare cercando di sfruttare al meglio le potenzialità di questo linguaggio.

Dopo avere preso un po' di libri e averne lette alcune parti per me più importanti rimango con un dubbio di fondo:
Per poter gestire ad esempio i dati riguardanti i clienti di un database è meglio che io crei una classe "Clienti" in cui ci sia tutta la getione del form oltre alla gestione dei dati dei clienti oppure è meglio creare un form che utilizzi varie istanze della classe clienti (oppure un' istanza unica che gestisca una matrice di clienti) che gestisce solamente i dati?

sono indeciso perchè se opto per la prima soluzione penso di avere il vantaggio di fare una sola classe e quando poi vorrò cercare un cliente, crearne uno nuovo oppure cercare la lista fatture del cliente con metodi del tipo
Cliente.Nuovo(RagioneSociale,PartitaIVA,Indirizzo, ecc...)
oppure
Cliente.ElancaFatture
(restituendomi una matrice di valori)

mi carichi inutilmente la form (anche senza facendola vedere se necessario es. metodo Cliente.Nuovo) facendomi perdere molte prestazioni.

Invece penso che se opto per la seconda strada ho tutti i vantaggi di avere una classe il più generalizzata possibile ma no l' inconveniente di lavorare di più per ogni programma in cui avrò una sezione clienti....

grazie mille in anticipo a tutti!!!


Have a nice day Filippo

phai Profilo | Newbie

Ciao,

diciamo che in generale conviene sempre separare il più possibile le varie componenti di un'applicazione per i vari concetti che avrai sicuramente studiato (qualcuno sosteneva addirittura che una classe più lunga di 50 righe andrebbe sicuramente "spezzettata"... ma questa è un'affermazione un po' estrema!!!).

Io personalmente opterei per una classe che si occupi dell'accesso ai dati (utilizzabile da tutti) e una classe che si occupi della gestione del FORM.
Poi potrebbe essere il form stesso ad accedere alla prima classe di cui parlavo... o farne una ulteriore che gestisca l'interazione tra i due... in questo modo non dovresti fare fatica in più...

Spero di esserti stato utile... :)

montapippo Profilo | Newbie

Ok, grazie della dritta!!

procederò come mi hai consigliato, Grazie veramente tanto!
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5