#dars 7
METODLAR (FUNKSIYALAR)
Metodlar - muayyan operatsiyalar bajaradigan kodlar to'plami. Yaʼni ayrim operatsiyalar bajaradigan kodlangan blok.
Usullarning umumiy ta'rifi quyidagicha:
[Modifikatorlar] MetodTuri MetodNomi ([parametrlar])
{
// Kod
}
Metodlar 2 xil boʻladi:
1) Qiymat qaytaradigan metod.
2) Qiymat qaytarmaydigan metod.
Qiymat qaytaradigan metodni eʼlon qilishda oldidan qaytaradigan qiymatining turi yoziladi. Qiymat qaytarmaydigan metodni esa void turida eʼlon qilinadi.
Misol:
using System;
namespace HelloApp
{
class Program
{
static void Main(string[] args)
{
Salom();
Xayr();
Console.ReadKey();
}
static void Salom()
{
Console.WriteLine("Salom");
}
static void Xayr()
{
Console.WriteLine"Xayr");
}
}
}
👉 https://t.me/joinchat/AAAAAE-4xblrvxbMoNr4sQ
METODLAR (FUNKSIYALAR)
Metodlar - muayyan operatsiyalar bajaradigan kodlar to'plami. Yaʼni ayrim operatsiyalar bajaradigan kodlangan blok.
Usullarning umumiy ta'rifi quyidagicha:
[Modifikatorlar] MetodTuri MetodNomi ([parametrlar])
{
// Kod
}
Metodlar 2 xil boʻladi:
1) Qiymat qaytaradigan metod.
2) Qiymat qaytarmaydigan metod.
Qiymat qaytaradigan metodni eʼlon qilishda oldidan qaytaradigan qiymatining turi yoziladi. Qiymat qaytarmaydigan metodni esa void turida eʼlon qilinadi.
Misol:
using System;
namespace HelloApp
{
class Program
{
static void Main(string[] args)
{
Salom();
Xayr();
Console.ReadKey();
}
static void Salom()
{
Console.WriteLine("Salom");
}
static void Xayr()
{
Console.WriteLine"Xayr");
}
}
}
👉 https://t.me/joinchat/AAAAAE-4xblrvxbMoNr4sQ
Telegram
C# tilida Dasturlash ( WPF, Xamarin, Unity, WinForms, ASP.NET Core, Entity Framework )
Dasturchi boʻlishga qiziquvchilar va C# tilini oʻrganayotganlar uchun.
#qiziqarli
Dunyoning birinchi dasturchisi ingliz ayol Ada Lovelace boʻlgan. XIX asrning o'rtalarida u zamonaviy EHM ning prototipi - Charlz Babbajning tahlil mashinasini ishlab chiqdi, u bilan harakatlanuvchi suyuqlik energiyasini tejash qonunini ifodalovchi Bernulli tenglamasini echish mumkin edi.
👉 https://t.me/joinchat/AAAAAE-4xblrvxbMoNr4sQ
Dunyoning birinchi dasturchisi ingliz ayol Ada Lovelace boʻlgan. XIX asrning o'rtalarida u zamonaviy EHM ning prototipi - Charlz Babbajning tahlil mashinasini ishlab chiqdi, u bilan harakatlanuvchi suyuqlik energiyasini tejash qonunini ifodalovchi Bernulli tenglamasini echish mumkin edi.
👉 https://t.me/joinchat/AAAAAE-4xblrvxbMoNr4sQ
#dars 8
METOD PARAMETRLARI
Metod ichida ishlatish uchun tashqaridan beriladigan oʻzgaruvchilar parametrlar deyiladi. Metotlarda bir nechta parametr boʻlishi mumkin. Misol uchun:
class Program
{
static void Main(string[] args)
{
// result oʻzgaruvchisiga Sum()
// metodi qaytargan qiymatni
// yuklaymiz. Bu yerda 10 va 15
// metod parametrlari.
int result = Sum(10, 15);
Console.WriteLine(result); // 25
Console.ReadKey();
}
static int Sum(int x, int y)
{
// Metod ichida x va y parametrlari
// yigʻindisini qaytaramiz. Qiymat
// qaytarish return kalit soʻzi orqali
// amalga oshiriladi.
return x + y;
}
}
👉 https://t.me/joinchat/AAAAAE-4xblrvxbMoNr4sQ
METOD PARAMETRLARI
Metod ichida ishlatish uchun tashqaridan beriladigan oʻzgaruvchilar parametrlar deyiladi. Metotlarda bir nechta parametr boʻlishi mumkin. Misol uchun:
class Program
{
static void Main(string[] args)
{
// result oʻzgaruvchisiga Sum()
// metodi qaytargan qiymatni
// yuklaymiz. Bu yerda 10 va 15
// metod parametrlari.
int result = Sum(10, 15);
Console.WriteLine(result); // 25
Console.ReadKey();
}
static int Sum(int x, int y)
{
// Metod ichida x va y parametrlari
// yigʻindisini qaytaramiz. Qiymat
// qaytarish return kalit soʻzi orqali
// amalga oshiriladi.
return x + y;
}
}
👉 https://t.me/joinchat/AAAAAE-4xblrvxbMoNr4sQ
Telegram
C# tilida Dasturlash ( WPF, Xamarin, Unity, WinForms, ASP.NET Core, Entity Framework )
Dasturchi boʻlishga qiziquvchilar va C# tilini oʻrganayotganlar uchun.
#dars 9
REKURSIV FUNKSIYALAR
Rekursiv funksiya deb ichida oʻziga murojaat qiladigan funksiyaga aytiladi.
Misol uchun sonning faktorialini hisoblaydigan funksiyada rekursivlikdan foydalanamiz:
static int Factorial(int x)
{
// Agar funksiya parametrida 0 kiritilsa
// 0! ni yaʼni 1 ni qaytaradi
if (x == 0)
{
return 1;
}
// Agar noldan katta son boʻlsa, oʻsha
// sonnioʻzidan oldingi sonning
// faktorialiga koʻpaytmasini qaytaradi.
else
{
return x * Factorial(x - 1);
}
}
👉 https://t.me/joinchat/AAAAAE-4xblrvxbMoNr4sQ
REKURSIV FUNKSIYALAR
Rekursiv funksiya deb ichida oʻziga murojaat qiladigan funksiyaga aytiladi.
Misol uchun sonning faktorialini hisoblaydigan funksiyada rekursivlikdan foydalanamiz:
static int Factorial(int x)
{
// Agar funksiya parametrida 0 kiritilsa
// 0! ni yaʼni 1 ni qaytaradi
if (x == 0)
{
return 1;
}
// Agar noldan katta son boʻlsa, oʻsha
// sonnioʻzidan oldingi sonning
// faktorialiga koʻpaytmasini qaytaradi.
else
{
return x * Factorial(x - 1);
}
}
👉 https://t.me/joinchat/AAAAAE-4xblrvxbMoNr4sQ
Telegram
C# tilida Dasturlash ( WPF, Xamarin, Unity, WinForms, ASP.NET Core, Entity Framework )
Dasturchi boʻlishga qiziquvchilar va C# tilini oʻrganayotganlar uchun.
#qiziqarli
Dasturlash - bu 10% ilm-fan, 20% yaratuvchanlik va 70% ilm-fan orqali yaratish uchun ketadigan harakat.
👉 https://t.me/joinchat/AAAAAE-4xblrvxbMoNr4sQ
Dasturlash - bu 10% ilm-fan, 20% yaratuvchanlik va 70% ilm-fan orqali yaratish uchun ketadigan harakat.
👉 https://t.me/joinchat/AAAAAE-4xblrvxbMoNr4sQ
Telegram
C# tilida Dasturlash ( WPF, Xamarin, Unity, WinForms, ASP.NET Core, Entity Framework )
Dasturchi boʻlishga qiziquvchilar va C# tilini oʻrganayotganlar uchun.
#dars 10
ENUM OPERATORI
C # dagi primitiv ma'lumotlar turlaridan tashqari, enum yoki raqamlash turi ham mavjud. U enum kalit soʻzi yordamida e'lon qilinadi, keyin enum nomi ko'rsatiladi. Keyin ro'yxat elementlari ro'yxati vergul bilan ajratilib yoziladi.
Misol uchun:
enum Kunlar
{
Dushanba,
Seshanba,
Chorshanba,
Payshanba,
Juma,
Shanba,
Yakshanba
}
Enum elementlariga tartib raqamni ham qoʻlda kiritish mumkin. Masalan:
enum Kunlar
{
Dushanba = 1,
Seshanba,
Chorshanba
}
Bunda keyingi elementlar kiritilgan indeksdan keyin tartib bilan raqamlanadi.
Enum ni chaqirish:
Kunlar kun;
kun = Kunlar.Dushanba;
// Yoki "kun = 0" ham
// Dushanbaga teng.
👉 https://t.me/joinchat/AAAAAE-4xblrvxbMoNr4sQ
ENUM OPERATORI
C # dagi primitiv ma'lumotlar turlaridan tashqari, enum yoki raqamlash turi ham mavjud. U enum kalit soʻzi yordamida e'lon qilinadi, keyin enum nomi ko'rsatiladi. Keyin ro'yxat elementlari ro'yxati vergul bilan ajratilib yoziladi.
Misol uchun:
enum Kunlar
{
Dushanba,
Seshanba,
Chorshanba,
Payshanba,
Juma,
Shanba,
Yakshanba
}
Enum elementlariga tartib raqamni ham qoʻlda kiritish mumkin. Masalan:
enum Kunlar
{
Dushanba = 1,
Seshanba,
Chorshanba
}
Bunda keyingi elementlar kiritilgan indeksdan keyin tartib bilan raqamlanadi.
Enum ni chaqirish:
Kunlar kun;
kun = Kunlar.Dushanba;
// Yoki "kun = 0" ham
// Dushanbaga teng.
👉 https://t.me/joinchat/AAAAAE-4xblrvxbMoNr4sQ
Telegram
C# tilida Dasturlash ( WPF, Xamarin, Unity, WinForms, ASP.NET Core, Entity Framework )
Dasturchi boʻlishga qiziquvchilar va C# tilini oʻrganayotganlar uchun.
#qiziqarli
DUNYONING ENG YAXSHI DASTURCHILARI QAYSI DAVLATDA YASHASHADI?
Ko'pchilik AQSH da deb javob berishi mumkin. Sababi AQSh da Bill Geyts, Ken Thompson, Dennis Ritchi va Donald Knut kabi dasturchilar mashxur. Ammo Hindiston o'z universitetlari bilan mashhur, masalan, Hindiston Texnologiya Instituti (IIT) va Rossiya xakerlari juda kuchli hisoblanadi. HackerRank tadqiqotchilari ushbu savolga javob berishda yordam berish uchun dasturchilar uchun o'n minglab programma tanlovlarini muntazam o'tkazib turishadi. Dunyo bo'ylab yuz minglab ishlab chiquvchilar turli tillardagi dasturlar va dasturiy taʼminotlar bilan qatnashadilar: Pythondan boshlab xavfsizlik algoritmlari va tarmoq tizimlarga qadar. HackerRank ma'lumotlariga ko'ra, eng iste'dodli dasturchilar Rossiya va Xitoyda yashaydi. Xitoylik dasturchilar matematika, funktsional dasturlash va ma'lumotlar strukturasi muammolari bo'yicha barcha boshqa davlatlarni ortda qoldirishadi, ruslar esa eng mashhur va raqobatbardosh algoritmlarda ustunlik qiladi. Qo'shma Shtatlar va Hindiston raqobatchilarning eng ko'p sonini ta'minlasalar-da, ular navbati bilan 28 va 31-o'rinni egallashadi.
👉 https://t.me/joinchat/AAAAAE-4xblrvxbMoNr4sQ
DUNYONING ENG YAXSHI DASTURCHILARI QAYSI DAVLATDA YASHASHADI?
Ko'pchilik AQSH da deb javob berishi mumkin. Sababi AQSh da Bill Geyts, Ken Thompson, Dennis Ritchi va Donald Knut kabi dasturchilar mashxur. Ammo Hindiston o'z universitetlari bilan mashhur, masalan, Hindiston Texnologiya Instituti (IIT) va Rossiya xakerlari juda kuchli hisoblanadi. HackerRank tadqiqotchilari ushbu savolga javob berishda yordam berish uchun dasturchilar uchun o'n minglab programma tanlovlarini muntazam o'tkazib turishadi. Dunyo bo'ylab yuz minglab ishlab chiquvchilar turli tillardagi dasturlar va dasturiy taʼminotlar bilan qatnashadilar: Pythondan boshlab xavfsizlik algoritmlari va tarmoq tizimlarga qadar. HackerRank ma'lumotlariga ko'ra, eng iste'dodli dasturchilar Rossiya va Xitoyda yashaydi. Xitoylik dasturchilar matematika, funktsional dasturlash va ma'lumotlar strukturasi muammolari bo'yicha barcha boshqa davlatlarni ortda qoldirishadi, ruslar esa eng mashhur va raqobatbardosh algoritmlarda ustunlik qiladi. Qo'shma Shtatlar va Hindiston raqobatchilarning eng ko'p sonini ta'minlasalar-da, ular navbati bilan 28 va 31-o'rinni egallashadi.
👉 https://t.me/joinchat/AAAAAE-4xblrvxbMoNr4sQ
#dars 11
OBʼEKTGA YOʻNALTIRILGAN DASTURLASH
1. SINF(CLASS)LAR
Sinf bu - ob'ektning tavsifi obʼekt esa sinfning namunasidir. Quyidagi namunaga eʼtibor bering. Bizda ichida ism, yosh va boshqa xususiyatlar bor bo'lgan odam sinfi bor, ya'ni namuna, bu namunani sinf deb atash mumkin. Ushbu sinf obʼektlari turli xil bo'lishi mumkin, masalan, ayrim kishilar bir ismga ega, boshqalari esa boshqa nomga ega. Haqiqiy shaxs shu sinfning ob'ektini ifodalaydi.
using System;
namespace ProgramName
{
class Person
{
public string name; // ismi
public int age; // yoshi
public void GetInfo()
{
Console.WriteLine("Ismi: "+name+"\nYoshi: "+age);
}
}
class Program
{
static void Main(string[] args)
{
Person tom;
Console.ReadKey();
}
}
}
👉 https://t.me/joinchat/AAAAAE-4xblrvxbMoNr4sQ
OBʼEKTGA YOʻNALTIRILGAN DASTURLASH
1. SINF(CLASS)LAR
Sinf bu - ob'ektning tavsifi obʼekt esa sinfning namunasidir. Quyidagi namunaga eʼtibor bering. Bizda ichida ism, yosh va boshqa xususiyatlar bor bo'lgan odam sinfi bor, ya'ni namuna, bu namunani sinf deb atash mumkin. Ushbu sinf obʼektlari turli xil bo'lishi mumkin, masalan, ayrim kishilar bir ismga ega, boshqalari esa boshqa nomga ega. Haqiqiy shaxs shu sinfning ob'ektini ifodalaydi.
using System;
namespace ProgramName
{
class Person
{
public string name; // ismi
public int age; // yoshi
public void GetInfo()
{
Console.WriteLine("Ismi: "+name+"\nYoshi: "+age);
}
}
class Program
{
static void Main(string[] args)
{
Person tom;
Console.ReadKey();
}
}
}
👉 https://t.me/joinchat/AAAAAE-4xblrvxbMoNr4sQ
Telegram
C# tilida Dasturlash ( WPF, Xamarin, Unity, WinForms, ASP.NET Core, Entity Framework )
Dasturchi boʻlishga qiziquvchilar va C# tilini oʻrganayotganlar uchun.
#dars 12
KONSTRUKTORLAR
Konstruktor - sinf obʼyektining odatdagi qiymatini oʻrnatuvchi funksiya, yaʼni konstruktor obʼyektga boshlangʻich qiymat beradi yoki boshqa maqsadda ishlatilishi ham mumkin. Konstruktor eʼlon qilinganda uning nomi sinf nomi bilan bir xil boʻlishi lozim va oldiga hech qanday tur yozish shart emas. Konstruktorlar parametrlariga qarab bitta yoki bir nechta boʻlishi mumkin.
Misol uchun:
class Person
{
public string name;
public int age;
public Person() { name = "Nomaʼlum"; age = 18; }
// 1-konstruktor
public Person(string n) { name = n; age = 18; }
// 2-konstruktor
public Person(string n, int a) { name = n; age = a; }
// 3-konstruktor
public void GetInfo()
{
Console.WriteLine("Ism: " + name + "\nYosh: " + age);
}
}
👉 https://t.me/joinchat/AAAAAE-4xblrvxbMoNr4sQ
KONSTRUKTORLAR
Konstruktor - sinf obʼyektining odatdagi qiymatini oʻrnatuvchi funksiya, yaʼni konstruktor obʼyektga boshlangʻich qiymat beradi yoki boshqa maqsadda ishlatilishi ham mumkin. Konstruktor eʼlon qilinganda uning nomi sinf nomi bilan bir xil boʻlishi lozim va oldiga hech qanday tur yozish shart emas. Konstruktorlar parametrlariga qarab bitta yoki bir nechta boʻlishi mumkin.
Misol uchun:
class Person
{
public string name;
public int age;
public Person() { name = "Nomaʼlum"; age = 18; }
// 1-konstruktor
public Person(string n) { name = n; age = 18; }
// 2-konstruktor
public Person(string n, int a) { name = n; age = a; }
// 3-konstruktor
public void GetInfo()
{
Console.WriteLine("Ism: " + name + "\nYosh: " + age);
}
}
👉 https://t.me/joinchat/AAAAAE-4xblrvxbMoNr4sQ
Telegram
C# tilida Dasturlash ( WPF, Xamarin, Unity, WinForms, ASP.NET Core, Entity Framework )
Dasturchi boʻlishga qiziquvchilar va C# tilini oʻrganayotganlar uchun.
#dars 13
"this" KALIT SOʻZI
Ushbu kalit so'z sinfga havola misolida ishlatiladi. Qanday vaziyatda uni ishlatishimiz mumkin? Quyidagi misolda uchta konstruktor berilgan. Barcha uchta konstruktor bir xil turdagi operatsiyalarni amalga oshiradi - ism va yoshga qiymat beradi. Bunda takroriy operatsiyalar bo'lishi mumkin. Biz konstruktorlarning funksiyalarini takrorlay olmaymiz, lekin "this" kalit so'z orqali bir konstruktordan boshqasiga murojaat qilib, parametrlar uchun kerakli qiymatlarni olamiz:
class Person
{
public string name;
public int age;
public Person() : this("Nomaʼlum")
{
}
public Person(string name) : this(name, 18)
{
}
public Person(string name, int age)
{
this.name = name;
this.age = age;
}
public void GetInfo()
{
Console.WriteLine("Ism: " + name + "Yosh: " + age);
}
}
Bu misolda birinchi konstruktor ikkinchisini, ikkinchisi esa uchinchisini chaqiradi. Kompilyator parametrlar soni va turi bo'yicha qaysi konstruktor chaqirilayotganligini biladi.
👉 https://t.me/joinchat/AAAAAE-4xblrvxbMoNr4sQ
"this" KALIT SOʻZI
Ushbu kalit so'z sinfga havola misolida ishlatiladi. Qanday vaziyatda uni ishlatishimiz mumkin? Quyidagi misolda uchta konstruktor berilgan. Barcha uchta konstruktor bir xil turdagi operatsiyalarni amalga oshiradi - ism va yoshga qiymat beradi. Bunda takroriy operatsiyalar bo'lishi mumkin. Biz konstruktorlarning funksiyalarini takrorlay olmaymiz, lekin "this" kalit so'z orqali bir konstruktordan boshqasiga murojaat qilib, parametrlar uchun kerakli qiymatlarni olamiz:
class Person
{
public string name;
public int age;
public Person() : this("Nomaʼlum")
{
}
public Person(string name) : this(name, 18)
{
}
public Person(string name, int age)
{
this.name = name;
this.age = age;
}
public void GetInfo()
{
Console.WriteLine("Ism: " + name + "Yosh: " + age);
}
}
Bu misolda birinchi konstruktor ikkinchisini, ikkinchisi esa uchinchisini chaqiradi. Kompilyator parametrlar soni va turi bo'yicha qaysi konstruktor chaqirilayotganligini biladi.
👉 https://t.me/joinchat/AAAAAE-4xblrvxbMoNr4sQ
Telegram
C# tilida Dasturlash ( WPF, Xamarin, Unity, WinForms, ASP.NET Core, Entity Framework )
Dasturchi boʻlishga qiziquvchilar va C# tilini oʻrganayotganlar uchun.
#dars 14
STRUKTURALAR
Sinflar bilan bir qatorda C# da strukturalar shaxsiy ma'lumotlar turlarini yaratishning yana bir usuli hisoblanadi. Ko'pgina oʻzgaruvchi turlari, masalan, int, double va boshqalar strukturalardir.
Misol uchun, insonni ifodalovchi strukturani koʻramiz:
человека:
struct User
{
public string name;
public int age;
public void DisplayInfo()
{
Console.WriteLine("Ism: {0} Age: {1}", name, age);
}
}
Sinflar singari, strukturalar qiymatni o'zgaruvchilar orqali saqlashi va metodlar orqali amallar bajarishi mumkin. Yuqorida berilgan misolda ikki o'zgaruvchi inson nomini va yoshini saqlash uchun, DisplayInfo metodi esa ularni ekranga chiqarish uchun xizmat qiladi.
Ushbu strukturadan dasturda foydalanamiz:
using System;
namespace HelloApp
{
struct User
{
public string name;
public int age;
public void DisplayInfo()
{
Console.WriteLine("Ism: {0} Age: {1}", name, age);
}
}
class Program
{
static void Main(string[] args)
{
User tom;
tom.name = "Tom";
tom.age = 34;
tom.DisplayInfo();
Console.ReadKey();
}
}
}
👉 https://t.me/joinchat/AAAAAE-4xblrvxbMoNr4sQ
STRUKTURALAR
Sinflar bilan bir qatorda C# da strukturalar shaxsiy ma'lumotlar turlarini yaratishning yana bir usuli hisoblanadi. Ko'pgina oʻzgaruvchi turlari, masalan, int, double va boshqalar strukturalardir.
Misol uchun, insonni ifodalovchi strukturani koʻramiz:
человека:
struct User
{
public string name;
public int age;
public void DisplayInfo()
{
Console.WriteLine("Ism: {0} Age: {1}", name, age);
}
}
Sinflar singari, strukturalar qiymatni o'zgaruvchilar orqali saqlashi va metodlar orqali amallar bajarishi mumkin. Yuqorida berilgan misolda ikki o'zgaruvchi inson nomini va yoshini saqlash uchun, DisplayInfo metodi esa ularni ekranga chiqarish uchun xizmat qiladi.
Ushbu strukturadan dasturda foydalanamiz:
using System;
namespace HelloApp
{
struct User
{
public string name;
public int age;
public void DisplayInfo()
{
Console.WriteLine("Ism: {0} Age: {1}", name, age);
}
}
class Program
{
static void Main(string[] args)
{
User tom;
tom.name = "Tom";
tom.age = 34;
tom.DisplayInfo();
Console.ReadKey();
}
}
}
👉 https://t.me/joinchat/AAAAAE-4xblrvxbMoNr4sQ
Telegram
C# tilida Dasturlash ( WPF, Xamarin, Unity, WinForms, ASP.NET Core, Entity Framework )
Dasturchi boʻlishga qiziquvchilar va C# tilini oʻrganayotganlar uchun.
#qiziqarli
Apple, Facebook va Uber da dasturchilar qancha pul ishlashadi?
AQShda dasturchilarning o'rtacha ish haqi yiliga 126 ming dollarni tashkil etadi. Shundan, ish haqining o'zi 99 ming, qolganlari turli bonuslar va to'lovlardir. Bu ma'lumotlar Amerika IT-kompaniyalari daromadlari haqidagi ma'lumotlarni to'plash va tahlil qilish bilan shug'ullanadigan Paysa kompaniyasiga tegishli.
Biroq, Silikon vodiysidagi yirik kompaniyalarda maoshlar ancha yuqori. Misol uchun, Apple, Amazon, Uber kabi taniqli kompaniyalarda IT xodimlarining ish haqi yiliga 200 ming dollardan boshlanadi.
Eng yuqori ish haqi - Airbnb da - 312 ming dollar. Keyingi oʻrinlarda:
Uber ($ 292,000)
Twitter ($ 290,000)
Facebook ($ 285,000)
Snapchat ($ 252,000)
Google ($ 233,000)
Microsoft ($ 222,000)
Apple ($ 208,000)
Amazon ($ 203,000).
Shu bilan birga, kuchli uchtalikni egallagan kompaniyalar: Airbnb, Uber va Twitter, ish haqi barcha daromadlarning yarmidan kamini tashkil etadi. Airbnb va Uber xodimlarining yillik daromadi kompaniya aksiyalari tushishi yoki koʻtarilishiga bog'liq. Misol uchun, Uberda hech qanday bonuslar yo'q.
👉 https://t.me/joinchat/AAAAAE-4xblrvxbMoNr4sQ
Apple, Facebook va Uber da dasturchilar qancha pul ishlashadi?
AQShda dasturchilarning o'rtacha ish haqi yiliga 126 ming dollarni tashkil etadi. Shundan, ish haqining o'zi 99 ming, qolganlari turli bonuslar va to'lovlardir. Bu ma'lumotlar Amerika IT-kompaniyalari daromadlari haqidagi ma'lumotlarni to'plash va tahlil qilish bilan shug'ullanadigan Paysa kompaniyasiga tegishli.
Biroq, Silikon vodiysidagi yirik kompaniyalarda maoshlar ancha yuqori. Misol uchun, Apple, Amazon, Uber kabi taniqli kompaniyalarda IT xodimlarining ish haqi yiliga 200 ming dollardan boshlanadi.
Eng yuqori ish haqi - Airbnb da - 312 ming dollar. Keyingi oʻrinlarda:
Uber ($ 292,000)
Twitter ($ 290,000)
Facebook ($ 285,000)
Snapchat ($ 252,000)
Google ($ 233,000)
Microsoft ($ 222,000)
Apple ($ 208,000)
Amazon ($ 203,000).
Shu bilan birga, kuchli uchtalikni egallagan kompaniyalar: Airbnb, Uber va Twitter, ish haqi barcha daromadlarning yarmidan kamini tashkil etadi. Airbnb va Uber xodimlarining yillik daromadi kompaniya aksiyalari tushishi yoki koʻtarilishiga bog'liq. Misol uchun, Uberda hech qanday bonuslar yo'q.
👉 https://t.me/joinchat/AAAAAE-4xblrvxbMoNr4sQ
Telegram
C# tilida Dasturlash ( WPF, Xamarin, Unity, WinForms, ASP.NET Core, Entity Framework )
Dasturchi boʻlishga qiziquvchilar va C# tilini oʻrganayotganlar uchun.
#dars 15
XUSUSIYAT METODI (СВОЙСТВА)
C# tilida odatiy metodlardan tashqari maxsus xususiyat metodlari ham mavjud. Ular sinf maydonlariga osonlik bilan kirishni ta'minlaydi, ularning qiymatini oladi yoki o'rnatadi.
Misol uchun:
class Person
{
private string name;
public string Name
{
get
{
return name;
}
set
{
name = value;
}
}
}
Bu yerda yopiq name maydoni va ochiq name xususiyat metodi mavjud. Biz name xususiyat metodi orqali name oʻzgaruvchisiga qiymat berishimiz yoki qiymatini olishimiz mumkin. Bu yerda get orqali name ning qiymati olinadi va set orqali name ga qiymat beriladi.
Odatda xususiyat metodida get va set larning oʻzlari yoziladi.
👉 https://t.me/joinchat/AAAAAE-4xblrvxbMoNr4sQ
XUSUSIYAT METODI (СВОЙСТВА)
C# tilida odatiy metodlardan tashqari maxsus xususiyat metodlari ham mavjud. Ular sinf maydonlariga osonlik bilan kirishni ta'minlaydi, ularning qiymatini oladi yoki o'rnatadi.
Misol uchun:
class Person
{
private string name;
public string Name
{
get
{
return name;
}
set
{
name = value;
}
}
}
Bu yerda yopiq name maydoni va ochiq name xususiyat metodi mavjud. Biz name xususiyat metodi orqali name oʻzgaruvchisiga qiymat berishimiz yoki qiymatini olishimiz mumkin. Bu yerda get orqali name ning qiymati olinadi va set orqali name ga qiymat beriladi.
Odatda xususiyat metodida get va set larning oʻzlari yoziladi.
👉 https://t.me/joinchat/AAAAAE-4xblrvxbMoNr4sQ
Telegram
C# tilida Dasturlash ( WPF, Xamarin, Unity, WinForms, ASP.NET Core, Entity Framework )
Dasturchi boʻlishga qiziquvchilar va C# tilini oʻrganayotganlar uchun.
#dars 16
METODNI QAYTA YUKLASH
Ba'zida bir xil metodni yaratish kerak bo'ladi, lekin boshqa parametrlar bilan. Mavjud parametrlarga qarab, usulning muayyan koʻrinishi hosil boʻladi. Bu xususiyatni metodni qayta yuklash deb ham atashadi.
C# da biz bir xil nomdagi, lekin turli xil parametrlarga ega bo'lgan sinfda bir nechta metodlarni yaratishimiz mumkin.
Misol uchun:
class Calculator
{
public void Add(int a, int b)
{
int result = a + b;
Console.WriteLine("Result is {0}"result);
}
public void Add(int a, int b, int c)
{
int result = a + b + c;
Console.WriteLine("Result is {0}",result);
}
public void Add(double a, double b)
{
double result = a + b;
Console.WriteLine("Result is {0}", result);
}
}
class Program
{
static void Main(string[] args)
{
Calculator calc = new Calculator();
calc.Add(1, 2); // Natija = 3
calc.Add(1, 2, 3); // Natija = 6
calc.Add(1.4, 2.5); // Natija = 3.9
Console.ReadKey();
}
}
👉 https://t.me/joinchat/AAAAAE-4xblrvxbMoNr4sQ
METODNI QAYTA YUKLASH
Ba'zida bir xil metodni yaratish kerak bo'ladi, lekin boshqa parametrlar bilan. Mavjud parametrlarga qarab, usulning muayyan koʻrinishi hosil boʻladi. Bu xususiyatni metodni qayta yuklash deb ham atashadi.
C# da biz bir xil nomdagi, lekin turli xil parametrlarga ega bo'lgan sinfda bir nechta metodlarni yaratishimiz mumkin.
Misol uchun:
class Calculator
{
public void Add(int a, int b)
{
int result = a + b;
Console.WriteLine("Result is {0}"result);
}
public void Add(int a, int b, int c)
{
int result = a + b + c;
Console.WriteLine("Result is {0}",result);
}
public void Add(double a, double b)
{
double result = a + b;
Console.WriteLine("Result is {0}", result);
}
}
class Program
{
static void Main(string[] args)
{
Calculator calc = new Calculator();
calc.Add(1, 2); // Natija = 3
calc.Add(1, 2, 3); // Natija = 6
calc.Add(1.4, 2.5); // Natija = 3.9
Console.ReadKey();
}
}
👉 https://t.me/joinchat/AAAAAE-4xblrvxbMoNr4sQ
Telegram
C# tilida Dasturlash ( WPF, Xamarin, Unity, WinForms, ASP.NET Core, Entity Framework )
Dasturchi boʻlishga qiziquvchilar va C# tilini oʻrganayotganlar uchun.
#dars 17
STATIK aʼzolar va STATIK modifikatori
Odatiy maydonlar, metodlar, xususiyat metodlari bilan bir qatorda, statik maydonlar, metodlar, xususiyat metodlari bo'lishi mumkin. Statik maydonlar, metodlar butun sinf uchun qo'llaniladi va sinfning bunday a'zolariga kirish uchun sinfning namunasini yaratish shart emas.
Masalan:
class Account
{
public static decimal bonus = 100;
public decimal totalSum;
public Account(decimal sum)
{
totalSum = sum + bonus;
}
}
class Program
{
static void Main(string[] args)
{
Console.WriteLine(Account.bonus); // 100
Account.bonus += 200;
Account account1 = new Account(150);
Console.WriteLine(account1.totalSum); // 450
Account account2 = new Account(1000);
Console.WriteLine(account1.totalSum); // 1300
Console.ReadKey();
}
}
Bu holda, Account sinfining ikkita maydoni mavjud: bonus va totalSum. Bonus maydoni statikdir, shuning uchun uni ishlatish uchun alohida ob'ekt yaratish shart emas. Biz unga sinf nomi bilan murojaat qilishimiz mumkin:
Console.WriteLine(Account.bonus);
Account.bonus += 200;
👉 https://t.me/joinchat/AAAAAE-4xblrvxbMoNr4sQ
STATIK aʼzolar va STATIK modifikatori
Odatiy maydonlar, metodlar, xususiyat metodlari bilan bir qatorda, statik maydonlar, metodlar, xususiyat metodlari bo'lishi mumkin. Statik maydonlar, metodlar butun sinf uchun qo'llaniladi va sinfning bunday a'zolariga kirish uchun sinfning namunasini yaratish shart emas.
Masalan:
class Account
{
public static decimal bonus = 100;
public decimal totalSum;
public Account(decimal sum)
{
totalSum = sum + bonus;
}
}
class Program
{
static void Main(string[] args)
{
Console.WriteLine(Account.bonus); // 100
Account.bonus += 200;
Account account1 = new Account(150);
Console.WriteLine(account1.totalSum); // 450
Account account2 = new Account(1000);
Console.WriteLine(account1.totalSum); // 1300
Console.ReadKey();
}
}
Bu holda, Account sinfining ikkita maydoni mavjud: bonus va totalSum. Bonus maydoni statikdir, shuning uchun uni ishlatish uchun alohida ob'ekt yaratish shart emas. Biz unga sinf nomi bilan murojaat qilishimiz mumkin:
Console.WriteLine(Account.bonus);
Account.bonus += 200;
👉 https://t.me/joinchat/AAAAAE-4xblrvxbMoNr4sQ
Telegram
C# tilida Dasturlash ( WPF, Xamarin, Unity, WinForms, ASP.NET Core, Entity Framework )
Dasturchi boʻlishga qiziquvchilar va C# tilini oʻrganayotganlar uchun.