Καλώς ορίσατε στο dotNETZone.gr - Σύνδεση | Εγγραφή | Βοήθεια
σε

 

Αρχική σελίδα Ιστολόγια Συζητήσεις Εκθέσεις Φωτογραφιών Αρχειοθήκες

Strongly typed vs Untyped Datasets

Îåêßíçóå áðü ôï ìÝëïò xatiu. Τελευταία δημοσίευση από το μέλος Ηλίας Κεκάκος στις 23-03-2009, 19:20. Υπάρχουν 11 απαντήσεις.
Ταξινόμηση Δημοσιεύσεων: Προηγούμενο Επόμενο
  •  05-03-2009, 19:33 48934

    Strongly typed vs Untyped Datasets

    Γεια χαρά και συγχαρητήρια για το πολύ ωραίο forum,

    Ξεκινάω μία εφαρμογή σε .net και windows.forms. Δεν έχω ασχοληθεί πάρα πολύ με .net στο παρελθόν Το δίλημμά μου είναι να χρησιμοποιήσω Strongly typed ή untyped Datasets. Ήθελα τα υπέρ και τα κατά των δύο από εσάς που έχετε μεγαλύτερη εμπειρία. Βρήκα αυτό  αλλά δεν λέει και πολλά. Εσείς τί προτιμάτε και γιατί;

    Το Visual studio παράγει typed datasets. Γιατί προτιμώνται;;

    Reverse engineering για untyped datasets γίνεται?

    Αν κάνω αλλαγές σε tables, relations κλπ στην βάση πόσο εύκολα γίνεται το reverse engineering στις δύο περιπτώσεις? Θα χάσω τις αλλαγές που έχω κάνει στο dataset με το χέρι?

    Σταματάω εδώ προς το παρόν και επιφυλάσσομαι για κάποια ακόμη ερωτήματα.

    Ευχαριστώ

  •  06-03-2009, 01:01 48936 σε απάντηση της 48934

    Απ: Strongly typed vs Untyped Datasets

    γενικά, και όχι για ειδικό Project, χρησιμοποιώ typed datasets Γιατί υποστηρίζονται πιο πολύ από το VS 2008 και είναι πιο εύκολο και καθαρός τρόπος να γράψεις κώδικα.με untyped datasets είναι κατά την γνώμη μου πιο δύσκολο να κάνεις maintain τον κώδικα...
    Νικόλαος Καντζέλης
    BSc, MSc, MCAS, MCPD, MCITP, MCTS,MCP, MCT
    http://www.nksolutions.gr
    http://dotnetstories.wordpress.com
    http://weblogs.asp.net/dotnetstories
    http://forum.dotnetnuke.gr
  •  07-03-2009, 22:01 48988 σε απάντηση της 48934

    Απ: Strongly typed vs Untyped Datasets

    Ο κύριος λόγος για να χρησιμοποιήσεις Typed Datasets είναι ακριβώς το type safety. Είναι άλλο πράγμα να λες

       NorthwindDataSet.Tables("Categories")

    και άλλο πράγμα

       NorthwindDataSet.Categories

    Στην πρώτη περίπτωση, πέρα του ότι πληκτρολογείς περισσότερα, αν κάνεις λάθος μέσα στα quotes, θα το ανακαλύψεις με runtime exception. Παρομοίως, είναι άλλο πράγμα να γράφεις

       NorthwindDataSet.Tables("Categories").Rows.Find("CategoryID=" & CategoryIdTextBox.Text)

    και άλλο

       NorthwindDataSet.Categories.FindByCategoryID(Int.Parse(CategoryIdTextBox.Text))

    Επίσης, και τα DataRows είναι typed οπότε όταν παίζεις πάνω σε κάποιο row, σε untyped dataset θα πρέπει να γράφεις κάτι σαν

       rowCategory.Item("CategoryName") = "Test"

    ενώ σε typed

       rowCategory.CategoryName = "Test"   

    Νομίζω είναι προφανή τα πλεονεκτήματα. Επιπρόσθετα ένα benefit που δεν φαίνεται εξ αρχής είναι το εξής: Αν γίνουν αλλαγές στο schema της βάσης, θα πρέπει να ενημερώσεις το typed dataset χρησιμοποιώντας τον designer πράγμα που σημαίνει ότι θα έχεις compile-time errors για τα πεδία, τα constraints, κλπ που πλέον έχουν αλλάξει. Στην περίπτωση όμως που χρησιμοπιούσες untyped dataset, τότε θα έπρεπε να βρεις χειροκίνητα και να αλλάξεις όλα αυτά τα σημεία (χμμμ... και αν ξεφύγει κανένα; Ε, θα το βρεις στο runtime).

    Τώρα, ως προς τη διαφορά στο performance, δεν ξέρω που εντοπίζεται στο link που βρήκες. Ενδεχομένως να αναφέρεται στη δημιουργία του object αφού όντας πιο πλούσιο σε functionality, μάλλον θα χρειάζεται λίγο παραπάνω χρόνο για να φτιαχτεί το instance. Πέρα από αυτό, δεν γνωρίζω να υπάρχει άλλη διαφορά. Ίσως να χρειάζεται λίγο benchmarking. Εδώ πάντως δείχνει ότι υπερέχουν.


    Vir prudens non contra ventum mingit
  •  08-03-2009, 01:14 48991 σε απάντηση της 48934

    Απ: Strongly typed vs Untyped Datasets

    Έκανα κι εγώ λίγο digging και θα πω πως συμφωνώ με τον Μάνο. Πάντως στο internet υπάρχει διάχυτη η αντίληψη ότι τα typed datasets υστερούν σε performance, χωρίς την ύπαρξη, όμως, hard evidence. Ένα overview για τα datasets μπορείς να βρεις εδώ. Τώρα, όσον αφορά στο θέμα της ταχύτητας, η τελευταία εξαρτάται από τον τρόπο που κάνεις access τα data σου. Υπάρχουν τρεις τρόποι. Και τους τρεις, με τα υπέρ και τα κατά τους, θα τους βρεις εδώ. Ο πιο readable και maintainable τρόπος είναι και ο πιο αργός (όπως είναι φυσικό). Τα typed datasets έχουν performance συγκρίσιμο μ' εκείνο που σου δίνει ο ταχύτερος τρόπος για τα untyped. Τέλος, ο designer είναι πιο έξυπνος απ' ό,τι δείχνει και μπορείς εύκολα να περάσεις αλλαγές που κάνεις στο σχήμα της βάσης σου στο dataset, αποφεύγοντας παράλληλα και τα errors [EDITED] κατά το compilation. Για του λόγου το αληθές, δες αυτό το video.


    Ακόμα κι ένας άνθρωπος μπορεί ν' αλλάξει τον κόσμο. Μη θέλεις να κυβερνήσεις. Απλά δείξε το μονοπάτι κι ο κόσμος θ' ακολουθήσει!!
  •  08-03-2009, 15:29 49010 σε απάντηση της 48934

    Απ: Strongly typed vs Untyped Datasets

    Συνημμένα: Demo.zip
    Πράγματι, αυτές οι απαντήσεις είναι που λείπουν. Αυτο που επίσης λείπει και πάρα πολλοί το αναζητούν είναι ένα Demo αυτών των περιπτώσεων. Ετσι αυτό που θα ήθελα να ζητήσω είανι το εξής:
    Εσωκλείω μια ΒΔ με τρεις πίνακες:Πελάτες, Προιόντα και Αγορές. Για να ενημερώνουμε τους τρείς πίνακες χρειαζόμαστε μία εφαρμογή με 3 φόρμες που η κάθε μια θα ενημερώνει και τον αντίστοιχο πίνακα.
    Μπορείς για τις 2 περιπτώσεις που δίνεις να μας γράψεις και ένα DEMO;
    Καταλαβαίνω ότι ζητάω πολλά και μπορεί να με σιχτιρίσεις, αλλά αυτό θα ήταν το τέλειο.

    Ευχαριστώ
  •  08-03-2009, 15:59 49011 σε απάντηση της 49010

    Απ: Strongly typed vs Untyped Datasets

    Δεν θα σε σιχτιρίσω :) Αλλά φοβάμαι οτι δεν θα έχω το χρόνο να κάνω κάτι τέτοιο, ήδη είμαι ως το λαιμό. Θα το έχω υπόψη μου πάντως μόλις βρω λίγο χρόνο γιατί θα ήταν πραγματικά ενδιαφέρον να γίνει ενα demo τέτοιου είδους. Εκτός αν κάποιος άλλος συνάδελφος έχει περισσότερο χρονο και μπορεί να υλοποιήσει κάτι.


    Σωτήρης Φιλιππίδης

    DotSee Web Services

    View Sotiris Filippidis's profile on LinkedIn

    DotNetNuke them!
  •  08-03-2009, 16:22 49012 σε απάντηση της 49011

    Απ: Strongly typed vs Untyped Datasets

    Σ' ευχαριστώ και πιστεύω και πολλοί άλλοι μαζί μ' εμένα. Θα περιμένουμε την ανάπτυξη αυτού του demo.Yes
  •  08-03-2009, 17:04 49014 σε απάντηση της 49012

    Απ: Strongly typed vs Untyped Datasets

    Φιλικά το λέω, αλλά ekekakos, εκτρoχίασες τελείως το topic! Είμαστε στα "πρώτα βήματα" και ο xatiu έθεσε ένα πολύ συγκεκριμένο ερώτημα που αφορά στην πρώτη του εφαρμογή που θέλει να υλοποιήσει. Πιστεύω τα posts μετά το τελευταίο μήνυμα του Markos περισσότερο θα τον μπερδέψουν παρά θα τον βοηθήσουν. Το ποιά είναι τα πλεονεκτήματα του κάθε data access API και κάθε data access αρχιτεκτονικής είναι τελείως διαφορετικό πράγμα που ανήκει σε διαφορετική συζήτηση. Αν θες μπορούμε να σπάσουμε το τρέχον thread...


    Vir prudens non contra ventum mingit
  •  08-03-2009, 17:40 49015 σε απάντηση της 49014

    Απ: Strongly typed vs Untyped Datasets

    Σπάσε το Μανο, και εγώ δεν αντιλήφθηκα οτι βρισκόμασταν στα πρώτα βήματα, ζητώ συγνώμη.

     


    Σωτήρης Φιλιππίδης

    DotSee Web Services

    View Sotiris Filippidis's profile on LinkedIn

    DotNetNuke them!
  •  08-03-2009, 19:49 49018 σε απάντηση της 49014

    Απ: Strongly typed vs Untyped Datasets

    Φιλικά απαντάω και εγώ KelMan, δεν νομίζω ότι την εκτροχίασα την συζήτηση. Όταν ξεκινάς τον προγραμματισμό ένα βασικό ζήτημα είναι να ξεκινήσεις σωστά, να βάλεις τις σωστές βάσεις ανάπτυξης των προγραμμάτων από ένα απλό έως ένα σύνθετο. Κάποτε όλοι μας ξεκινήσαμε να γράφουμε προγράμματα και να μαθαίνουμε πως να τ' αναπτύσσαμε. Πόσες φορές όλοι μας δεν διαπιστώσαμε ότι ακολουθήσαμε κάτι λάθος γιατί δεν είχαμε τις σωστές βάσεις.
    Ο φίλος μας θέλει να αναπτύξει μία εφαρμογή και ζήτησε πληροφορίες σχετικά με strongly typed & untyped datasets, που για μένα είναι αλληλένδετα με objects κα. Αυτό που ήθελα ήταν να του δώσω, ήταν μια πιο ολοκληρωμένη απάντηση και μπούσουλα για να συνεχίσει.
    Τέλος πάντων, αν νομίζεται ότι η συνέχεια της συζήτησης δεν εμπίπτει στα ΠΡΩΤΑ ΒΗΜΑΤΑ (που για μένα είναι 1st steps in programming) μπορείτε να την μεταφέρεται όπου νομίζεται ότι ανήκει, αλλά θα ήθελα να συνεχιστεί.

    Φιλικά
    Ηλίας
  •  08-03-2009, 23:05 49021 σε απάντηση της 49018

    Απ: Strongly typed vs Untyped Datasets

    Αντιλαμβάνομαι ότι σε ενδιαφέρει πολύ το θέμα, ωστόσο (όπως είπα) έναν τελείως αρχάριο θα τον μπερδέψει αρκετά. Εξάλλου, αν αυτά που ρωτάς αποκτήσουν δικό τους thread θα τα δουν κι άλλοι που θα τους ενδιαφέρει αντίστοιχα. Δεν είπαμε ποτέ ότι αυτό είναι το τελευταίο thread περί data access αρχιτεκτονικής!

    Τώρα, κάτι δεν πάει καλά με το σπάσιμο γιατί κάθε φορά δεν παίρνει ολόκληρη την υπόλοιπη συζήτηση οπότε υπομονή μέχρι να τα συμμαζέψει ο Γιώργος και να μπουν σε μία.

     


    Vir prudens non contra ventum mingit
  •  23-03-2009, 19:20 49551 σε απάντηση της 49011

    Απ: Strongly typed vs Untyped Datasets

    Αυτά είναι κάποια links για μαθήματα ανάπτυξης εφαρμογής access με strongly type datasets.
    Μάθημα 1ο
    Μάθημα 2ο
    Μάθημα 3ο
    Μάθημα 4ο
    Μάθημα 5ο
    Μάθημα 6ο

    Στο 6ο μάθημα έχει ένα σχεδιάγραμμα του προγράμματος όπου εκεί βλέπουμε ότι έχει ένα GUI και ένα DAL/BLL. Μπορούν να ξεχωρίσουν το DAL με το  BLL; Και πως γίνεται αυτό;

    Ευχαριστώ

Προβολή Τροφοδοσίας RSS με μορφή XML
Με χρήση του Community Server (Commercial Edition), από την Telligent Systems