Γραφομηχανή εσωτερικές μονάδες σε διάφορα αρχεία

ψήφοι
5

Ας υποθέσουμε ότι ο ακόλουθος ορισμός τάξη με τη χρήση γραφομηχανή στην Animal.ts:

module Animals
{
    export class Animal { }    
}

Αν θέλω να δημιουργήσω μια τάξη σκυλί σε ένα αρχείο ξεχωριστή, λένε στην Dog.ts χρήση αυτού του κώδικα:

module Animals
{
    export class Dog extends Animal { }
}

το όνομα «Animal» δεν υπάρχει στο σημερινό πεδίο εφαρμογής, είναι το σφάλμα να πάρω το σκυλί ορισμό της κατηγορίας.

Προσθέτοντας την ακόλουθη γραμμή στο Dog.ts

/// <reference path=Animal.ts/>

διορθώνει το σφάλμα μεταγλώττισης, αλλά γιατί είναι αυτό απαραίτητο, αν και οι δύο κατηγορίες έχουν να ορίζεται εντός της ίδιας μονάδας;

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

Δημοσιεύθηκε 08/10/2012 στις 19:06
πηγή χρήστη
Σε άλλες γλώσσες...                            


2 απαντήσεις

ψήφοι
5

Πρώτα απ 'όλα, αν συγκεντρώνουν και τα δύο αρχεία ταυτόχρονα με τη χρήση

tsc Animal.ts Dog.ts

όλα θα πάνε καλά. Κατά την κατάρτιση γραφομηχανή αρχεία, θα πρέπει να έχουν επίγνωση του τι αρχεία στην πραγματικότητα να συνιστούν το πρόγραμμα μεταγλώττισης του προγράμματος . Αυτό μπορεί να γίνει χρησιμοποιώντας αναφορές πηγή με ///ή παρέχοντας όλα τα αρχεία στον compiler. Αυτό είναι κάπως διαφορετική σε άλλες γλώσσες, όπως java, η οποία συγκεντρώνει σε ένα ενδιάμεσο εκπροσώπηση και να έχουν μια ιδέα του CLASSPATHπού να ψάξει για άλλα αρχεία που είναι μέρος του προγράμματος.

Απαντήθηκε 08/10/2012 στις 19:31
πηγή χρήστη

ψήφοι
2

Η /// αναφοράς είναι αναγκαία, διότι ο compiler πρέπει να γνωρίζει πού ζώων ορίζεται κατά κάποιο τρόπο. Δεν μπορούμε να ξέρουμε τι αρχείο προέλευσης είναι το χωρίς να το ξέρετε πού να κοιτάξετε.

Δεν είμαι σίγουρος ότι αυτό είναι μια βέλτιστη πρακτική αυτή καθαυτή (θα πρέπει να μάθετε περισσότερα σχετικά με την αίτησή σας), αλλά δεν νομίζω ότι είναι ένα αντι-σχέδιο, έτσι νομίζω ότι μπορείτε να αισθανθείτε ελεύθεροι να το κάνουμε αυτό. Ενότητες με γραφομηχανή σκόπιμα ανοιχτό έκλεισε για να επιτρέψει για αυτό το είδος του σχεδίου.

Απαντήθηκε 08/10/2012 στις 19:11
πηγή χρήστη

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more