Regole generali di progettazione

giovedì 21 settembre 2006 - 19.05

Shadow Profilo | Junior Member

Formulo queste due richieste in linea di principio, per conoscere una regola generale di buona progettazione.

Dato un programma VB2005 associato ad un DB Sql Server 2005 con 20 tabelle ciascuna con svariati campi, è più sicuro ed efficace progettare venti diversi dataset quanti sono le tabelle o un solo dataset con tutte le tabelle dentro?

Consideriamo il procedimento automatico di VS 2005 che mediante trascinamento datase su un form crea tutti gli oggetti necessari ad un corretto funzionamento dell'insieme. Se ad una tabella modifico o aggiungo un campo, o se anche aggiungo una tabella al mio database, quali operazioni vanno fatte per aggiornare correttamente l'insieme e tutti gli oggetti automaticamente creati?

Grazie a tutti!
Shadow

darisole Profilo | Junior Member

In linea di principio, le regole di buona progettazione software imporrebbero la realizzazione di un Data Access Layer e di non usare i DataSet di .NET in modo diretto.

Poi per il resto penso sia irrilevante usare un DataSet unico oppure uno per tabella. Forse usandone più d'uno, istanziandoli al momento giusto, l'applicazione scala meglio.

Shadow Profilo | Junior Member

Cambio domanda, visto che dalle vostre risposte mi sono reso conto di essere molto, ma molto più ignorante di quanto immaginassi. Potete consigliarmi un ottimo libro sull'argomento che spieghi in modo articolato quello che mi state consigliando? Sinceramente io sono cresciuto con i classici oggetti di ADO.NET (connection, adapter, dataset...) e conosco solo questi, le vostre indicazioni mi hanno fatto venire una gran voglia di imparare e mi hanno fatto capire quanta strada devo ancora percorrere... Grazie! E spero che quando sarò abbastanza preparato da seguire i vostri consigli potrò evolvere facilmente l'applicazione che sto progettando ora dai classici strumenti ADO che conosco a quelli che mi consigliate voi.
Shadow

darisole Profilo | Junior Member

Bè, ora come ora non mi vengono in mente libri in particolare, però ti consiglio di cercare in internet informazioni sullo sviluppo di applicazioni 3-tier, che appunto suddividono la logica in tre moduli, uno per la presentazione e l'interazione con l'utente (Presentation), uno con il cuore dell'applicazione (detto BLL, Business Logic Layer) ed infine l'ultimo per l'accesso ad dati (DAL, Data Access Layer).
Ultimamente su MSDN hanno pubblicato degli ottimi tutorial in merito. Sono dedicati ad ASP.NET, ma i concetti sono validi in ogni caso, l'unica cosa è che ASP.NET supporta più oggetti di alto livello preconfezionati, ma con un po' di buona volontà dovresti riuscire a riadattare l'insegnamento al tuo caso.

Un breve articolo introduttivo lo trovi qui
http://www.codeproject.com/cs/design/three_tier_architecture.asp

Uno un po' più avanzato qui
http://www.codeproject.com/csharp/CodinginTiers1.asp

Faccio notare che non li ho letti, ma mi sembrano un buon punto di inizio.

Ciao!

Shadow Profilo | Junior Member

Vi ringrazio... Sui database ero convinto di saperne molto più di quanto in realtà ne sappia! Grazie ancora,

Shadow
Shadow
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