This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
java:packages:naming [2015/02/05 13:50] gthanos |
java:packages:naming [2016/02/12 12:50] gthanos |
||
---|---|---|---|
Line 5: | Line 5: | ||
Παρά το γεγονός ότι το όνομα του πακέτου αποτελεί επιπλέον χαρακτηριστικό, δεν μπορούμε να αποκλείσουμε τα δύο πακέτα στα οποία ανήκει η κλάση με το όνομα ''MountainBike'' να έχουν το ίδιο όνομα. Για να αποφύγουμε και αυτές τις συγκρούσεις ονοματοδοσίας υιοθετούμε τους παρακάτω κανόνες. | Παρά το γεγονός ότι το όνομα του πακέτου αποτελεί επιπλέον χαρακτηριστικό, δεν μπορούμε να αποκλείσουμε τα δύο πακέτα στα οποία ανήκει η κλάση με το όνομα ''MountainBike'' να έχουν το ίδιο όνομα. Για να αποφύγουμε και αυτές τις συγκρούσεις ονοματοδοσίας υιοθετούμε τους παρακάτω κανόνες. | ||
- Τα ονόματα των πακέτων χρησιμοποιούν πάντοντε μικρά γράμματα. Αν ένα όνομα έχει περισσότερα του ενός συνθετικά αυτά χωρίζονται μεταξύ τους με τελεία '.'. | - Τα ονόματα των πακέτων χρησιμοποιούν πάντοντε μικρά γράμματα. Αν ένα όνομα έχει περισσότερα του ενός συνθετικά αυτά χωρίζονται μεταξύ τους με τελεία '.'. | ||
- | - Τα πακέτα που δημιουργούνται μέσα σε έναν οργανισμό ή εταιρία χρησιμοποιούν το ανεστραμμένο όνομα (reverse DNS) που διατηρεί ο οργανισμός ή η εταιρία στο internet. | + | - Τα πακέτα που δημιουργούνται μέσα σε έναν οργανισμό ή εταιρία χρησιμοποιούν το ανεστραμμένο όνομα (reverse [[wp>Domain_Name_System|DNS]]) που διατηρεί ο οργανισμός ή η εταιρία στο internet. |
- | - Μια καλή πρακτική είναι εκτός από το όνομα του οργανισμού να χρησιμοποιείται και το όνομα του project ή το όνομα κάποιου άλλου χαρακτηριστικο (π.χ. μάθημα στο πλαίσιο του οποίου γράφτηκε το project ή οργανωτική μονάδα στην οποία υπόκειται το project μέσα σε μία εταιρία κλπ). | + | - Μια καλή πρακτική είναι εκτός από το όνομα του οργανισμού να χρησιμοποιείται και το όνομα του project ή το όνομα κάποιου άλλου χαρακτηριστικού (π.χ. μάθημα στο πλαίσιο του οποίου γράφτηκε το project ή οργανωτική μονάδα στην οποία υπόκειται το project μέσα σε μία εταιρία κλπ). |
- Εάν δύο πακέτα μέσα σε ένα οργανισμό έχουν το ίδιο όνομα, τότε η σύγκρουση ονοματοδοσίας θα πρέπει να επιλυθεί μέσα στον οργανισμό. | - Εάν δύο πακέτα μέσα σε ένα οργανισμό έχουν το ίδιο όνομα, τότε η σύγκρουση ονοματοδοσίας θα πρέπει να επιλυθεί μέσα στον οργανισμό. | ||
- | Παρακάτω δίνονται κάποια παραδείγματα πακέτων (packages), με βάση τα domain names των οργανισμών. | + | Παρακάτω δίνονται κάποια παραδείγματα ονοματοθεσίας πακέτων (packages), με βάση τα domain names των οργανισμών. |
^ Όνομα project και οργανισμός ^ Package name ^ | ^ Όνομα project και οργανισμός ^ Package name ^ | ||
Line 17: | Line 17: | ||
| 123name.example.com | com.example._123name | | | 123name.example.com | com.example._123name | | ||
- | |Προηγούμενο: [[ :java:packages:intro | Πακέτα στη γλώσσα προγραμματισμού Java ]] | Επόμενο: [[ :java:packages:using | Χρήση πακέτων ]]| | + | Παρατηρήστε ότι στα ονόματα των παραπάνω πακέτων μοιάζει να υπάρχει ιεραρχία. Για παράδειγμα, θα μπορούσε να πει κάνεις ότι το πακέτο |
+ | <code> | ||
+ | gr.uth.inf.ce325.homework1.shapes | ||
+ | </code> | ||
+ | βρίσκεται κάτω από το πακέτο | ||
+ | <code> | ||
+ | gr.uth.inf.ce325.homework1 | ||
+ | </code> | ||
+ | και υπό αυτή την έννοια αποτελεί υπο-πακέτο αυτού. Στην πραγματικότητα ιεραρχικές σχέσεις μεταξύ των πακέτων δεν υφίστανται στη Java. Τα πακέτα | ||
+ | |||
+ | <code> | ||
+ | gr.uth.inf.ce325.homework1 | ||
+ | gr.uth.inf.ce325.homework1.shapes | ||
+ | </code> | ||
+ | |||
+ | **ΔΕΝ συνδέονται μεταξύ τους** για τον compiler στην Java. | ||
+ | |||
+ | |Προηγούμενο: [[ :java:packages:intro | Πακέτα στη γλώσσα προγραμματισμού Java ]] | Επόμενο: [[ :java:packages:using | Χρήση (μεταγλωττισμένων) κλάσεων από άλλες κλάσεις ]]| | ||