Caracteristici ale normelor lingvistice
C # a fost conceput ca un limbaj de programare la nivel de aplicație pentru CLR și, ca atare, depinde în primul rând de capacitățile mai CLR. Acest lucru se aplică, mai presus de toate, C # sistem de tip, care reflectă FCL. Prezența sau absența anumitor caracteristici ale limbajului expresiv este dictată de dacă o caracteristică limbaj particular să fie traduse în proiectarea CLR corespunzătoare. Deci, odată cu dezvoltarea CLR 1.1-2.0 se îmbogățit în mod semnificativ C #; o astfel de interacțiune poate fi de așteptat în viitor. (Cu toate acestea, acest model a fost spart cu eliberarea de C # 3.0, este o extensie a limbajului, care nu se bazează pe extensiile .NET.) CRJ prevede C #, la fel ca toate celelalte limbi NET orientate spre mai multe capabilități nu „clasice“ limbaje de programare. De exemplu, colectarea gunoiului nu este pusă în aplicare în C #, iar CLR se face pentru programele scrise în C #, în același mod ca și pentru programele de pe VB.NET. J #, și altele.
Limba Nume Editare
Simbolul „#“ (oktotorp) în limba titlului poate fi interpretat ca două perechi de profesioniști ++ ++, sugerand un nou pas în comparație cu C ++ (ca un pas de la C la C ++) dezvoltarea limbajului și simbol ca muzical ascuțit. împreună cu componenta literei C în numele în limba engleză a nota C ascuțite (Ing. C ascuțite). Oktotorp „#“ este adesea menționată ca „Sharp“ (din engleză ascuțite.) Din cauza similitudinii sale cu Diez „♯“, de unde și denumirea limbii - „Si Sharp“.
standardizarea normelor
versiune Editare
Versiunea 1.0 Editare
Prima versiune de C # care amintește de Java 1.4 oportunitățile, mai multe dintre lor expansiune: în C # au proprietăți (. Privind în codul ca un câmp al obiectului, ci, de fapt, cauza referindu-se la ele metode de clasă), indexatorii (cum ar fi proprietăți, dar are un indice de parametru array) evenimente. delegați. cicluri foreach. structură. a trecut prin valoare, conversia automată a încorporat în tipuri de obiecte, atunci când este necesar (box), atribute, built-in interacțiunea cu codul unmanaged (DLL. com) și așa mai departe.
În plus, în C #, sa decis să transfere unele dintre caracteristicile C ++, absent în Java: tipuri fără semn, operații imperative (cu unele restricții, spre deosebire de C ++), parametrii de transmisie în metoda link-ul. metode cu un număr variabil de parametri, goto operatorului. De asemenea, în C # a lăsat o capacitate limitată de a lucra cu indicii - în locurile special marcate de cod nesigure și cuvânt, specificând o opțiune specială compilator.
Versiunea 2.0 Editare
Noile caracteristici în versiunea 2.0
Versiunea 3.0 Editare
Noile caracteristici în versiunea 3.0
În C # 3.0 introduce următoarele adăugări radicale limba:
- selectați cuvinte cheie, de la, în cazul în care. care permite de a face de interogări SQL. XML. colecții, și așa mai departe. n. (cerere integrată în limbaj, Query Language integrat. sau LINQ)
- Inițializarea obiectului împreună cu proprietățile sale:
Acesta poate fi scris ca