Υποδείγματα Ανάπτυξης

Σχετικά έγγραφα
Πίνακας Περιεχομένων. μέρος A 1 Εισαγωγή στην Τεχνολογία Λογισμικού

Κεφάλαιο 2ο. Κατανοώντας την αντικειμενοστρέφεια

ΑΝΑΛΥΣΗ ΑΠΑΙΤΗΣΕΩΝ ανάλυση απαιτήσεων Σε αυτό το μάθημα θα ασχοληθούμε με : Δημιουργία μοντέλων

Εισαγωγή στη Σχεδίαση Λογισμικού

ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΗΣ ΑΝΑΛΥΣΗ Επιχειρηματική Μοντελοποίηση. Ιωάννης Σταμέλος Βάιος Κολοφωτιάς Πληροφορική

περιεχόμενα παρουσίασης

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ

ΠΛΗΡΟΦΟΡΙΚΗ Γ ΤΑΞΗΣ ΓΕΛ ΚΛΕΙΩ ΣΓΟΥΡΟΠΟΥΛΟΥ. ΣΥΓΧΡΟΝΑ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΑ ΠΕΡΙΒΑΛΛΟΝΤΑ Αντικειμενοστραφής Προγραμματισμός

Περιεχόμενο του μαθήματος

Ελληνικό Ανοικτό Πανεπιστήµιο. Βασικές έννοιες αντικειµενοστρεφούς τεχνολογίας. ρ. Πάνος Φιτσιλής

ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Ι

Ανάλυση Περιπτώσεων Χρήσης

Πληροφοριακά Συστήματα Διοίκησης Ενότητα 1: Βασικές Αρχές Αντικειμενοστραφούς Σχεδίασης Συστημάτων και Εφαρμογών (1ο Μέρος)

ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΗΣ ΑΝΑΛΥΣΗ Διαγράμματα Συνεργασίας. Ιωάννης Σταμέλος Βάιος Κολοφωτιάς Πληροφορική

ΚΥΚΛΟΣ ΖΩΗΣ ΛΟΓΙΣΜΙΚΟΥ και ΔΙΑΓΡΑΜΜΑΤΑ ΡΟΗΣ ΔΕΔΟΜΕΝΩΝ

Αντικειμενοστρεφής Προγραμματισμός

Τεχνολογία Λογισμικού. Ενότητα 1: Εισαγωγή στην UML Καθηγητής Εφαρμογών Ηλίας Γουνόπουλος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά)

ΥΠΟΛΟΓΙΣΤΙΚΕΣ ΤΕΧΝΙΚΕΣ ΓΙΑ ΣΥΣΤΗΜΑΤΑ ΜΕΤΑΔΟΣΗΣ ΠΛΗΡΟΦΟΡΙΑΣ

Διαγράμματα Κλάσεων στη Σχεδίαση

Βάσεις Δεδομένων Ι. 4 ο Φροντιστήριο. Πέρδικα Πολίνα [perdika]

Περιεχόμενο του μαθήματος

Εργαστήριο Τεχνολογίας Λογισμικού και Ανάλυσης Συστημάτων - 8 ο & 9 ο Εργαστήριο -

11/5/2015. Οι επιχειρήσεις

ΔΟΜΙΚΗ ΜΟΝΤΕΛΟΠΟΙΗΣΗ ΚΑΙ ΜΟΝΤΕΛΟΠΟΙΗΣΗ ΣΥΜΠΕΡΙΦΟΡΑΣ (9)

περιεχόμενα παρουσίασης Actors Σενάρια Περιεχόμενο περιπτώσεων χρήσης Πρότυπα περιπτώσεων χρήσης Διαγράμματα περιπτώσεων χρήσης

Διαγράμματα UML στην Ανάλυση. Μέρος Γ Διαγράμματα Επικοινωνίας Διαγράμματα Ακολουθίας Διαγράμματα Μηχανής Καταστάσεων

Παιδαγωγικές δραστηριότητες μοντελοποίησης με χρήση ανοικτών υπολογιστικών περιβαλλόντων

ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΗΣ ΑΝΑΛΥΣΗ Πρότυπα Σχεδίασης. Ιωάννης Σταμέλος Βάιος Κολοφωτιάς Πληροφορική

Απαιτήσεις Λογισμικού

ΠΡΟΓΡΑΜΜΑ ΣΠΟΥΔΩΝ ΠΛΗΡΟΦΟΡΙΚΗ, Γ ΤΑΞΗ ΓΕΝΙΚΟΥ ΛΥΚΕΙΟΥ

Μοντελοποίηση Πεδίου

Κεφάλαιο 6 ο Εισαγωγή στον Προγραμματισμό 1

ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΗΣ ΑΝΑΛΥΣΗ Εισαγωγή. Ιωάννης Σταμέλος Βάιος Κολοφωτιάς Πληροφορική

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ Π ΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ Π ΕΡΙΒΑΛΛΟΝ

Διαγράμματα UML στην Ανάλυση. Μέρος Β Διαγράμματα Κλάσεων Διαγράμματα Αντικειμένων

Τεχνολογία Λογισμικού

Εισαγωγή στα Πληροφοριακά Συστήματα

Προσομοίωση Συστημάτων

ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Ι

Σχεδιασµός βασισµένος σε συνιστώσες

Πληροφορική ΙΙ Εισαγωγή στις Βάσεις Δεδομένων. Τμήμα Λογιστικής

Μοντέλα Οντοτήτων Συσχετίσεων 2

Αντικειμενοστρέφεια. Henri Matisse, Harmony in Red, Κωστής Σαγώνας Νίκος Παπασπύρου

Μοντελοποίηση δεδομένων με UML Χρήση σε πολυμεσικές εφαρμογές

ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΗΣ ΑΝΑΛΥΣΗ Διαγράμματα Αλληλεπίδρασης. Ιωάννης Σταμέλος Βάιος Κολοφωτιάς Πληροφορική

Σκοπός του μαθήματος

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ

2.1 Αντικειµενοστρεφής προγραµµατισµός

FORTRAN & Αντικειμενοστραφής Προγραμματισμός ΣΝΜΜ 2016

ΕΙΣΑΓΩΓΗ ΣΤΗΝ UML ΜΟΝΤΕΛΟΠΟΙΗΣΗ ΕΠΙΧΕΙΡΗΜΑΤΙΚΩΝ ΔΙΑΔΙΚΑΣΙΩΝ (ΔΙΑΓΡΑΜΜΑΤΑ ΔΡΑΣΤΗΡΙΟΤΗΤΩΝ & ΠΕΡΙΠΤΩΣΕΩΝ ΧΡΗΣΗΣ) (7-8)

Κλάσεις και Αντικείµενα

Ανάπτυξη & Σχεδίαση Λογισμικού (ΗΥ420)

Κανόνες για ανάπτυξη διαγραµµάτων κλάσεων

Κεφάλαιο 2.3: Προγραμματισμός. Επιστήμη ΗΥ Κεφ. 2.3 Καραμαούνας Πολύκαρπος

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ

Λειτουργικά. Τεχνολογικό Εκπαιδευτικό Ίδρυμα Δυτικής Μακεδονίας Σιώζιος Κων/νος - Πληροφορική Ι

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ

ΑΡΦΕ ΑΝΣΙΚΕΙΜΕΝΟΣΡΕΥΟΤ ΠΡΟΓΡΑΜΜΑΣΙΜΟΤ. Ιωάννης Φατζηλυγερούδης Αναπληρωτής Καθηγητής Τμήμα Μηχ/κών Η/Υ και Πληροφορικής Πανεπιστήμιο Πατρών

Τεχνολογία Λογισμικού & Ανάλυση Συστημάτων

ΠΟΛΥΜΟΡΦΙΣΜΟΣ. 4.1 Κληρονομικότητα και Αρχή της Υποκατάστασης

Εισαγωγή Η VHDL υποστηρίζει τους εξής τρείς βασικούς και διαφορετικούς τρόπους περιγραφής

Οντοκεντρικός Προγραμματισμός

Τομέας Εκπαιδευτικής Τεχνολογίας Παιδαγωγικό Ινστιτούτο Κύπρου ATS2020 ΤΟΜΕΙΣ ΙΚΑΝΟΤΗΤΩΝ ΚΑΙ ΔΕΞΙΟΤΗΤΩΝ ΜΕ ΣΤΟΧΟΥΣ ΕΠΙΤΕΥΞΗΣ

Η συμβολή στην επιτυχία ενός οργανισμού, παρουσιάζοντας σχετικά δεδομένα με τη χρήση τεχνικών 2Δ ή 3Δ τεχνολογίας. Αρμοδιότητα

Διαδικασίες παραγωγής λογισμικού. I. Sommerville 2006 Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση Κεφ. 4

Βάσεις Δεδομένων Ενότητα 4

28 Πολυπρακτορικά Συστήµατα

J-GANNO. Σύντοµη αναφορά στους κύριους στόχους σχεδίασης και τα βασικά χαρακτηριστικά του πακέτου (προέκδοση 0.9Β, Φεβ.1998) Χάρης Γεωργίου

Διαγράμματα Αλληλεπίδρασης. Διαγράμματα Ακολουθίας Διαγράμματα Συνεργασίας

ΗΥ562 Προχωρημένα Θέματα Βάσεων Δεδομένων Efficient Query Evaluation over Temporally Correlated Probabilistic Streams

Οντοκεντρικός Προγραμματισμός

Οδηγίες Συγγραφής και Αξιολόγησης Εργασιών του μαθήματος

ΑΠΛΗ ΚΛΗΡΟΝΟΜΙΚΟΤΗΤΑ

1. Οι Τεχνολογίες της Πληροφορίας και των Επικοινωνιών στην εκπαιδευτική διαδικασία

Κωδικός: <Κωδ.Αρ.Εγγράφου/ΚωδικόΌνομαΈργου/Αρ. Έκδοσης> <Company Name> <Όνομα - Κωδικό Όνομα Έργου> Έγγραφο Περιγραφής Σχεδίου Λογισμικού

ΚΕΦΑΛΑΙΟ 5. Κύκλος Ζωής Εφαρμογών ΕΝΟΤΗΤΑ 2. Εφαρμογές Πληροφορικής. Διδακτικές ενότητες 5.1 Πρόβλημα και υπολογιστής 5.2 Ανάπτυξη εφαρμογών

Μαλούτα Θεανώ Σελίδα 1

Κοινωνικά δίκτυα καταναλωτών Ηλεκτρικής Ενέργειας: η περίπτωση του ερευνητικού έργου Cassandra

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Κλάσεις και Αντικείμενα

Ευρετικοί Κανόνες Αντικειμενοστρεφούς Σχεδίασης. Object-Oriented Design Heuristics

ΔΙΟΙΚΗΣΗ ΤΟΥ ΤΥΠΟΥ «ΑΠΟ ΤΟ ΜΕΣΟ ΠΡΟΣ ΤΗΝ ΚΟΡΥΦΗ ΚΑΙ ΠΡΟΣ ΤΗ ΒΑΣΗ» ΚΕΦΑΛΑΙΟ:

ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ

Εισαγωγή στη γλώσσα UML

Σημειώσεις στο μάθημα «Στοιχεία Προγραμματισμού σε Γραφικό Περιβάλλον»

Σύνθεση και Κληρονομικότητα

Σενάριο 15: Ενεργός Μετεωρολογικός Χάρτης

Διαδικασίες της τεχνολογίας απαιτήσεων. I. Sommerville 2006 Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση Κεφ. 7

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 8 & 9 18/10/07

3 Αλληλεπίδραση Αντικειμένων

Θεματική Ενότητα: Εκπαιδευτικό Λογισμικό. Αποθετήρια & Ανοικτοί Εκπαιδευτικοί Πόροι Ανάλυση εφαρμογής

Διαχείριση Πολιτισμικών Δεδομένων

Πληροφοριακά Συστήματα Διοίκησης. Επισκόπηση μοντέλων λήψης αποφάσεων Τεχνικές Μαθηματικού Προγραμματισμού

Κεφάλαιο 10 ο Υποπρογράµµατα

Βελτιωμένη Εφαρμογή. Νέες δυνατότητες. Νέα Ιστοσελίδα

Σενάριο 13. Προγραμματίζοντας ένα Ρομπότ

Τεχνολογία Λογισμικού & Ανάλυση Συστημάτων 21/11/2016. Δρ. Ανδριάνα Πρέντζα Αναπληρώτρια Καθηγήτρια.

Τεχνολογία Λογισμικού & Ανάλυση Συστημάτων

ΤΕΙ ΚΡΗΤΗΣ ΤΜΗΜΑ ΛΟΓΙΣΤΙΚΗΣ. Διοίκηση Επιχειρήσεων. Β Εξάμηνο -Παραδόσεις

Πανεπιστήμιο Πειραιώς Τμήμα Ψηφιακών Συστημάτων ιαχείριση ικτύων ρ.αρίστη Γαλάνη Ακαδημαϊκό Έτος

ΗΥ 252: Αντικειµενοστρεφής Προγραµµατισµός

Transcript:

Υποδείγματα Ανάπτυξης

περιεχόμενα παρουσίασης Αποσύνθεση Αφαίρεση Μοντελοποίηση Η δεδομένο λειτουργική προσέγγιση Η αντικειμενοστρεφής προσέγγιση

αποσύνθεση Όταν επιχειρούμε τη λύση ενός προβλήματος, πρώτα απ όλα πρέπει να κατανοήσουμε το πρόβλημα αναλύοντας τη σημασία του. Στη συνέχεια αποσυνθέτουμε (decompose) το πρόβλημα σε υποπροβλήματα που το καθένα μόνο του μπορεί να επιλυθεί. Από τις επιμέρους λύσεις των υποπροβλημάτων συνθέτουμε τη λύση του αρχικού προβλήματος.

ανάλυση - σύνθεση

αφαίρεση Αφαίρεση: ένας από τους τρόπους διαχείρισης της πολυπλοκότητας. Με την αφαίρεση επιχειρούμε: να αγνοήσουμε πληροφορίες που προς στιγμήν δεν μας ενδιαφέρουν και να εστιάσουμε την προσοχή μας σε εκείνες τις πληροφορίες που προς στιγμή κρίνουμε σημαντικές Η αφαίρεση πρέπει να χρησιμοποιείται με τρόπο που δεν αλλοιώνει το πρόβλημα μας (εστιάζουμε μόνο στο υποσύνολο εκείνο της πολυπλοκότητας του πραγματικού κόσμου που αφορά το πρόβλημα μας).

μοντελοποίηση Μοντελοποίηση: ένας άλλος τρόπος διαχείρισης της πολυπλοκότητας. Είναι γνωστοί όροι όπως οικονομικά μοντέλα, μοντέλα προσομοίωσης αγοράς, κατόψεις κτηρίων, διαγράμματα ηλεκτρικών κυκλωμάτων, μοντέλα καιρού κτλ. Σε όλες αυτές τις περιπτώσεις τα μοντέλα χρησιμοποιούνται ως αφαιρετική προσεγγιστική παράσταση του πραγματικού αντικειμένου.

μοντελοποίηση Γενικά μπορούμε να υποστηρίξουμε ότι δεν αξίζει να επιχειρήσουμε μοντελοποίηση σε ένα έργο που χαρακτηρίζεται από τα παρακάτω: Ο χώρος του προβλήματος είναι πλήρως γνωστός. Η λύση του προβλήματος είναι εύκολη. Μικρός αριθμός ανθρώπων θα εμπλακούν στην εξεύρεση και υλοποίηση της λύσης του προβλήματος. Η λύση που θα υλοποιηθεί δεν θα χρειάζεται συντήρηση. Οι μελλοντικές ανάγκες δεν προβλέπεται να αλλάξουν σημαντικά.

μοντελοποίηση Η μοντελοποίηση προσφέρει έναν αποδοτικό τρόπο για να κατανοήσουν οι εμπλεκόμενοι στην ανάπτυξη τι και πως θα αναπτύξουν και να συνεννοηθούν μεταξύ τους με ακρίβεια. Με την μοντελοποίηση οι εμπλεκόμενοι στην ανάπτυξη επιβεβαιώνουν ότι: το σύστημα που θα αναπτύξουν ανταποκρίνεται στις απαιτήσεις τους, αναπτύσσουν το σωστό σύστημα, αναπτύσσουν το σύστημα σωστά και τέλος, το μοντέλο τους επιτρέπει να υποστηρίξουν τις μελλοντικές ανάγκες αλλαγών του συστήματος.

μοντελοποίηση Θα μπορούσαμε όλες τις προσεγγίσεις των τελευταίων ετών να τις κατατάξουμε σε δύο μεγάλες κατηγορίες: εκείνες που βλέπουν το λογισμικό ως ένα σύνολο δεδομένων και λειτουργιών που επεξεργάζονται αυτά τα δεδομένα (Δεδομένο - Λειτουργικές προσεγγίσεις) και εκείνες που βλέπουν το λογισμικό ως ένα σύνολο αντικειμένων που αλληλεπιδρούν μεταξύ τους μέσω μηνυμάτων (Αντικειμενοστεφείς προσεγγίσεις)

δεδομενο-λειτουργικές προσεγγίσεις Η προσέγγιση αυτή θεωρεί ότι κάθε σύστημα αποτελείται από δεδομένα και λειτουργίες. Τα δεδομένα αποτελούν το παθητικό μέρος του συστήματος και χρησιμοποιούνται για να αποθηκεύουν πληροφορία. Οι λειτουργίες αποτελούν το ενεργό μέρος του συστήματος, διαθέτουν συμπεριφορά και επηρεάζουν τις τιμές των δεδομένων.

δεδομενο-λειτουργικές προσεγγίσεις Η λειτουργική προσέγγιση ξεκινώντας από την προσδιορισμό των απαιτήσεων θέτει τρία βασικά ερωτήματα που είναι: Ποιες είναι οι λειτουργίες που θα παρέχει το λογισμικό; Ποια είναι τα δεδομένα που ανταλλάσσουν οι λειτουργίες του λογισμικού; Μπορούν οι λειτουργίες να διασπαστούν σε μικρότερες λειτουργίες ή μήπως είναι ατομικές;

δεδομενο-λειτουργικές προσεγγίσεις Η λειτουργική προσέγγιση χρησιμοποιεί τα διαγράμματα ροής δεδομένων για να απαντήσει στα παραπάνω ερωτήματα όταν αναλύονται οι απαιτήσεις και το δομημένο σχέδιο για τη σχεδίαση του λογισμικού (δομημένη ανάλυση και σχεδίαση).

αντικειμενοστρεφής προσέγγιση Η αντικειμενοστρεφής προσέγγιση ξεκινά από τη διαπίστωση ότι στο χώρο των προβλημάτων που επιλύουμε δεν είναι ορατά τα δεδομένα και οι λειτουργίες επί των δεδομένων με ένα τρόπο διακριτό. Έχουμε οντότητες που διαχειρίζονται δεδομένα και λειτουργίες και οι οποίες οντότητες συνεργάζονται μεταξύ τους για να διεκπεραιώνουν εργασίες. Η αντικειμενοστρεφής προσέγγιση ενοποιεί τις λειτουργίες και τα δεδομένα σε μία νέα αυτόνομη έννοια που είναι το αντικείμενο.

αντικειμενοστρεφής προσέγγιση Η προσέγγιση αυτή θεωρεί το σύστημα ως ένα σύνολο αντικειμένων (objects) που αλληλεπιδρούν μεταξύ τους με σκοπό την εξυπηρέτηση των χρηστών του συστήματος. Η αλληλεπίδραση αυτή γίνεται μέσω μηνυμάτων που ανταλλάσουν μεταξύ τους τα αντικείμενα. Στο μοντέλο μας κάθε οντότητα του χώρου του προβλήματος παριστάνεται από ένα αντικείμενο, επιτυγχάνοντας έτσι μια αντιστοίχηση των οντοτήτων του χώρου του προβλήματος με τα αντικείμενα που συνθέτουν το μοντέλο.

αντικειμενοστρεφής προσέγγιση Τα ερωτήματα που θέτει η αντικειμενοστρεφής προσέγγιση είναι: Ποια είναι τα αντικείμενα του λογισμικού; Ποια είναι τα δεδομένα που γνωρίζει ένα αντικείμενο; Ποιες είναι οι υπηρεσίες (λειτουργίες) που προσφέρει ένα αντικείμενο; Πώς συνεργάζεται ένα αντικείμενο με άλλα αντικείμενα για την παροχή των λειτουργιών του λογισμικού;

αντικείμενο Αντικείμενο: μια οντότητα, αυτόνομη και ανεξάρτητη, που χαρακτηρίζεται από μια τριάδα ιδιοτήτων: Όνομα, έχει ένα μοναδικό όνομα. Κατάσταση, είναι ένα σύνολο δεδομένων που αφορούν το αντικείμενο. Στο σύνολο αυτό των δεδομένων αποτυπώνονται όλες οι ιδιότητες του αντικειμένου. Πράξεις, είναι ένα σύνολο πράξεων που επιδρούν πάνω στη κατάσταση του αντικειμένου. Το σύνολο αυτό των πράξεων καθορίζει τη συμπεριφορά του αντικειμένου. Πως δηλαδή ένα αντικείμενο δρα και αντιδρά, σε σχέση με τις αλλαγές στην κατάστασή του και στην επικοινωνία του με τα άλλα αντικείμενα.

παράδειγμα Ας υποθέσουμε ότι σε μια θεατρική σκηνή ανεβαίνουν κάποιοι ηθοποιοί και εκτελούν κάποιους θεατρικούς ρόλους. Δουλειά μας είναι να μοντελοποιήσουμε αυτό το σύστημα με τη βοήθεια της αντικειμενοστρεφούς προσέγγισης. Στη θεατρική σκηνή, που αποτελεί το φυσικό περιβάλλον του χώρου του προβλήματος, κινούνται ηθοποιοί που συνομιλούν και χειρονομούν, λαμβάνοντας υπόψη ο καθένας τις ενέργειες των υπολοίπων. Στο μοντέλο που θα παριστά τη θεατρική σκηνή μπορούμε να θεωρήσουμε κάθε ηθοποιό ως ένα αντικείμενο. Κάθε αντικείμενο παριστά έναν ηθοποιό.

ενθυλάκωση Για κάθε αντικείμενο ο εξωτερικός του αντικειμένου κόσμος γνωρίζει για αυτό το όνομά του και το όνομα κάποιων εκ των πράξεών του, όχι τον τρόπο υλοποίησης των πράξεων, όχι την κατάστασή του. Τις πληροφορίες για το σύνολο των χαρακτηριστικών του αντικειμένου τις γνωρίζει μόνο το ίδιο το αντικείμενο. Τα χαρακτηριστικά αυτά συνθέτουν την ιδιότητα της ενθυλάκωσης (encapsulation) του αντικειμένου. Μεταξύ δυο αντικειμένων είναι δυνατόν να υπάρχουν σχέσεις που διαρκούν δε μεταβάλλονται στο χρόνο και οι οποίες καλούνται στατικές σχέσεις και σχέσεις που μεταβάλλονται με το χρόνο που καλούνται δυναμικές σχέσεις.

παράδειγμα: αντικείμενα

σύνθεση

παράδειγμα: το αντικείμενο εσωτερικά

κλάση και στιγμιότυπο

κλάση και στιγμιότυπο

πολυμορφισμός Με τον πολυμορφισμό, το αντικείμενο-αποστολέας ενός μηνύματος αδιαφορεί για το ποιος είναι ο αποδέκτης και για το πώς αυτός θα ερμηνεύσει το μήνυμα, απλώς γνωρίζει ότι το συγκεκριμένο μήνυμα ως όρος ανήκει στο λεξιλόγιο του αποδέκτη (είναι κατανοητό, δηλαδή υπάρχει πράξη στον αποδέκτη με όνομα το όνομα του μηνύματος). Με αυτό τον τρόπο το όνομα μιας πράξης μπορεί να υλοποιηθεί με πολλούς διαφορετικούς τρόπους από διαφορετικές κλάσεις.

κληρονομικότητα

κλάσεις και αφαίρεση Η έννοια των κλάσεων είναι σε μεγάλο βαθμό συνυφασμένη με την έννοια της αφαίρεσης. Μία κλάση είναι μία αφηρημένη κατασκευή μίας έννοιας του χώρου του προβλήματος. Ο σημαντικότερος ίσως λόγος που καταφεύγουμε σε αφαιρέσεις είναι ότι οι αφαιρέσεις διαρκούν περισσότερο από τις λεπτομέρειες.

κληρονομικότητα και αφαίρεση Η κληρονομικότητα σχετίζεται και αυτή με την αφαίρεση. Στο παράδειγμα του θεατρικού μας έργου η κλάση Α_Ηθοποιός και Γ_Ηθοποιός είναι απόγονοι της κλάσης Ηθοποιός. Επομένως η κλάση Ηθοποιός έχει μεγαλύτερο επίπεδο αφαίρεσης από τις υποκλάσεις της. Και αυτό γιατί την αφορούν λιγότερα χαρακτηριστικά των αντικειμένων της. Θυμίζουμε ότι η κλάση Ηθοποιός δεν παρέχει την πράξη Περπάτα, η οποία παρέχεται από τις κλάσεις Α_Ηθοποιός και Γ_Ηθοποιός. Επομένως οι ιεραρχίες κληρονομικότητας μας δίνουν μία εικόνα για το επίπεδο αφαίρεσης των κλάσεων. Οι πρόγονοι σε μία ιεραρχία κληρονομικότητας είναι κλάσεις με υψηλότερο επίπεδο αφαίρεσης από τους απογόνους τους.