background image

Κεφάλαιο 3 - Ανάπτυξη και Υλοποίηση της Εφαρμογής 
 

 

 

33 

 

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

 

Εικόνα 5: Η δομή του πίνακα projects 

 

Όπως κάθε πίνακας, έτσι και ο “projects” έχει αρχικά ένα γνώρισμα ταυτοποίησης “id”. 

Το  γνώρισμα  αυτό  έχει  μοναδικές  τιμές  για  κάθε  εγγραφή  του  πίνακα  καθώς  η  τιμή  του 
αυξάνεται  αυτόματα  και  χρησιμοποιείται  ως  πρωτεύον  κλειδί.  Το  γνώρισμα  “name”  είναι 
τύπου  “varchar(50)”  και  αντιπροσωπεύει  τον  τίτλο  του  έργου.  Έχοντας  διαθέσιμους  50 
χαρακτήρες  επιτρέπουμε  έναν  περιεκτικό  αλλά  όχι  υπερβολικά  περιορισμένο  τίτλο.  Το 
γνώρισμα  “description”  είναι  τύπου  “text”  και  περιέχει  την  περιγραφή  του  έργου.  Ο  τύπος 
“text”  επιτρέπει  την  αποθήκευση  κειμένου  έως  255  χαρακτήρων,  μέγεθος  που  θεωρούμε 
ικανοποιητικό  για  την  σύντομη  περιγραφή  ενός  έργου.  Το  επόμενο  γνώρισμα  είναι  το 
“short_code”,  τύπου  “varchar(50)”.  Το  συγκεκριμένο  γνώρισμα  χρησιμοποιείται  για  την 
συγκράτηση του ονόματος καταλόγου που περιέχει το συγκεκριμένο έργο. Το “short_code” 
προκύπτει  από  τον  τίτλο  μεταγλωττίζοντας  τους  ελληνικούς  χαρακτήρες  σε  αντίστοιχους 
λατινικούς και τα κενά σε κάτω παύλες, έτσι βεβαιώνουμε ότι το σύστημα του εξυπηρετητή θα 
μπορέσει  να  δημιουργήσει  και  προσπελάσει  τον  αντίστοιχο  κατάλογο.  Τέλος,  έχουμε  το 
γνώρισμα “public”, τύπου “tinyint(1)”. Το γνώρισμα αυτό λειτουργεί ως σημαία σήμανσης με 
την τιμή 1 να σημαίνει ότι το έργο μπορεί να προσπελαστεί από άλλους χρήστες και την τιμή 
0 ότι μπορεί να προσπελαστεί μόνο από τους συγγραφείς και διαχειριστές. Έτσι διατηρούμε 
στον πίνακα “projects” τις απαραίτητες πληροφορίες για κάθε έργο. Όπως θα δούμε παρακάτω 
όμως, ένα έργο έχει νόημα μόνο όταν έχει περιεχόμενο και συγγραφέα. 

 

3.1.3 Περιγραφή του Πίνακα project_files 
 

 

Ο  πίνακας  “project_files”  περιέχει  τα  γνωρίσματα  που  περιγράφουν  το  κάθε  αρχείο 

μέσα σε κάθε έργο. Παρόμοια με την περίπτωση του πίνακα “projects” υπήρξε η επιλογή να 
χρησιμοποιήσουμε  κλήσεις  συστήματος  για  να  βρούμε  τα  αρχεία  κάθε  έργου. 
Χρησιμοποιώντας όμως τον πίνακα “project_files” αποκτούμε πρόσβαση σε λειτουργίες όπως 
η σήμανση ανάγκης για επανάληψη μεταγλώττισης του αρχείου μετά από αλλαγές καθώς και 
την σύνδεσή του με το αντίστοιχο εξάρτημα και ενημέρωση για ύπαρξη καινούριας έκδοσης. 
Περιγράφουμε στην συνέχεια τα γνωρίσματα του πίνακα όπως παρουσιάζονται στην Εικόνα 6.