C # etiketinin təsviri

C # ("kəskin görün") yüksək səviyyəli, statik şəkildə yazılmış, Microsoft tərəfindən hazırlanmış obyekt yönümlü proqramlaşdırma dilidir. C # kodu ümumiyyətlə .NET Framework və .NET Core daxil olmaqla, Microsoft .NET alətləri və işləmə anbarına yönəldilmişdir. Rəsmi C # və ya C # spesifikasiyasında yazılmış kod sualları üçün bu etiketi istifadə edin. Ən suallar həmçinin [. Net] (. NET Framework), [.net-core] və ya [.net-standart] kimi bir hədəf. NET platforma üçün bir tag lazımdır.

, Microsoft tərəfindən yaradılmış çoxaradiqm, idarə olunan, obyekt yönümlü proqramlaşdırma dilidir. C #, .NET Core, .NET Framework, Mono və Xamarin kimi hər hansı bir .NET tətbiqi ilə istifadə edilə bilər.

Versiya 1.0 / 1.2 və 2.0 C # təqdim edildi və ECMAISO / IEC standartları olaraq təsdiq edildi. ECMA'nın ən son versiyası Microsoft C # 5.0 spesifikasiyasına cavab verir . Dil xüsusiyyətləri Microsoft-dan C # 3.0 və C # 5.0, həmçinin C # 6.0 layihəsi üçün də mövcuddur.

Dil növü sistemi əvvəlcə statik idi, yalnız açıq dəyişən bəyannamələrə icazə verildi. var (C # 3.0) və dynamic (C # 4.0) tətbiqi ona dəyişənlərin gizli yazılması və növlərinin dinamik növlərinin istifadəsi üçün növ çıxışı istifadə etməyə imkan vermişdir. Anonim metodlara (C # 2.0) və lambda ifadələrinə (C # 3.0) xüsusi dəstək olanlar, funksional proqramlaşdırma üçün bir dil istifadə etməyə imkan verir.

C # 5.0 , asynchronous funksiya çağırışlarının istifadəsini asanlaşdırmaq üçün asyncawait açar sözlər təqdim edir.

C # 6.0'da sıfır yayılması operatoru təqdim olunur ?. istisna filtreler, simli interpolasiya və sadə kod yazmağa kömək edən bir çox digər funksiyalar.

C # 7.0-də , birdən çox açıq arqumentlər, desen eşleme, geri dönüş dəyərləri, nümunələr, dekonstruksiya, yerli funksiyalar və bəzi digərləri ilə təqdimatlar və switch .

C # 7.1-də universal naxış eşleme, tülələn elementlərin adları, default əlyazma ifadələri, asinxron əsas və digərləri təqdim edilir.

C # 7.2 , private protected , sonrakı olmayan adlandırılmış arqumentlər, əsas detaydan sonra rəqəmsal ayırıcı, şərti ifadə ref, dəyər tipləri üçün istinad semantikası və digərləri təqdim edir.

C # 7.3 təhlükəsiz kodun məhsuldar olmasına imkan verən funksiyaları, təhlükəli kod, yeni kompilyator variantları kimi, bir sahədəki dəyişən bəyannamələrin, mülkiyyətin və konstruktorun başlanğıclarını və digərlərini istifadə edir.

C # 8.0 kodu, dəyişənin sıfır ola bilməyəcəyini (məsələn, string? foo sıfır ola bilən bir dəyişən) göstərmədikdə, sıfırdan mümkün olan dəyişikliklər haqqında kompilyator xəbərdarlıqlarını yaradan null istinad nümunələrini təqdim edəcək, asynchronous mövzuları Xüsusilə interfeyslərin dəyişməsinin qarşısını almaq üçün xüsusilə-YoT və bulud inteqrasiyası və default interfeys üsulları, eləcə də bəzi digər təkmilləşdirmələr.

Kompilyasiya, adətən, ümumi dil dilində işləmə müddəti (CLR) müddətində öz koduna (və önbelleğe alınmış) JIT-tərtib edilmiş olan Microsoft Intermediate >NGen ( .NET Framework ) və AOT (Mono üçün) kimi parametrlər C # kodunun birbaşa öz şəkillərinə daxil olmasını nəzərdə tutur. Bundan əlavə, bəzi çərçivələr (məsələn, .NET Micro Framework) JIT olmadan CIL tərcüməçiləri kimi çıxış edir.

C # -də generalizasiyalar, qismən C ++ şablonlarına (şablonlara kompilyasiya vaxtında icazə verilir) və ya Java ümumiləşdirmələrinə (tipi silmək üçün istifadə olunur) qarşı iş vaxtında təqdim edilir.

Android, Mac, iOS, tvOS və watchOS, Silverlight / Moonlight (brauzer / brauzer / brauzer / brauzer) üzrə Xamarin proqramları üçün Mono, Windows üçün .NET Core , MacOS və Linux üçün .NET Framework (Masaüstü / server / mobil cihazlar üçün) Mobil), Compact Framework (mobil qurğular üçün) və Micro Framework (quraşdırılmış qurğular üçün) geniş platformalar üçün mövcuddur.


Salam Dünya Misal:

 using System; class Hello { static void Main() { Console.WriteLine("Hello, World!"); } } 

Dərsləri istifadə edərək Hello World:

 using System; namespace HelloWorldUsingClasses { class ExampleClass { string exampleString = "Hello World!"; public ExampleClass() { Console.WriteLine(exampleString); } } class Program { static void Main(string[] args) { ExampleClass objHelloWorld = new ExampleClass(); } } } 

Resurslar


Suallarcavablar


Resurslar


kitablar


Dərsliklər


C # dilinin gələcəyi

Təqdim olun və burada yeni funksiyalar təklif edin .


Demo layihələri


# Online IDE ilə


C # Offline IDE

Etiketlər