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

 

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

nHibernate resources

Îåêßíçóå áðü ôï ìÝëïò cap. Τελευταία δημοσίευση από το μέλος cap στις 08-02-2005, 11:00. Υπάρχουν 20 απαντήσεις.
Σελίδα 2 από 2 (21 εγγραφές)   < 1 2
Ταξινόμηση Δημοσιεύσεων: Προηγούμενο Επόμενο
  •  04-02-2005, 15:23 1109 σε απάντηση της 1108

    Re: nHibernate resources

    Λοιπον...αν και δεν εχω μπει σε βάθος, επειδή ακούω οτι κάποιοι από εσάς έχουν ξεκινήσει evaluation, ας μου πούν το εξής:

    Η γενική ιδέα είναι να έχω ένα δέντρο κατηγοριών - υποκατηγοριών, απεριόριστου βάθους, με custom ordering.

    Αυτό έχει μοντελοποιηθεί πολύ συνοπτικά στους εξής πινακες:
    1. Category
    (id, cgname)
    2. CategoryRelation
    (id, parentcategory, childcategory, orderno) - το ID για λόγους συνάφειας - θα μπορούσε να έχει composite pk τα parentcategory-childcategory, αλλα εκεί προτίμησα να έχω ένα unique index μονο.

    Ειδικότερα, αυτό είναι ένα μοντέλο many-to-many σχέσης μεταξύ instances του ίδιου type. Κάθε κατηγορία επιτρέπεται να έχει πολλαπλούς μπαμπάδες, κάθε μπαμπάς έχει πολλά παιδιά και υπάρχει ordering στη σχέση των παιδιών με το μπαμπα. Για να το κάνουμε πιο απλό, ας υποθέσουμε οτι υπάρχει μόνο ένα root.

    Πως μπορώ να το μοντελοποιήσω αυτό με το nHibernate? Οκ, χωρίς ordering είναι προφανώς πιό εύκολο. Αλλα με ordering? Θα πρέπει να έχω views? Πείτε μου ιδέες.


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

    DotSee Web Services

    View Sotiris Filippidis's profile on LinkedIn

    DotNetNuke them!
  •  04-02-2005, 16:30 1110 σε απάντηση της 1108

    Re: nHibernate resources

     gcapnias wrote:

    Προσωπικά γελάω... Big Smile Πιστεύω ότι ο Μάνος σας την έχει στημένη!



    Οχι ρε! Οι προθέσεις μου είναι αγαθές...


    Vir prudens non contra ventum mingit
  •  04-02-2005, 18:53 1111 σε απάντηση της 1110

    Re: nHibernate resources

    Λοιπόν για να σου πω πριν σου πουν: (Σήμερα είναι μία από τις μέρες του μήνα που τρώγομαι με τον ευατό μου και δεν έχω τι να κάνω και διαβάζω ότι βρεθεί μπροστά μου...)

    Σύμφωνα με την θεωρία του Hibernate είναι καλύτερο να έχει ένα υψηλό έλεγχο των transactions και να αφήνει στην κάθε βάση τον απόλυτο έλεγχο του transaction μέσα από το JDBC. Στο .NET port χρησιμοποιεί το ADO.NET Connection Τransaction και έτσι μπορεί πιο εύκολα να χρησιμοποιήσει περισσότερες βάσεις/server δεδομένων.

    Ακόμα διάβασα - στο Java documentation γιατί δεν υπάρχει έτοιμο το αντίστοιχο σε .NET - ότι έχει τη δυνάτοτητα να χρησιμοποιήσει JTA (Java Transacrtion API, specifies standard Java interfaces between a transaction manager and the parties involved in a distributed transaction system: the resource manager, the application server, and the transactional applications), κάτι αντίστοιχο από όσα κατάλαβα του DTC, για να κάνει manage τα transactions του. Δηλαδή υπάρχει μια πολύ καλή πιθανότητα να κάνει το αντοίστοιχο και στην .NET έκδοσή του, να χρησιμοποιεί το DTC, χωρίς να μπορεί να ταυτοποιηθεί από το documentation. Αυτά για τα transactions.

    Από τα παραπάνω μάλλον δεν έχει κάποιο μηχανισμό για update/versioning κοκ απλά φτιάχνει SQL statements για να τα ρίχνει μέσα στην βάση από το Connection που έχει. Και κάπου είδα ότι όλα τα λάθη του ADO.NET βγαίνουν επάνω και φαίνονται μια χαρά για να μπορείς να τακάνεις ότι θέλεις... Smile

    George J.



    George J. Capnias: Χειροπρακτικός Υπολογιστών, Ύψιστος Γκουράρχης της Κουμπουτερολογίας
    w: capnias.org, t: @gcapnias, l: gr.linkedin.com/in/gcapnias
    dotNETZone.gr News
  •  04-02-2005, 20:28 1112 σε απάντηση της 1108

    Re: nHibernate resources

     gcapnias wrote:

    Προσωπικά γελάω... Big Smile Πιστεύω ότι ο Μάνος σας την έχει στημένη!

    Αυτό που αναφέρεις μιλάει για το αρχικό project και αυτό είναι σε Java. Δεν μπορεί να χρησιμοποιεί τα ιδιαίτερα χαρακτηριστικά του .NET και ούτε να λεει τι χρησιμοποιεί σε σχέση με αυτά που λέμε εμείς...

    Big Smile

    Γιώργος %)



    Το Nhibenrate είναι σε beta ακόμη (το είδες και εσύ) και το documentation είναι ημιτελές. Το port βασίζεται στην έκδοση v2.0.3 και όχι στην τελευταία v2.1.7 που υπάρχει στο site του Hibernate.
    Σε σχέση με το .ΝΕΤ πράγματι χρησιμοποιεί ADO.NET Connection Transaction.
    Από όσο έχω καταλάβει το NHibernate δεν είναι σε θέση να καταλάβει τις αλλαγές σε μια database που δεν περνάνε μέσα από το session, όπως stored procedures και updates από άλλα sessions. Τώρα σε σχέση με το versioning μάλλον κάτι δεν κατάλαβα αλλά το ψάχνω.. Smile

    Nikos Κ.
    ALT.NET
  •  04-02-2005, 21:15 1113 σε απάντηση της 1112

    Re: nHibernate resources

    Σοβαρά τώρα από το ψάξε, ψάξε και το διάβαζε, διάβαζε, δεν μπορώ να μοιραστώ μαζί σας, τον ενθουσιασμό σας.

    Ισως γιατί έχω δει και έχω φτιάξει παρόμοιους μηχανισμούς και δεν με ενθουσιάζει ποια η ιδέα του O/R; Γιατί πλέον μόνο όταν θα μπορεί να παράγει και interface και Web Forms και Windows Forms, με κοινό το backend κώδικα θα με συγκινήσει να σω κάτι καινούργιο;

    Πραγματικά αυτό που είπε ο Μάνος ότι το disconnected μοντέλο είναι αυτό που προβληματίζει τους νέους στο .NET, είναι αλήθεια. Είχαμε το χρόνο με το Μάνο να τα πούμε για το ADO.NET κατά την διάρκεια ενός σεμιναρίου. Δεν υπάρχει σχετική εμπειρία επάνω στην χρήση των Dataset και του ADO.NET γενικότερα. Αν δεν σταθεροποιηθεί η τεχνολογία, παρόμοια όπως έγινε με την DNA αρχιτεκτονική για κάμποσα χρόνια, δεν θα αλλάξει η κατάσταση.

    Πιστεύω ότι η λάθος προσέγγιση στην λύση του data layer είναι καθαρά σε αυτούς που την σκέφτονται. Αν προσπαθήσεις να στήσεις μια λύση πάνω σε Dataset σε OLTP βάση με όγκο δεδομένων και να έχεις ταχύτητα, έχεις χάσει.

    Αν από την άλλη μεριά, μιλάμε για ένα SmartPhone ή ένα Pocket PC δεν υπάρχει καλύτερο πράγμα από το dataset.

    Σε Web Applications, η χρήση οτιδήποτε άλλου από xml files με data, χωρίς να cacheάρονται, επιφέρουν μείωση της ταχύτητας. (Μην αρχίσω πάλι να παραμιλάω για ... προγραμματιστές που αφήνουν 20Κb state data πάνω σε .aspx σελίδα! Angry)
    George J. Capnias: Χειροπρακτικός Υπολογιστών, Ύψιστος Γκουράρχης της Κουμπουτερολογίας
    w: capnias.org, t: @gcapnias, l: gr.linkedin.com/in/gcapnias
    dotNETZone.gr News
  •  08-02-2005, 11:00 1139 σε απάντηση της 1113

    Re: nHibernate resources

     gcapnias wrote:

    Ισως γιατί έχω δει και έχω φτιάξει παρόμοιους μηχανισμούς και δεν με ενθουσιάζει ποια η ιδέα του O/R; Γιατί πλέον μόνο όταν θα μπορεί να παράγει και interface και Web Forms και Windows Forms, με κοινό το backend κώδικα θα με συγκινήσει να σω κάτι καινούργιο;


    Γιώργο δεν μπορώ να πω οτι έχεις άδικο. Μιλώντας όμως αυστηρά για persistence frameworks και όχι για generators, πιστεύω οτι ο σκοπός ενός τέτοιου framework είναι να σου παρέχει το συγκεκριμένο layer, και όχι όλη την εφαρμογή. Εξάλλου για ολόκληρη την εφαρμογή υπάρχει (αν και δεν το έχω δοκιμάσει) το CodeCharge μεταξύ άλλων.

    Προσωπικά θα ήθελα να δώ ένα meta-framework το οποίο να συνδυάζει διαφορετικά μεταξύ τους frameworks για την παραγωγή εφαρμογών. Π.χ. ένα MyGeneration που να χρησιμοποιεί nHibernate (ΟΧΙ μονο τα templates που χρησιμοποιεί αυτή τη στιγμή για να φτιάχνει τα .hbm αρχεία) ή MSDAAB και όχι το δικό του persistence.


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

    DotSee Web Services

    View Sotiris Filippidis's profile on LinkedIn

    DotNetNuke them!
Σελίδα 2 από 2 (21 εγγραφές)   < 1 2
Προβολή Τροφοδοσίας RSS με μορφή XML
Με χρήση του Community Server (Commercial Edition), από την Telligent Systems