Στις αντικειμενοστρεφείς βάσεις δεδομένων (OODB), οι χρήστες μπορούν να ορίσουν λειτουργίες σε μια συγκεκριμένη βάση δεδομένων, η οποία αποτελείται από αντικείμενα που μπορούν να είναι μεγάλης ποικιλίας τύπων και για τα οποία έχουν οριστεί λειτουργίες. Μπορούν να χειριστούν αποτελεσματικά δυαδικές πληροφορίες, όπως αντικείμενα πολυμέσων. Ένα άλλο πρόσθετο πλεονέκτημα του OODB είναι ότι μπορεί να προγραμματιστεί με μικρές διαδικαστικές διαφορές χωρίς να επηρεάζεται ολόκληρο το σύστημα.
Προαπαιτούμενα για τη δημιουργία του προτύπου
Η ιστορία των αντικειμενοστρεφών βάσεων δεδομένων OODB ξεκινά στα τέλη του περασμένου αιώνα. Δημιουργήθηκαν για να καλύψουν τις ανάγκες νέων εφαρμογών. Η υπόθεση ήταν ότι οι αντικειμενοστρεφείς βάσεις δεδομένων θα έφεραν επανάσταση στα συστήματα λογισμικού κατά τη διάρκεια της δεκαετίας του 1990. Είναι πλέον σαφές ότι αυτό δεν ισχύει. Ωστόσο, η αναβίωση αυτής της έννοιας μέσω των κοινοτήτων ελεύθερου λογισμικού και ο εντοπισμός των κατάλληλων εφαρμογών για αυτό παρακινεί μια ανασκόπηση των χαρακτηριστικώνOODB, το οποίο είναι μια εναλλακτική λύση στις πανταχού παρούσες σχεσιακές βάσεις δεδομένων.
Το Το αντικειμενοστρεφές παρέχει την ευελιξία για τον χειρισμό ορισμένων ή όλων των απαιτήσεων και δεν περιορίζεται στους τύπους δεδομένων και τις γλώσσες ερωτημάτων των παραδοσιακών βάσεων δεδομένων. Ένα βασικό χαρακτηριστικό των OODB είναι η δυνατότητα που παρέχουν στον προγραμματιστή, επιτρέποντάς του να προσδιορίζει τόσο τη δομή των σύνθετων αντικειμένων όσο και τις λειτουργίες της εφαρμογής. Ένας άλλος λόγος για τη δημιουργία OODB είναι η αυξανόμενη χρήση γλωσσών για ανάπτυξη λογισμικού.
Οι βάσεις δεδομένων έχουν γίνει το θεμέλιο πολλών συστημάτων πληροφοριών, αλλά οι παραδοσιακές βάσεις δεδομένων είναι δύσκολο να χρησιμοποιηθούν όταν οι εφαρμογές που έχουν πρόσβαση σε αυτές είναι γραμμένες σε C++, Smalltalk ή Java. Για παράδειγμα, οι αντικειμενοστρεφείς βάσεις δεδομένων 1C σχεδιάστηκαν με τέτοιο τρόπο ώστε να μπορούν να ενσωματωθούν απευθείας με εφαρμογές που χρησιμοποιούν αντικειμενοστρεφείς γλώσσες υιοθετώντας τις έννοιές τους: Visual Studio. Net, C ++, C, Microsoft SQL Server και άλλα.
Το κύριο πλεονέκτημα του OODB είναι η πλήρης εξάλειψη της ανάγκης για RMs1 (σύνθετη αντίσταση) με επακόλουθες βελτιώσεις απόδοσης.
Ελαττώματα:
- Πολύ πρωτόγονοι μηχανισμοί διαβούλευσης, καμία αυτο-τυποποιημένη αποδεκτή πλατφόρμα.
- Δεν είναι δυνατή η αποθήκευση διαδικασιών επειδή η πρόσβαση σε αντικείμενα είναι δυνατή μόνο στον πελάτη.
- Αωριμότητα στην αγορά.
- Χωρίς φυσική ομαδοποίηση αντικειμένων.
Παράδειγμα αντικειμένου
Οι αντικειμενοστρεφείς βάσεις δεδομένων είναι προγραμματιζόμενες βάσεις δεδομένων που αποθηκεύουν σύνθετα δεδομένα και τις σχέσεις τους απευθείας χωρίς να εκχωρούν γραμμές και στήλες, καθιστώντας τις πιο κατάλληλες για εφαρμογές που λειτουργούν με μεγάλες παρτίδες. Τα αντικείμενα έχουν σχέσεις πολλά-προς-πολλά και είναι προσβάσιμα μέσω της χρήσης δεικτών που σχετίζονται με αυτά για τη δημιουργία σχέσεων. Όπως κάθε προγραμματιζόμενο, το OODB παρέχει ένα περιβάλλον ανάπτυξης εφαρμογών και ένα μόνιμο αποθετήριο έτοιμο για εκμετάλλευση. Αποθηκεύει και χειρίζεται πληροφορίες που μπορούν να ψηφιοποιηθούν με τη μορφή αντικειμένων, παρέχει γρήγορη πρόσβαση και παρέχει εξαιρετικές δυνατότητες επεξεργασίας.
Βασικές έννοιες που χρησιμοποιούνται σε μια αντικειμενοστραφή βάση δεδομένων:
- ταυτότητα αντικειμένου;
- τύπος κατασκευαστή;
- συμβατότητα γλώσσας;
- τύπος ιεραρχίες και κληρονομικότητα;
- επεξεργασία σύνθετων αντικειμένων;
- πολυμορφισμός και υπερφόρτωση χειριστή;
- δημιουργία εκδόσεων.
Για να ληφθούν πλήρως υπόψη όλες οι πτυχές που χαρακτηρίζουν μια αντικειμενοστραφή βάση δεδομένων, είναι σημαντικό να σημειωθούν όλα τα σημαντικά παραδείγματα αντικειμένων:
- Η ενθυλάκωση είναι μια ιδιότητα που σας επιτρέπει να αποκρύψετε πληροφορίες για άλλα αντικείμενα, αποτρέποντας έτσι λανθασμένη πρόσβαση ή διενέξεις.
- Η κληρονομικότητα είναι μια ιδιότητα με την οποία τα αντικείμενα κληρονομούν συμπεριφορά σε μια ιεραρχία κλάσης.
- Ο πολυμορφισμός είναι μια ιδιότητα μιας πράξης με την οποία μπορεί να εφαρμοστείδιαφορετικοί τύποι αντικειμένων.
- Η διεπαφή ή η υπογραφή μιας λειτουργίας περιλαμβάνει το όνομα και τους τύπους δεδομένων των ορισμάτων ή των παραμέτρων της.
- Η υλοποίηση ή η μέθοδος μιας λειτουργίας καθορίζεται ξεχωριστά και μπορεί να αλλάξει χωρίς να επηρεαστεί η διεπαφή. Οι εφαρμογές χρηστών μπορούν να λειτουργούν με δεδομένα καλώντας καθορισμένες λειτουργίες μέσω των ονομάτων και των ορισμάτων τους, ανεξάρτητα από τον τρόπο εφαρμογής τους.
Μαθήματα και λειτουργικότητα
Όταν εξετάζουμε την έννοια των κλάσεων στο OODB, είναι απαραίτητο να κάνουμε διάκριση μεταξύ των όρων "class" και "type". Ένας τύπος χρησιμοποιείται για να περιγράψει ένα σύνολο αντικειμένων με παρόμοια συμπεριφορά. Με αυτή την έννοια, εξαρτάται από το ποιες λειτουργίες μπορούν να κληθούν στο αντικείμενο. Μια κλάση είναι μια συλλογή αντικειμένων που μοιράζονται την ίδια εσωτερική δομή, επομένως ορίζει μια υλοποίηση, ενώ ένας τύπος περιγράφει τον τρόπο χρήσης της.
Ο όρος instantiation αναφέρεται στο γεγονός ότι η εγκατάσταση μιας κλάσης μπορεί να χρησιμοποιηθεί για την παραγωγή ενός συνόλου αντικειμένων που έχουν την ίδια δομή και συμπεριφορά όπως ορίζεται από την κλάση.
Ένα χαρακτηριστικό που είναι πολύ σημαντικό για την εξέλιξη των αντικειμένων είναι ότι μπορεί να αλλάξει την κλάση του, συμπεριλαμβανομένων των χαρακτηριστικών και των λειτουργιών, διατηρώντας ταυτόχρονα την ταυτότητα. Αυτό θα απαιτούσε έναν μηχανισμό για τον χειρισμό της σημασιολογικής ακεραιότητας που προκύπτει.
Η κληρονομικότητα της αντικειμενοστρεφούς βάσης δεδομένων ενός οργανισμού επιτρέπει τον ορισμό μιας κλάσης ως υποκλάσης μιας ήδη υπάρχουσας υπερκλάσης. Θα κληρονομήσει όλα τα χαρακτηριστικά και τις μεθόδους από το τελευταίο και μπορεί προαιρετικά να ορίσειτο δικό. Αυτή η ιδέα είναι ένας σημαντικός μηχανισμός για την υποστήριξη της επαναχρησιμοποίησης. Τα ίδια μέρη της δομής δύο διαφορετικών κλάσεων μπορούν να οριστούν μόνο μία φορά σε μια κοινή υπερκλάση, επομένως θα γραφτεί λιγότερος κώδικας. Υπάρχουν ορισμένα συστήματα που επιτρέπουν σε μια κλάση να είναι υποκατηγορία περισσότερων από μία υπερκλάσεων. Αυτό το χαρακτηριστικό ονομάζεται πολλαπλή κληρονομικότητα σε αντίθεση με μεμονωμένη κληρονομικότητα.
Παράδειγμα αντικειμενοστρεφούς βάσης δεδομένων
Συχνά είναι χρήσιμο να χρησιμοποιείτε το ίδιο όνομα για διαφορετικές αλλά παρόμοιες μεθόδους της υπερκλάσης πολυμέσων από τις κλάσεις εικόνας και βίντεο. Πολλά αρχεία μπορούν να προβληθούν από διαφορετικούς θεατές. Συχνά χρειάζεται να δουν όλες τις φωτογραφίες και τα βίντεο χρησιμοποιώντας τη μέθοδο "προβολή" και πρέπει να ξεκινήσει το κατάλληλο πρόγραμμα. Όταν καλείται η λειτουργία και μεταβιβάζεται ένας σύνδεσμος προς το βίντεο, εκκινείται το πρόγραμμα αναπαραγωγής πολυμέσων. Για την εφαρμογή αυτής της δυνατότητας, πρώτα απ 'όλα, είναι απαραίτητο να ορίσετε τη λειτουργία "παρουσίασης" στην υπερκλάση κοινών μέσων από τις κλάσεις εικόνας και βίντεο. Κάθε μία από τις υποκατηγορίες επαναπροσδιορίζει τη λειτουργία αναζήτησης για τις συγκεκριμένες ανάγκες της. Αυτό έχει ως αποτέλεσμα διαφορετικές μεθόδους που έχουν το ίδιο όνομα λειτουργίας. Σε αυτήν την περίπτωση, η χρήση αυτής της συνάρτησης έχει ένα σημαντικό πλεονέκτημα.
Δομή OODB
Το αντικειμενοστρεφές παράδειγμα βασίζεται στην ενθυλάκωση δεδομένων και κώδικα που σχετίζονται με κάθε αντικείμενο σε μία ενότητα. Εννοιολογικά, όλες οι αλληλεπιδράσεις μεταξύ αυτού και του υπόλοιπου συστήματος πραγματοποιούνται χρησιμοποιώντας μηνύματα. Εξ ου και η διεπαφήμεταξύ τους καθορίζεται από το επιτρεπόμενο σύνολο.
Γενικά, κάθε αντικείμενο σχετίζεται με ένα σύνολο:
- Μεταβλητές που περιέχουν δεδομένα αντικειμένων και αντιστοιχούν σε χαρακτηριστικά μοντέλου ER.
- Μηνύματα στα οποία απαντά. Κάθε μία μπορεί να έχει ή να μην έχει παραμέτρους, μία ή περισσότερες.
- Μέθοδοι, καθεμία από τις οποίες είναι ένας κώδικας που υλοποιεί μηνύματα και επιστρέφει μια τιμή ως απόκριση σε αυτά.
Η ανταλλαγή μηνυμάτων σε περιβάλλον OO δεν συνεπάγεται τη χρήση φυσικών SMS σε δίκτυα υπολογιστών. Αντίθετα, αναφέρεται στην ανταλλαγή αιτημάτων μεταξύ αντικειμένων, ανεξάρτητα από τις σωστές λεπτομέρειες εφαρμογής τους. Μερικές φορές μια έκφραση καλεί μια μέθοδο για να ενεργοποιήσει το γεγονός ότι ένα μήνυμα έχει σταλεί σε ένα αντικείμενο και χρησιμοποιεί την εκτέλεση της αντίστοιχης μεθόδου.
Ταυτότητα αντικειμένου
Το αντικειμενοστραφή σύστημα βάσης δεδομένων παρέχει μια μοναδική αναγνώριση για κάθε ανεξάρτητο αντικείμενο που είναι αποθηκευμένο στη βάση δεδομένων. Συνήθως υλοποιείται χρησιμοποιώντας ένα μοναδικό αναγνωριστικό αντικειμένου ή OID που δημιουργείται από το σύστημα. Η τιμή OID είναι αόρατη στον εξωτερικό χρήστη, αλλά το σύστημα τη χρησιμοποιεί εσωτερικά για να διαχειρίζεται συνδέσμους μεταξύ αντικειμένων.
Η κύρια ιδιότητα ενός OID είναι να είναι αμετάβλητο. Η τιμή OID για ένα συγκεκριμένο αντικείμενο δεν πρέπει ποτέ να αλλάξει. Αυτό διατηρεί την ταυτότητα του πραγματικού κόσμου που αντιπροσωπεύεται. Προτιμάται επίσης κάθε OID να χρησιμοποιείται μόνο μία φορά, ακόμα κι αν αφαιρεθεί από τη βάση δεδομένων, το OID του δεν πρέπει να εκχωρηθεί σε άλλο. Επίσης, συχνά θεωρείται ακατάλληλο να το βασίσουμε σε φυσικήτη διεύθυνση του αντικειμένου στην αποθήκευση, καθώς η αναδιοργάνωσή τους στη βάση δεδομένων μπορεί να αλλάξει το OID. Ωστόσο, ορισμένα συστήματα χρησιμοποιούν τη φυσική διεύθυνση ως OID για να αυξήσουν την αποτελεσματικότητα της ανάκτησης αντικειμένων. Ένα αντικειμενοστρεφές πλαίσιο επιβάλλει αυτόματα σχεσιακούς περιορισμούς, συνήθως πιο εφαρμόσιμους: τομέας, κλειδί, ακεραιότητα αντικειμένου και ακεραιότητα αναφοράς.
Τρεις κύριοι κατασκευαστές
Στο OODB, τιμές ή καταστάσεις σύνθετων αντικειμένων μπορούν να δημιουργηθούν από άλλα χρησιμοποιώντας κατασκευαστές ορισμένων τύπων. Ένας τρόπος για να τα αναπαραστήσουμε είναι να σκεφτούμε το καθένα ως μια τριάδα (i, c, v), όπου i είναι το μοναδικό αναγνωριστικό του αντικειμένου (OID), c είναι ο κατασκευαστής, δηλαδή ένας δείκτης για το πώς είναι η τιμή του αντικειμένου δημιουργήθηκε και v είναι η τιμή ή η κατάσταση του αντικειμένου. Μπορεί να υπάρχουν πολλοί κατασκευαστές ανάλογα με το μοντέλο δεδομένων και το σύστημα OO.
Τρεις βασικοί αντικειμενοστρεφείς κατασκευαστές βάσεων δεδομένων:
- atoms;
- tuples;
- σετ.
Άλλες πιο συνηθισμένες χρήσεις είναι οι λίστες και τα γραφήματα. Υπάρχει επίσης ο τομέας D, ο οποίος περιέχει όλες τις βασικές ατομικές τιμές που είναι άμεσα διαθέσιμες στο σύστημα. Συνήθως περιλαμβάνουν ακέραιους, πραγματικούς αριθμούς, συμβολοσειρές χαρακτήρων, ημερομηνίες και οποιονδήποτε άλλο τύπο δεδομένων που χειρίζεται απευθείας το σύστημα. Τόσο η δομή των αντικειμένων όσο και οι πράξεις περιλαμβάνονται στους ορισμούς κλάσεων.
Συμβατότητα με γλώσσες προγραμματισμού
Οι βασικές έννοιες των αντικειμενοστρεφών βάσεων δεδομένων χρησιμοποιούνται σεως εργαλεία σχεδιασμού και κωδικοποιημένα για να λειτουργούν με τη βάση δεδομένων.
Υπάρχουν πολλές πιθανές γλώσσες στις οποίες μπορούν να ενσωματωθούν αυτές οι έννοιες:
- Επέκταση μιας γλώσσας για επεξεργασία δεδομένων, όπως η SQL, προσθέτοντας σύνθετους τύπους και OOP. Τα συστήματα παρέχουν αντικειμενοστρεφείς επεκτάσεις σε σχεσιακά συστήματα, που ονομάζονται αντικειμενοστραφή σχεσιακά συστήματα.
- Χρήση μιας υπάρχουσας αντικειμενοστρεφούς γλώσσας προγραμματισμού και επέκταση της για εργασία με βάσεις δεδομένων. Ονομάζονται επίμονες γλώσσες προγραμματισμού και επιτρέπουν στους προγραμματιστές να εργάζονται απευθείας με δεδομένα χωρίς να χρειάζεται να περάσουν από μια γλώσσα επεξεργασίας δεδομένων όπως η SQL. Ονομάζονται μόνιμα επειδή τα δεδομένα συνεχίζουν να υπάρχουν μετά το τέλος του προγράμματος που τα δημιούργησε.
Όταν αποφασίζετε ποια επιλογή θα χρησιμοποιήσετε, να έχετε κατά νου ότι οι επίμονες γλώσσες τείνουν να είναι ισχυρές και είναι σχετικά εύκολο να κάνετε λάθη προγραμματισμού που βλάπτουν τη βάση δεδομένων. Η πολυπλοκότητα των γλωσσών δυσκολεύει τις αυτόματες βελτιστοποιήσεις υψηλού επιπέδου, όπως η μείωση της εισόδου/εξόδου του δίσκου. Σε πολλές εφαρμογές, η δυνατότητα δημιουργίας δηλωτικών ερωτημάτων είναι σημαντική, αλλά οι επίμονες γλώσσες επί του παρόντος δεν επιτρέπουν τέτοια ερωτήματα χωρίς προβλήματα.
Ιεραρχία τύπων κληρονομικότητας
Τα σχήματα βάσεων δεδομένων αντικειμενοστρεφή απαιτούν συνήθως μεγάλο αριθμό κλάσεων. Ωστόσο, πολλές κλάσεις είναι παρόμοιες μεταξύ τους. Για να επιτρέψετε μια άμεση αναπαράσταση των ομοιοτήτων μεταξύ τους, πρέπει να βάλετεσε μια ιεραρχία ειδικοτήτων. Αυτή η ιδέα είναι παρόμοια με τα μοντέλα ER. Οι εξειδικεύσεις κλάσεων ονομάζονται υποκλάσεις, οι οποίες ορίζουν πρόσθετα χαρακτηριστικά και μεθόδους για μια υπάρχουσα κλάση. Τα αντικείμενα που δημιουργούνται με υποκλάσεις κληρονομούν τα πάντα από τον γονέα. Μερικά από αυτά τα κληρονομικά χαρακτηριστικά μπορεί να έχουν δανειστεί από άτομα που βρίσκονται υψηλότερα στην ιεραρχία.
Τα αντικείμενα θεωρούνται πολύπλοκα επειδή απαιτούν μεγάλο χώρο αποθήκευσης και δεν αποτελούν μέρος των τυπικών τύπων δεδομένων που συνήθως προσφέρει η Αντικειμενοστραφής Βάση Δεδομένων (OODBS). Επειδή το μέγεθος των αντικειμένων είναι σημαντικό, το SOOBMS μπορεί να λάβει ένα τμήμα ενός αντικειμένου και να το παρέχει σε μια εφαρμογή πριν αποκτήσει ολόκληρο το αντικείμενο. Μπορεί επίσης να χρησιμοποιήσει μεθόδους buffer και cache για να λάβει τμήματα ενός αντικειμένου εκ των προτέρων, προτού μια εφαρμογή έχει πρόσβαση σε αυτά.
Το OODB επιτρέπει στους χρήστες να δημιουργούν νέους τύπους που περιλαμβάνουν δομή και λειτουργίες, σε αυτήν την περίπτωση το σύστημα επεκτάσιμου τύπου. Μπορείτε να δημιουργήσετε βιβλιοθήκες νέων τύπων ορίζοντας τη δομή και τις λειτουργίες τους. Πολλά από αυτά μπορούν να αποθηκεύσουν και να λάβουν ένα μεγάλο δομημένο αντικείμενο με τη μορφή συμβολοσειρών και χαρακτήρων ή bit, τα οποία μεταβιβάζονται "ως έχουν" στο πρόγραμμα εφαρμογής για ερμηνεία.
Η μέθοδος μπορεί να αποκτήσει απευθείας πρόσβαση στα χαρακτηριστικά του αντικειμένου στόχου με το όνομα, συμπεριλαμβανομένων τυχόν κληρονομημένων από γονικές κλάσεις, αλλά πρέπει να έχει πρόσβαση σε χαρακτηριστικά άλλων αντικειμένων με δευτερεύοντα σήματα. Η ιδέα σάς επιτρέπει να συσχετίσετε το ίδιο όνομα ή σύμβολο χειριστή μεδύο ή περισσότερες διαφορετικές υλοποιήσεις του, ανάλογα με τον τύπο των αντικειμένων στα οποία εφαρμόζεται.
Δημιουργία εφαρμογών
Πολλές εφαρμογές βάσης δεδομένων που χρησιμοποιούν συστήματα OO απαιτούν πολλαπλές εκδόσεις του ίδιου αντικειμένου. Συνήθως, οι δραστηριότητες συντήρησης εφαρμόζονται σε ένα σύστημα λογισμικού καθώς αλλάζουν οι απαιτήσεις τους και περιλαμβάνει την αλλαγή ορισμένων από τις ενότητες ανάπτυξης και υλοποίησης. Εάν το σύστημα εκτελείται ήδη και εάν μία ή περισσότερες λειτουργικές μονάδες πρέπει να αλλάξει, ο προγραμματιστής πρέπει να δημιουργήσει μια νέα έκδοση καθεμιάς από αυτές κάνοντας αλλαγές.
Σημειώστε ότι μπορεί να υπάρχουν περισσότερες από δύο εκδόσεις ενός αντικειμένου, σε περίπτωση που απαιτούνται δύο επιπλέον της αρχικής ενότητας. Οι δικές σας εκδόσεις της ίδιας μονάδας λογισμικού μπορούν να ενημερώνονται ταυτόχρονα. Αυτό ονομάζεται παράλληλος αντικειμενοστραφής σχεδιασμός βάσης δεδομένων. Ωστόσο, υπάρχει πάντα ένα σημείο όπου πρέπει να συγχωνευθούν προκειμένου το υβριδικό OODB να ενσωματώσει τις αλλαγές που έχουν γίνει ώστε να είναι συμβατές.
Αντικειμενοστρεφείς συνθήκες
Όλα τα συστήματα υπολογιστών πρέπει να έχουν ιδιότητες της αρχιτεκτονικής τους για να ληφθούν υπόψη. Για παράδειγμα, ένα σύστημα πρέπει να έχει πίνακες για να θεωρείται σχεσιακό. Το OODB δεν αποτελεί εξαίρεση και περιέχει ορισμένες βασικές ιδιότητες της αρχιτεκτονικής αντικειμένων. Ωστόσο, στον πραγματικό κόσμο, πολλές από αυτές τις ιδιότητες συζητούνται και ορισμένες, όπως η πολλαπλή κληρονομικότητα, θεωρούνται βελτιώσεις στο μοντέλο βάσης δεδομένων αντικειμενοστρεφούς και όχιως μέρος της βασικής γραμμής. Για παράδειγμα, στην αντικειμενοστραφή γλώσσα Smalltalk, η πολλαπλή κληρονομικότητα δεν υποστηρίζεται, παρόλο που θεωρείται μέρος της αρχιτεκτονικής αντικειμένων.
Μέθοδοι για μια κλάση ορίζουν ένα σύνολο πράξεων που μπορούν να εκτελεστούν σε ένα αντικείμενο. Για παράδειγμα, όταν εφαρμόζεται σε ένα αντικείμενο, είτε επιστρέφει μια τιμή είτε εκτελεί κάποια λειτουργία για να ενημερώσει τις τιμές. Μερικές φορές οι μέθοδοι δεν το επιστρέφουν. Εάν η μέθοδος είχε σχεδιαστεί για να ενημερώνει τον αριθμό των επιβατών για ένα όχημα, δεν θα επιστρεφόταν καμία τιμή, αλλά το στοιχείο δεδομένων στον στόχο θα την άλλαζε.
Τα αντικείμενα είναι μια θεμελιώδης έννοια στο OODB. Ουσιαστικά, τα αντικείμενα είναι μια αφηρημένη αναπαράσταση των πραγμάτων του πραγματικού κόσμου που είναι αποθηκευμένα σε αυτό. Ένα αντικείμενο είναι μια παρουσία μιας κλάσης με την έννοια ότι εξαιρείται από τον ορισμό της.
Μπορείτε να σκεφτείτε ένα αντικείμενο ως ένα αυτόνομο πακέτο που αποτελείται από τρία μέρη:
- Διαθέτετε προσωπικά στοιχεία, τιμές δεδομένων.
- Ιδιωτικές διαδικασίες που θα χειριστούν τις τιμές μέσω του ορισμού της κλάσης.
- Άνοιγμα διεπαφής ώστε αυτό το αντικείμενο να μπορεί να επικοινωνεί με άλλα.
Παραδείγματα OODB
Η χρήση του OODB απλοποιεί τη σύλληψη, επειδή είναι πιο φυσικό να αναπαραστήσετε τις πληροφορίες που πρέπει να αποθηκευτούν. Για να μοντελοποιήσετε τη δομή ή τη λογική μιας βάσης δεδομένων, η χρήση διαγραμμάτων κλάσεων σας επιτρέπει να εισάγετε κλάσεις με τις δομικές σχέσεις και την κληρονομιά τους. Προκειμένου να μοντελοποιηθεί μέρος της δυναμικής, της αλληλεπίδρασης καισυμπεριφορά μεταξύ αντικειμένων, θα χρησιμοποιηθεί ένα διάγραμμα ακολουθίας για να αναπαραστήσει την αλληλεπίδραση μεταξύ αντικειμένων που βρίσκονται σε μια προσωρινή σχέση, περιγράφοντας τις πιθανές καταστάσεις έτσι ώστε να μπορούν να βρεθούν δεδομένης της αλλαγμένης κατάστασης μετά την εμφάνιση του συμβάντος.
Ένα παράδειγμα αντικειμενοστρεφούς βάσης δεδομένων φαίνεται παρακάτω.
Έχουν ένα όνομα και μια ζωή, που μπορεί να είναι προσωρινή ή μόνιμη. Το κλειδί OODB είναι η δυνατότητα που παρέχουν στον προγραμματιστή να καθορίσει πόσες δομές και λειτουργίες θα εφαρμοστούν σε αυτούς. Υπάρχει ευελιξία και υποστήριξη για το χειρισμό πολύπλοκων τύπων δεδομένων. Μπορείτε να δημιουργήσετε κλάσεις και υποκλάσεις, για παράδειγμα, η βάση πελατών μπορεί να έχει μια υποκλάση του συνδέσμου αυτού του πελάτη και θα κληρονομήσει όλα τα χαρακτηριστικά και τα χαρακτηριστικά της αρχικής κλάσης. Αυτή η προσέγγιση σάς επιτρέπει να επεξεργάζεστε γρήγορα και ευέλικτα πολύπλοκα δεδομένα.