ΜΑΘΗΜΑ 6.1 Η έννοια του δέντρου και της διαδρομής.

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

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

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

Στους υπολογιστές, η ιδέα της δενδροειδούς ταξινόμησης των πληροφοριών έχει υιοθετηθεί στις μέρες μας από όλα τα λειτουργηκά συστήματα . Όπως έχουμε μάθει στα προηγούμενα μαθήματα, για την αποθήκευση των πληροφοριών οι υπολογιστές χρησιμοποιούν τα αρχεία, καθένα από τα οποία έχει το δικό του όνομα. Μια πρώτη ομαδοποίηση των αρχείων επιτυγχάνεται με κατάλληλη επιλογή των ονομάτων των αρχείων. Πιο συγκεκριμένα, το δεύτερο συνθετικό ενός ονόματος υποδουλώνει, συνήθως, το είδος του αρχείου. ¨Ετσι το αρχείο test. txt, όπως μας μαρτυρεί το txt, είναι αρχείο κειμένου, το flower.bmp, σύμφωνα με το bmp, είναι αρχείο εικόνας, το song3.wav είναι, λόγω του wav, αρχείο ήχου κτλ. Για την ταξινόμηση των αρχείων ένα ιδιαίτερα σημαντικό εργαλείο αποτελεί και η χρήση φακέλων (folders).΄Οπως είδαμε σε προηγούμενα μαθήματα, ένας φάκελος είναι μια περιοχή στην οποία αποθηκεύεται ένα σύνολο αρχείων, και η οποία φέρει το δικό της όνομα. Ένας φάκελος μπορεί , βέβαια, να περιέχει άλλους φακέλους. Ας θυμηθούμε, επίσης, ότι στο ΓΠΕ ο φάκελος συμβολίζεται με διαφορετικό εικονίδιο απ'ό,τι τα αρχεία.

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

=>Σε κάθε φάκελο τοποθετούμε ομοειδή αρχεία, δηλαδή, αρχεία με σχετικά θέματα.

=>Το όνομα του φακέλου ή του αρχείου είναι ενδεκτικό του περιεχομένου του.

Χαρακτηριστικά του δέντρου αρχείων και φακέλων

Ας παρατηπήσουμε το παρακάτω δέντρο.

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

Στο δέντρο των αρχείων και των καταλόγων υπάρχει τρόπος να προσδιορήσουμε μοναδικά ένα στοιχείο. Τα στοιχεία του δέντρου από τα οποία περνάμε, για να εντοπίσουμε αυτό που μας ενδιαφέρει, αποτελούν τη διαδρομή (path)του στοιχείου. Η διαδρομή είναι μοναδική το διαφοροποιεί από όλα τα υπόλοιπα στοιχεία του δέντρου. Ας θυμηθούμε το παράδειγμα με το οικογενειακό δέντρο της οικογένειας Δημητρίου. Ενώ δύο εξαδέλφια είχαν το ίδιο ονοματεπώνυμο, το πατρώνυμο τα ξεχώριζε. Έτσι και στο παραπάνω δέντρο, το αρχείο ομιλίας στο 15μελές συμβουλιο εμφανίζεται δύο φορές. Η διαδρομή του ενός είναι:σκληρός δίσκος / φάκελος Νίκου / φάκελος κειμένων / αρχείο ομιλίας στο 15μελές συμβούλιο, ενώ του άλλου:σκληρός δίσκος / φάκελος Αλίκης / φάκελος κειμένων / αρχείο ομιλίας για το 15μελές συμβουλιο.

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