C Sharp

Η C# (C Sharp, ελληνική προφ. Σι Σαρπ) είναι μια γλώσσα προγραμματισμού Η/Υ. Δημιουργήθηκε από την Microsoft μέσα από την πλατφόρμα .NET και αργότερα αναγνωρίστηκε επισήμως από την Ecma (ECMA-334) και την ISO (ISO/IEC 23270:2018 ). Είναι μια απ τις γλώσσες προγραμματισμού που δημιουργήθηκαν για την Κοινή Υποδομή Γλώσσας (αγγλικά: Common Language Infrastructure). Ο κύριος σκοπός της γλώσσας είναι να είναι απλή αντικειμενοστρεφής γλώσσα για γενική χρήση. Ο διοικητής της ομάδα που διαχειρίζεται την γλώσσα ονομάζεται Άντερς Χάιλσμπεργκ. Στις 15 Αυγούστου 2012 κυκλοφόρησε η έκδοση 5.0 η οποία είναι η πιο πρόσφατη μέχρι σήμερα.

Ιστορία 

Κατά την διάρκεια της δημιουργίας της πλατφόρμας .ΝΕΤ οι κλάσεις και οι βιβλιοθήκες γράφτηκαν χρησιμοποιώντας ένα μεταγλωττιστή με το όνομα Simple Managed C (SMC). Τον Ιανουάριο του 1999 ο Άντερς Χάιλσμπεργκ συγκρότησε μια ομάδα με σκοπό να φτιάξει μια καινούρια γλώσσα με όνομα Cool (C-like Object Oriented Language). Παρόλο που η Microsoft σκεφτόταν να κρατήσει το όνομα Cool σαν το τελικό όνομα της γλώσσας αυτό δεν έγινε ποτέ για λόγους πνευματικών δικαιωμάτων. Μέχρι τον Ιούλιο του 2000 όπου ανακοινώθηκε η πλατφόρμα .NET η γλώσσα είχε είδη μετονομαστεί σε C# στην οποία αργότερα εισήχθησαν οι βιβλιοθήκες της ASP.NET.

Ο Τζέιμς Γκόσλινγκ (προγραμματιστής της Java) το 1994 μαζί με τον Μπιλ Τζόι (συνιδρυτής της Sun Microsystems) αποκάλεσαν την C# απομίμηση της Java. Ο Γκόσλινγκ επίσης συμπλήρωσε ότι η C# είναι ίδια με την Java απλά χωρίς αξιοπιστία, παραγωγικότητα και ασφάλεια. Οι συγγραφείς ενός βιβλίου της C# ισχυρίστηκαν ότι η Java και η C# είναι πανομοιότυπες επαναληπτικές και χωρίς καινοτομίες. Τον Ιούνιο του 2000 ο Άντερς Χάιλσμπεργκ υποστήριξε ότι η C# δεν είναι κλώνος της Java αλλά ότι είναι πολύ πιο κοντά στην C++.

Από τότε που κυκλοφόρησε η δεύτερη έκδοση της C# το Νοέμβριο του 2005, η C# και η Java άρχισαν να απομακρύνονται η μία από την άλλη, με αποτέλεσμα όσο περνάει ο καιρός να μοιάζουν όλο και λιγότερο. Μια από τις πρώτες σημαντικές διαφορές ήταν στην υλοποίηση των γενικών αντικειμένων. Η C# παρέχει "πρώτης-κλάσης" γενικά αντικείμενα τα οποία μπορούν να χρησιμοποιηθούν σαν οποιαδήποτε άλλη κλάση, με τον κώδικα να εκτελείται κατά τη διάρκεια της φόρτωσής της. Αντιθέτως τα γενικά αντικείμενα της Java παρέχονται από τη γλώσσα κατά τη διάρκεια της σύνταξής της και δεν επηρεάζουν τον ήδη υπάρχοντα κώδικα. Επιπλέον η C# πρόσθεσε κάποια ακόμα χαρακτηριστικά στην τρίτη έκδοσή της, τα οποία επιτρέπουν στους προγραμματιστές να χρησιμοποιούν τεχνικές όπως τα κλεισίματα (closures).

Η C# είχε κάποτε μια μασκότ που ονομαζόταν Άντι σαν φόρος τιμής στον σχεδιαστή της, αλλά αποσύρθηκε στις 29 Ιανουαρίου του 2004.

Όνομα 

Το όνομα C sharp εμπνεύστηκε από μια μουσική σημειογραφία. Εξαιτίας διαφόρων τεχνικών περιορισμών προβολής και επειδή το σύμβολο sharp ♯ δεν υφίσταται στα απλά πληκτρολόγια χρησιμοποιήθηκε το αποτέλεσμα του συνδυασμού shift + 3 (#) για την αναπαράσταση της γλώσσας. Η συγκεκριμένη κατάληξη έχει χρησιμοποιηθεί από αρκετές ακόμα γλώσσες της .ΝΕΤ όπως η A# η F# και η Eiffel#.

Εκδόσεις

Σημειώσεις

Παραπομπές 

Γλώσσες προγραμματισμού