Θα πρέπει να διατυπώσεις διαφορετικά την ερώτηση. Ο παλιός τρόπος είναι ακριβώς η λογική του "δείχνω μερικούς πίνακες σε κάποιες φόρμες". Ο λόγος που δημιουργούνται αντικείμενα και χωρίζονται σε business layer και data layer είναι επειδή στις περισσότερες εφαρμογές απαιτείται πιο περίπλοκη λογική από την απλή παρουσίαση των πινάκων στις φόρμες. Οπότε το ερώτημα γίνεται, τί θέλεις να κάνει η εφαρμογή?
Η δουλειά του data layer είναι σχετικά απλή, να μεταφέρει δεδομένα μεταξύ των αντικειμένων του business layer και της βάσης. Η δουλειά του business layer όμως έχει να κάνει με το τί θα κάνει η εφαρμογή. Διαφορετικά αντικείμενα, με διαφορετικές μεθόδους θα φτιάξεις για μία εφαρμογή αποθήκης, διαφορετικά για ένα e-commerce site, διαφορετικά για ένα CRM. Θα μπορούσες, π.χ. να φτιάξεις μερικά αντικείμενα όπως Customer, Order, OrderItem, αλλά τί θέλεις να κάνουν αυτά? Τα αντικείμενα δημιουργούνται για να εκτελέσουν συγκεκριμένες λειτουργίες, όχι για να περιέχουν συγκεκριμένα δεδομένα.
Σε μία εφαρμογή αποθήκης χρειάζεσαι μεθόδους για την ενημέρωση του stock, την επιλογή των αντικειμένων που θα στείλεις στους πελάτες, τον προγραμματισμό για την αποστολή των παραγγελιών. Σε μία εφαρμογή e-commerce, θέλεις τιμολόγηση, εκπτώσεις, προσφορές. Σε ένα CRM θέλεις ιστορικό πωλήσεων ανά πελάτη. Όλες αυτές οι λειτουργίες σε μία μικρή εφαρμογή θα μπορούσαν να βρίσκονται μέσα στις φόρμες και να εκτελούνται όταν π.χ. πατάει ο χρήστης ένα κουμπί. Σε οποιαδήποτε άλλη εφαρμογή, αυτές οι λειτουργίες γίνονται μέθοδοι των αντικειμένων του business layers.
Τέλος, αν υπεραπλουστεύσουμε, μπορούμε να πούμε ότι ο ρόλος του presentation layer είναι να δείχνει στο χρήστη τα δεδομένα που περιέχουν τα αντικείμενα και να μεταφέρει σε αυτά τις εντολές του χρήστη. Αν η εφαρμογή σου είναι command-line, το presentation layer απλά θα διαβάζει τις παραμέτρους και θα καλεί τις κατάλληλες μεθόδους στο business layer. Αν έχεις UI, μπορείς στο Click event ενός κουμπιού να διαβάσεις τα απαραίτητα στοιχεία από τη φόρμα και να καλέσεις τις κατάλληλες μεθόδους του business layer.
Θα σου πρότεινα να βρεις κάποια βιβλία για Object-Oriented programming και Patterns. To Head First Design Patterns είναι ένα πολύ καλό και διασκεδαστικό βιβλίο. Παρότι είναι σε Java δεν θα έχεις πρόβλημα να το καταλάβεις και να εφαρμόσεις όσα περιγράφει και σε .NET.
Παναγιώτης Καναβός, Freelancer
Twitter: http://www.twitter.com/pkanavos