This is a viewer only at the moment see the article on how this works.
To update the preview hit Ctrl-Alt-R (or ⌘-Alt-R on Mac) or Enter to refresh. The Save icon lets you save the markdown file to disk
This is a preview from the server running through my markdig pipeline
Μέρος IV της συνέντευξης με τον Anders Hejlisberg
Wednesday, 12 May 2004
Συνδεδεμένος με τους άλλους 3, Εδώ είναι το 4ο μέρος. , πολύ ενδιαφέροντα πράγματα σχετικά με τις εικονική μεθόδους σε C# Αυτό είναι πραγματικά ενδιαφέρον πράγμα (καλά, νομίζω ότι είναι!)...εδώ είναι ένα τμήμα για "συμβάσεις" και εικονικές μεθόδους...το κομμάτι Java είναι τόσο αληθινό!
Τι εννοείς με το εισερχόμενο και εξερχόμενο συμβόλαιο;
Anders Hejlsberg: Η εισερχόμενη σύμβαση είναι αυτό που χρησιμοποιώ όταν ονομάζω μια μέθοδο. Μου δίνει τη δυνατότητα να σκεφτώ τι πρέπει να κάνω πριν καλέσω στη μέθοδο και τι έχει συμβεί μετά την επιστροφή της μεθόδου. Η εξερχόμενη σύμβαση είναι αυτό που χρησιμοποιώ όταν παρακάμπτω μια μέθοδο. Αν κοιτάξετε τα περισσότερα APIs είναι στην πραγματικότητα πολύ κακή στην τεκμηρίωση τι υποτίθεται ότι πρέπει να κάνετε όταν παρακάμψετε μια εικονική μέθοδο: Τι είναι οι αμετάβλητοι πριν κληθείτε; Τι πρέπει να είναι αληθινό μετά; Ποιες μέθοδοι δεν μπορείτε να καλέσετε από την εφαρμογή σας; Και ούτω καθεξής. Νομίζω ότι είναι πολύ επικίνδυνο να πω ότι εξ ορισμού όλες οι μέθοδοι έχουν τόσο εισερχόμενες και εξερχόμενες πτυχές. Είναι επικίνδυνο να εμπιστεύεστε τον καθένα να γράψει καλή τεκμηρίωση σχετικά με το πότε να παρακάμψει και τι οι παραλλαγές είναι όταν κυριαρχούν.
Μπορώ να σας δείξω ένα πολύ πραγματικό παγκόσμιο πρόβλημα έκδοσης, ένα πρόβλημα που πραγματικά βλέπουμε τώρα από την εμπειρία με την Java. Όποτε στέλνουν μια νέα έκδοση των βιβλιοθηκών κλάσης Java, συμβαίνει σπάσιμο. Όποτε εισάγουν μια νέα μέθοδο σε μια βασική τάξη, αν κάποιος σε μια παράγωγη τάξη είχε μια μέθοδο του ίδιου ονόματος, αυτή η μέθοδος είναι τώρα μια παράκαμψη εκτός αν έχει διαφορετικό τύπο επιστροφής, δεν συγκεντρώνει πλέον. Το πρόβλημα είναι ότι η Java, και επίσης η C++, δεν αιχμαλωτίζει την πρόθεση του προγραμματιστή σε σχέση με την εικονική.