java:packages:naming

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revision Both sides next revision
java:packages:naming [2016/02/24 13:40]
doufexi
java:packages:naming [2017/01/30 12:54]
gthanos
Line 3: Line 3:
 Καθώς πολλοί προγραμματιστές φτιάχνουν κλάσεις για διάφορά προγράμματα είναι πολύ πιθανόν ότι τα ονόματα των κλάσεων πολλές φορές συμπίπτουν. Προκειμένου να αποφύγουμε συγκρούσεις ονοματοδοσίας (naming conflicts) μεταξύ κλάσεων, το πλήρες όνομα της κλάσης αποτελείται από το όνομα του πακέτου και το όνομα της κλάσης. Για παράδειγμα αν το όνομα του πακέτου σας είναι ''bicycles'' και το όνομα της κλάσης σας είναι ''MountainBike'', τότε το πλήρες όνομα της κλάσης σας είναι ''bicycles.MountainBike''. Με αυτόν τον τρόπο η δική σας κλάση διαφέρει από την κλάση MountainBike που υλοποιεί κάποιος άλλος προγραμματιστής και πιθανόν την έχει τοποθετήσει σε ένα πακέτο με όνομα ''equipment'' Καθώς πολλοί προγραμματιστές φτιάχνουν κλάσεις για διάφορά προγράμματα είναι πολύ πιθανόν ότι τα ονόματα των κλάσεων πολλές φορές συμπίπτουν. Προκειμένου να αποφύγουμε συγκρούσεις ονοματοδοσίας (naming conflicts) μεταξύ κλάσεων, το πλήρες όνομα της κλάσης αποτελείται από το όνομα του πακέτου και το όνομα της κλάσης. Για παράδειγμα αν το όνομα του πακέτου σας είναι ''bicycles'' και το όνομα της κλάσης σας είναι ''MountainBike'', τότε το πλήρες όνομα της κλάσης σας είναι ''bicycles.MountainBike''. Με αυτόν τον τρόπο η δική σας κλάση διαφέρει από την κλάση MountainBike που υλοποιεί κάποιος άλλος προγραμματιστής και πιθανόν την έχει τοποθετήσει σε ένα πακέτο με όνομα ''equipment''
  
-Παρά το γεγονός ότι το όνομα του πακέτου αποτελεί επιπλέον χαρακτηριστικό, δεν μπορούμε να αποκλείσουμε τα δύο πακέτα στα οποία ανήκει η κλάση με το όνομα ''MountainBike'' να έχουν το ίδιο όνομα. Για να αποφύγουμε και αυτές τις συγκρούσεις ονοματοδοσίας υιοθετούμε τους παρακάτω κανόνες. +Παρά το γεγονός ότι το όνομα του πακέτου αποτελεί επιπλέον χαρακτηριστικό, δεν μπορούμε να αποκλείσουμε  δύο πακέτα στα οποία ανήκουν δύο κλάσεις με το ίδιο όνομα ''MountainBike'' να έχουν και αυτά το ίδιο όνομα. Για να αποφύγουμε και αυτές τις συγκρούσεις ονοματοδοσίας υιοθετούμε τους παρακάτω κανόνες ονοματοδοσίας. 
-  - Τα ονόματα των πακέτων χρησιμοποιούν πάντα μικρά γράμματα. Αν ένα όνομα έχει περισσότερα του ενός συνθετικά αυτά χωρίζονται μεταξύ τους με τελεία '.'+  - Τα ονόματα των πακέτων χρησιμοποιούν πάντα μικρά γράμματα. Εάν ένα όνομα έχει περισσότερα του ενός συνθετικά αυτά χωρίζονται μεταξύ τους με τελεία '.'
-  - Τα πακέτα που δημιουργούνται μέσα σε έναν οργανισμό ή εταιρία χρησιμοποιούν το ανεστραμμένο όνομα (reverse [[wp>Domain_Name_System|DNS]]) που διατηρεί ο οργανισμός ή η εταιρία στο internet. +  - Τα πακέτα που δημιουργούνται μέσα σε έναν οργανισμό ή εταιρία χρησιμοποιούν το ανεστραμμένο όνομα (reverse [[wp>Domain_Name_System|DNS]]) που διατηρεί ο οργανισμός ή η εταιρία στο διαδίκτυο (internet).
   - Μια καλή πρακτική είναι εκτός από το όνομα του οργανισμού να χρησιμοποιείται και το όνομα του project ή το όνομα κάποιου άλλου χαρακτηριστικού (π.χ. μάθημα στο πλαίσιο του οποίου γράφτηκε το project ή οργανωτική μονάδα στην οποία υπόκειται το project μέσα σε μία εταιρία κλπ).   - Μια καλή πρακτική είναι εκτός από το όνομα του οργανισμού να χρησιμοποιείται και το όνομα του project ή το όνομα κάποιου άλλου χαρακτηριστικού (π.χ. μάθημα στο πλαίσιο του οποίου γράφτηκε το project ή οργανωτική μονάδα στην οποία υπόκειται το project μέσα σε μία εταιρία κλπ).
   - Εάν δύο πακέτα μέσα σε ένα οργανισμό έχουν το ίδιο όνομα, τότε η σύγκρουση ονοματοδοσίας θα πρέπει να επιλυθεί μέσα στον οργανισμό.   - Εάν δύο πακέτα μέσα σε ένα οργανισμό έχουν το ίδιο όνομα, τότε η σύγκρουση ονοματοδοσίας θα πρέπει να επιλυθεί μέσα στον οργανισμό.
Line 25: Line 25:
 gr.uth.inf.ce325.homework1 gr.uth.inf.ce325.homework1
 </code> </code>
-και υπό αυτή την έννοια αποτελεί υπο-πακέτο αυτού. Στην πραγματικότητα ιεραρχικές σχέσεις μεταξύ των πακέτων δεν υφίστανται στη Java. Τα πακέτα +και υπό αυτή την έννοια αποτελεί υπο-πακέτο αυτού. Στην πραγματικότητα ιεραρχικές σχέσεις μεταξύ των πακέτων __δεν υφίστανται__ στη Java. Τα πακέτα 
  
 <code> <code>
java/packages/naming.txt · Last modified: 2022/02/24 13:16 by gthanos