C# 0 va. Net bugungi kunda C# dasturlash tili it sohasidagi eng kuchli, tez rivojlanayotgan va talabga javob beradigan tillardan biri hisoblanadi
C# 9.0 va .NET
Bugungi kunda C# dasturlash tili IT sohasidagi eng kuchli, tez rivojlanayotgan va talabga javob beradigan tillardan biri hisoblanadi. Hozirgi vaqtda unda turli xil dasturlar yozilgan: kichik stol dasturlaridan tortib to har kuni millionlab foydalanuvchilarga xizmat ko'rsatadigan yirik veb-portallar va veb-xizmatlar.
C# endi yosh til emas va .NET platformasi uzoq yo'lni bosib o'tdi. Tilning birinchi versiyasi 2002 yil fevral oyida Microsoft Visual Studio .NET-ning chiqarilishi bilan birga chiqdi. Tilning amaldagi versiyasi - C# 9.0, 2020 yil 10-noyabrda .NET 5 bilan birga chiqarilgan.
C# - bu C ga o'xshash sintaksisga ega til va bu jihatdan C++ va Java-ga yaqin. Shuning uchun, agar siz ushbu tillardan birini yaxshi bilsangiz, C# ni o'rganish osonroq bo'ladi.
C # ob'ektga yo'naltirilgan bo'lib, bu jihatdan Java va C ++ dan juda ko'p narsalarni oldi. Masalan, C # polimorfizm, vorislik, operatorning haddan tashqari yuklanishi, statik yozishni qo'llab-quvvatlaydi. Ob'ektga yo'naltirilgan yondashuv katta va lekin shu bilan birga moslashuvchan, kengaytiriladigan va kengaytiriladigan dasturlarni yaratish muammolarini hal qilishga imkon beradi. C # rivojlanishda davom etmoqda va har bir yangi versiya bilan lambdalar, dinamik bog'lanish, asenkron usullar va boshqalar kabi yanada qiziqarli funksiyalar paydo bo'lyapti.
.NET platformasining roli
Odamlar C # deb aytganda, ular ko'pincha .NET platforma texnologiyalarini (Windows Forms, WPF, ASP.NET, Xamarin) tushunishadi. Biroq, bu tushunchalar bir-biriga bog'liq bo'lsa-da, ularni taqqoslash noto'g'ri. C# tili .NET Framework bilan ishlash uchun maxsus yaratilgan, ammo .NET tushunchasining o'zi biroz kengroq.
Bill Geyts bir paytlar .NET platformasi Microsoft yaratgan eng yaxshi narsa deb aytgan edi. Ehtimol, u haq edi. .NET ramkasi dasturlarni yaratish uchun kuchli asos yaratadi. Uning asosiy xususiyatlari:
1. Bir nechta tillarni qo'llab-quvvatlash. Platforma Common Language Runtime (CLR) ga asoslangan bo'lib, uning yordamida .NET bir nechta tillarni qo'llab-quvvatlaydi: C # bilan bir qatorda VB.NET, C ++, F #, shular jumlasidan. .NET bilan bog'langan boshqa tillarning turli xil dialektlarini o'z ichiga oladi, masalan, Delphi. NET. Tuzilganida, ushbu tillarning har qanday biridagi kod .NET platformasi uchun assambleyerning bir turi bo'lgan Umumiy O'rta Til (CIL) tarkibiga yig'iladi. Shuning uchun, ma'lum sharoitlarda biz bitta dasturning alohida modullarini alohida tillarda tayyorlashimiz mumkin.
2. O'zaro faoliyat platforma. .NET ko'chma (ba'zi cheklovlar bilan). Masalan, hozirgi vaqtda platformaning so'nggi versiyasi - .NET 5 eng zamonaviy Windows, MacOS, Linux operatsion tizimlarida qo'llab-quvvatlanadi. .NET platformasidagi turli xil texnologiyalardan foydalangan holda siz C # da turli xil platformalar uchun dasturlar ishlab chiqishingiz mumkin - Windows, MacOS, Linux, Android, iOS, Tizen.
3. Kuchli sinf kutubxonasi. .NET barcha qo'llab-quvvatlanadigan tillar uchun bitta sinf kutubxonasini taqdim etadi. Va har qanday dasturni C # -ga yozmoqchimiz - matn muharriri, suhbat xonasi yoki murakkab veb-sayt - bu holda biz .NET sinf kutubxonasidan foydalanamiz.
4. Texnologiyalarning xilma-xilligi. Umumiy tilni ishlash vaqti CLR va asosiy sinf kutubxonasi dasturchilar dasturlarni yaratish uchun foydalanishi mumkin bo'lgan texnologiyalar to'plamining asosidir.
Masalan, ADO.NET va Entity Framework Core ushbu texnologiya to'plamidagi ma'lumotlar bazalari bilan ishlashga mo'ljallangan. Boy interfeysga ega bo'lgan grafik dasturlarni yaratish uchun - WPF va UWP texnologiyalari, oddiyroq grafik dasturlarni yaratish uchun - Windows Forms. Mobil ilovalarni ishlab chiqish uchun - Xamarin. ASP.NET veb-saytlari va veb-ilovalarni yaratish uchun.
5. Ishlash. Bir qator testlarda .NET 5 veb-ilovalari bir qator toifadagi boshqa texnologiyalar bilan qurilgan veb-dasturlardan ustun turadi. .NET 5 dasturlari, asosan, yuqori ishlashga ega.
Shuningdek, C # tili va .NET ramkasining axlatni avtomatik yig'ish kabi xususiyati ham e'tiborga loyiqdir. Bu shuni anglatadiki, aksariyat hollarda biz C ++ dan farqli o'laroq xotirani bo'shatish haqida qayg'urmasligimiz kerak. Yuqoridagi umumiy tilni ishlash vaqti CLR o'zi axlat yig'uvchini chaqiradi va xotirani tozalaydi. .NET Framework va .NET Core
Shuni ta'kidlash kerakki .NET uzoq vaqt davomida asosan .NET Framework deb nomlangan Windows platformasi sifatida rivojlanib kelgan. 2019 yilda ushbu platformaning so'nggi versiyasi - .NET Framework 4.8 chiqdi.
2014 yildan beri Microsoft muqobil platformani ishlab chiqara boshladi - .NET Core, u allaqachon turli xil platformalar uchun mo'ljallangan va eskirgan .NET Framework-ning barcha xususiyatlarini o'zlashtirishi va yangi funksiyalar qo'shishi kerak edi. Keyin Microsoft ushbu platformaning bir qator versiyalarini doimiy ravishda chiqardi: .NET Core 1, .NET Core 2, .NET Core 3. .NET Core 3.0 ning mantiqiy rivojlanishi ushbu qo'llanmada muhokama qilingan .NET 5 edi. Shuning uchun birinchi navbatda .NET Frameworkni ajratib ko'rsatish kerak. Windows va .NET 5. o'zaro faoliyat platformasi. Ushbu qo'llanmada C # haqida .NET 5 bilan birgalikda gaplashamiz, chunki u hozirgi platforma.
Shuningdek, 2004 yilda yaratilgan va Linux va MacOS uchun .NET Framework-ning ochiq manbali versiyasini taqdim etgan Mono platformasini ham eslatib o'tish kerak. Mono-dan foydalanib, o'zaro faoliyat platformali C # dasturlarini yaratish mumkin edi. Mono hali ham ishlatilmoqda. Masalan, C # yordamida Android va iOS uchun mobil ilovalarni yaratish texnologiyasi bo'lgan Xamarin Mono-dan foydalanadi. Ammo kelajakda .NET 6 yangi versiyasi chiqqandan keyin .NET 6 Mono platformasini o'z ichiga olishi rejalashtirilgan. http://muhaz.org