This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
|
java:packages:naming [2015/02/05 13:50] gthanos |
java:packages:naming [2016/02/26 11:15] (current) |
||
|---|---|---|---|
| Line 4: | Line 4: | ||
| Παρά το γεγονός ότι το όνομα του πακέτου αποτελεί επιπλέον χαρακτηριστικό, δεν μπορούμε να αποκλείσουμε τα δύο πακέτα στα οποία ανήκει η κλάση με το όνομα ''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 ]] | [[:toc | Περιεχόμενα ]] | Επόμενο: [[ :java:packages:using | Χρήση (μεταγλωττισμένων) κλάσεων από άλλες κλάσεις ]]| | ||