2.1 C# va boshqa dasturlash tillarida ishlash (Pascal, C++)
2.2 C# dasturlash tili va uning imkoniyatlari
2.3 C# dasturlash tilida interfeyslar va dialoglar bilan ishlash
III. XULOSA IV. FOYDALANILGAN ADABIYOTLAR V. ILOVA
KIRISH 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 NETplatformasi 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 NET5 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 NETplatforma 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 NETFramework bilan ishlash uchun maxsus yaratilgan, ammo NET tushunchasining o'zi biroz kengroq. Bill Geyts bir paytlar NETplatformasi Microsoft yaratgan eng yaxshi narsa deb aytgan edi. Ehtimol, u haq edi. NETramkasi dasturlarni yaratish uchun kuchli asos yaratadi. Uning asosiy xususiyatlari:
Bir nechta tillarni qo'llab-quvvatlash. Platforma Common Language Runtime (CLR) ga asoslangan bo'lib, uning yordamida NETbir nechta tillarni qo'llab-quvvatlaydi: C # bilan bir qatorda VB.NET, C ++, F #, shular jumlasidan. NETbilan bog'langan boshqa tillarning turli xil dialektlarini o'z ichiga oladi, masalan, Delphi. NET. Tuzilganida, ushbu tillarning har qanday biridagi kod NETplatformasi 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.
O'zaro faoliyat platforma. NETko'chma (ba'zi cheklovlar bilan). Masalan, hozirgi vaqtda platformaning so'nggi versiyasi - NET5 eng zamonaviy Windows, MacOS, Linux operatsion tizimlarida qo'llab-quvvatlanadi. NETplatformasidagi turli xil texnologiyalardan foydalangan holda siz C # da turli xil platformalar uchun dasturlar ishlab chiqishingiz mumkin - Windows, MacOS, Linux, Android, iOS, Tizen.
Kuchli sinf kutubxonasi. NETbarcha 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 NETsinf kutubxonasidan foydalanamiz.
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, ADONETva 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. ASPNETveb-saytlari va veb-ilovalarni yaratish uchun.
Ishlash. Bir qator testlarda NET5 veb-ilovalari bir qator toifadagi boshqa texnologiyalar bilan qurilgan veb-dasturlardan ustun turadi. NET5 dasturlari, asosan, yuqori ishlashga ega.
Shuningdek, C # tili va NETramkasining 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 NETCore
Shuni ta'kidlash kerakki NETuzoq vaqt davomida asosan NETFramework deb nomlangan Windows platformasi sifatida rivojlanib kelgan. 2019 yilda ushbu platformaning so'nggi versiyasi - NETFramework 4.8 chiqdi.
2014 yildan beri Microsoft muqobil platformani ishlab chiqara boshladi - NETCore, u allaqachon turli xil platformalar uchun mo'ljallangan va eskirgan NETFramework-ning barcha xususiyatlarini o'zlashtirishi va yangi funksiyalar qo'shishi kerak edi. Keyin Microsoft ushbu platformaning bir qator versiyalarini doimiy ravishda chiqardi: NETCore 1, NETCore 2, NETCore 3. NETCore 3.0 ning mantiqiy rivojlanishi ushbu qo'llanmada muhokama qilingan NET5 edi. Shuning uchun birinchi navbatda NETFrameworkni ajratib ko'rsatish kerak. Windows va NET5. o'zaro faoliyat platformasi. Ushbu qo'llanmada C # haqida NET5 bilan birgalikda gaplashamiz, chunki u hozirgi platforma.
Shuningdek, 2004 yilda yaratilgan va Linux va MacOS uchun NETFramework-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 NET6 yangi versiyasi chiqqandan keyin NET6 Mono platformasini o'z ichiga olishi rejalashtirilgan.