Χρησιμοποιώντας το Namespaces στο VB.NET

click fraud protection

Ο πιο συνηθισμένος τρόπος χρήσης των ονομάτων VB.NET χρησιμοποιούνται από τους περισσότερους προγραμματιστές είναι να πείτε στον μεταγλωττιστή ποιες βιβλιοθήκες .NET Framework χρειάζονται για ένα συγκεκριμένο πρόγραμμα. Όταν επιλέγετε ένα "πρότυπο" για το έργο σας (όπως "Windows Forms Application") ένα από τα πράγματα που επιλέγετε είναι το συγκεκριμένο σύνολο χώρων ονομάτων που θα αναφέρονται αυτόματα στο δικό σας έργο. Αυτό καθιστά τον κώδικα σε αυτά τα namespaces διαθέσιμο στο πρόγραμμά σας.

Για παράδειγμα, μερικοί από τους χώρους ονομάτων και τα πραγματικά αρχεία που βρίσκονται σε εφαρμογή Windows Forms Application είναι:

Σύστημα> στο System.dll
Σύστημα. Δεδομένα> στο Σύστημα. Data.dll
Σύστημα. Εγκατάσταση> Σύστημα. Deployment.dll
Σύστημα. Σχέδιο> Σύστημα. Drawing.dll
Σύστημα. Windows. Μορφές> Σύστημα. Windows. Forms.dll

Μπορείτε να δείτε (και να αλλάξετε) τους τόπους ονομάτων και αναφορές για το έργο σας στις ιδιότητες του έργου κάτω από το βιβλιογραφικές αναφορές αυτί.

Αυτός ο τρόπος σκέψης σχετικά με τους χώρους ονομάτων κάνει τους να φαίνονται να είναι ακριβώς το ίδιο πράγμα με την «βιβλιοθήκη κώδικα», αλλά αυτό είναι μόνο μέρος της ιδέας. Το πραγματικό όφελος των namespaces είναι η οργάνωση.

instagram viewer

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

Τι κάνουν οι ονοματοθεσίες

Οι χώροι ονομάτων επιτρέπουν την οργάνωση δεκάδων χιλιάδων αντικειμένων .NET Framework και όλων των αντικειμένων που δημιουργούν οι προγραμματιστές VB σε έργα, έτσι ώστε να μην συγκρούονται.

Για παράδειγμα, εάν κάνετε αναζήτηση στο .NET για ένα Χρώμα αντικείμενο, βρίσκετε δύο. Υπάρχει ένα Χρώμα αντικείμενο και στα δύο:

Σύστημα. Σχέδιο
Σύστημα. Windows. Μεσο ΜΑΖΙΚΗΣ ΕΝΗΜΕΡΩΣΗΣ

Αν προσθέσετε ένα Εισαγωγές δήλωση και για τους δύο τόπους ονομάτων (μια αναφορά μπορεί επίσης να είναι απαραίτητη για τις ιδιότητες του έργου) ...

Σύστημα εισαγωγών. Σχέδιο
Σύστημα εισαγωγών. Windows. Μεσο ΜΑΖΙΚΗΣ ΕΝΗΜΕΡΩΣΗΣ

... τότε μια δήλωση όπως ...

Dima ως χρώμα

... θα επισημανθεί ως σφάλμα με τη σημείωση "Το χρώμα είναι διφορούμενο" και το .NET θα επισημάνει ότι και οι δύο χώροι ονομάτων περιέχουν ένα αντικείμενο με αυτό το όνομα. Αυτό το είδος σφάλματος ονομάζεται "σύγκρουση ονόματος".

Αυτός είναι ο πραγματικός λόγος για τα "namespaces" και είναι επίσης ο τρόπος που χρησιμοποιούνται οι χώροι ονομάτων σε άλλες τεχνολογίες (όπως η XML). Οι χώροι ονομάτων επιτρέπουν τη χρήση του ίδιου ονόματος αντικειμένου, όπως π.χ. Χρώμα, όταν το όνομα ταιριάζει και εξακολουθεί να κρατά τα πράγματα οργανωμένα. Θα μπορούσατε να ορίσετε ένα Χρώμα αντικείμενο στο δικό σας κώδικα και να το διακρίνει από εκείνους στο. NET (ή τον κώδικα άλλων προγραμματιστών).

Ο χώρος ονόματος MyColor
Δημόσια κλάση χρώματος
Sub Color ()
' Κάνε κάτι
End Sub
Τέλος κλάσης
Τερματίστε τον χώρο ονομάτων

Μπορείτε επίσης να χρησιμοποιήσετε το Χρώμα αντικείμενα κάπου αλλού στο πρόγραμμά σας, όπως αυτό:

Dim c Ως νέο MyColor. Χρώμα
ντο. Χρώμα()

Πριν βρεθείτε σε κάποια από τα άλλα χαρακτηριστικά γνωρίστε ότι κάθε έργο περιέχεται σε ένα χώρο ονομάτων. Το VB.NET χρησιμοποιεί το όνομα του έργου σας (WindowsApplication1 για μια τυποποιημένη εφαρμογή φόρμας αν δεν την αλλάξετε) ως το προεπιλεγμένο χώρο ονομάτων. Για να δείτε αυτό, δημιουργήστε ένα νέο έργο (χρησιμοποιήσαμε το όνομα NSProj και ελέγξτε το εργαλείο περιήγησης αντικειμένων):

  1. Κάντε κλικ Εδώ για να εμφανιστεί η εικόνα
  2. Κάντε κλικ στο Πίσω για να επιστρέψετε

Ο περιηγητής αντικειμένου εμφανίζει το νέο σας χώρο ονομάτων έργου (και τα αυτόματα καθορισμένα αντικείμενα σε αυτό) μαζί με τους χώρους ονομάτων .NET Framework. Αυτή η ικανότητα του VB.NET να κάνει τα αντικείμενά σας ίσα με αντικείμενα .NET είναι ένα από τα κλειδιά για την εξουσία και την ευελιξία. Για παράδειγμα, αυτός είναι ο λόγος για τον οποίο η Intellisense θα δείξει τα δικά σας αντικείμενα μόλις τα ορίσετε.

Για να το κλωτσήσουμε με μια εγκοπή, ας ορίσουμε ένα νέο έργο (Ονομάσαμε το δικό μας NewNSProj στην ίδια λύση (χρήση Αρχείο > Προσθήκη > Νέο Έργο ...) και να κωδικοποιήσετε ένα νέο χώρο ονομάτων σε αυτό το έργο. Και για να το κάνουμε πιο διασκεδαστικό, ας θέσουμε το νέο χώρο ονομάτων σε μια νέα ενότητα (το ονομάσαμε NewNSMod). Και επειδή ένα αντικείμενο πρέπει να κωδικοποιηθεί ως κλάση, προσθέσαμε επίσης ένα μπλοκ τάξης (με όνομα NewNSObj). Εδώ είναι ο κώδικας και Explorer Explorer για να δείξει πώς ταιριάζει μαζί:

  1. Κάντε κλικ Εδώ για να εμφανιστεί η εικόνα
  2. Κάντε κλικ στο Πίσω για να επιστρέψετε

Δεδομένου ότι ο δικός σας κώδικας είναι «ακριβώς όπως ο κώδικας πλαισίου», είναι απαραίτητο να προσθέσετε μια αναφορά NewNSMod σε NSProj για να χρησιμοποιήσετε το αντικείμενο στο χώρο ονομάτων, ακόμα κι αν βρίσκονται στην ίδια λύση. Μόλις γίνει αυτό, μπορείτε να δηλώσετε ένα αντικείμενο μέσα NSProj με βάση τη μέθοδο NewNSMod. Πρέπει επίσης να "χτίσετε" το έργο έτσι ώστε να υπάρχει ένα πραγματικό αντικείμενο προς αναφορά.

Dim o Ως νέο NewNSProj. AVBNS.NewNSMod. NewNSObj
o. AVBNSMethod ()

Αυτό είναι αρκετά Αμυδρός δήλωση. Μπορούμε να το συντομεύσουμε χρησιμοποιώντας ένα Εισαγωγές δήλωση με ψευδώνυμο.

Εισαγωγές NS = NewNSProj. AVBNS.NewNSMod. NewNSObj
...
Dim o Ως νέα NS
o. AVBNSMethod ()

Κάνοντας κλικ στο κουμπί Εκτέλεση εμφανίζεται το MsgBox από το χώρο ονομάτων AVBNS, "Hey! Δούλεψε!"

Πότε και γιατί να χρησιμοποιείτε χώρους ονομάτων

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

  • Απαραίτητη προϋπόθεση για την οργάνωση του χώρου ονομάτων. Χρειάζεστε κάτι περισσότερο από ένα έργο "Hello World" πριν ξεκινήσει η οργάνωση των ονομάτων χώρου.
  • Ένα σχέδιο για τη χρήση τους.

Γενικά, Microsoft συνιστά να οργανώσετε τον κώδικα του οργανισμού σας χρησιμοποιώντας έναν συνδυασμό του ονόματος της εταιρείας σας με το όνομα του προϊόντος.

Έτσι, για παράδειγμα, αν είστε ο επικεφαλής του αρχιτέκτονα λογισμικού για τη μύτη του Dr. No's Knows Plastic Surgery, τότε ίσως θελήσετε να οργανώσετε τα όνομά σας όπως ...

DRNo
Συμβουλευτική
ReadTheirWatchNChargeEm
TellEmNuthin
Χειρουργική επέμβαση
ElephantMan
MyEyeLidsRGone

Αυτό είναι παρόμοιο με την οργάνωση του .NET ...

Αντικείμενο
Σύστημα
Πυρήνας
IO
Linq
Δεδομένα
Odbc
Sql

Τα πολυεπίπεδα ονομάτων επιτυγχάνονται με την απλή εμφάνιση των μπλοκ ονομάτων.

Namespace DRNo
Χειρουργική του χώρου ονομάτων
Ο χώρος ονόματος MyEyeLidsRGone
«Κωδικός VB
Τερματίστε τον χώρο ονομάτων
Τερματίστε τον χώρο ονομάτων
Τερματίστε τον χώρο ονομάτων

ή

Namespace DRNo. Χειρουργική επέμβαση. MyEyeLidsRGone
«Κωδικός VB
Τερματίστε τον χώρο ονομάτων
instagram story viewer