<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Ozodbek</title>
    <description>The latest articles on DEV Community by Ozodbek (@ozodbek_soft).</description>
    <link>https://dev.to/ozodbek_soft</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1476888%2F0f125afa-1b81-4c73-a373-3e2f89c47150.jpg</url>
      <title>DEV Community: Ozodbek</title>
      <link>https://dev.to/ozodbek_soft</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/ozodbek_soft"/>
    <language>en</language>
    <item>
      <title>Class : Inheritance✅ | Struct : Inheritance ❌</title>
      <dc:creator>Ozodbek</dc:creator>
      <pubDate>Mon, 01 Jul 2024 12:00:40 +0000</pubDate>
      <link>https://dev.to/ozodbek_soft/class-inheritance-struct-inheritance-1pn5</link>
      <guid>https://dev.to/ozodbek_soft/class-inheritance-struct-inheritance-1pn5</guid>
      <description>&lt;p&gt;&lt;strong&gt;Salom barchaga. Bugun biza 1 ta zo'r savolga javob topamiz&lt;/strong&gt;&lt;br&gt;
&lt;strong&gt;Savol&lt;/strong&gt;: &lt;em&gt;Nima uchun Classdan me'ros olish mumkinu, Structdan olib bo'lmaydi, Sabab ?&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Buning turli xil sabablari bor, Bularni birmar bir ko'rib o'tib ketamiz!&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Class&lt;/strong&gt;&lt;br&gt;
    Class reference type hisoblangani uchun.&lt;br&gt;
    Class orqali Polymoqphismni qo'llab quvvatlash mumkin.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Struct&lt;/strong&gt; &lt;br&gt;
    Structdan me'ros ola olmaslikning asosiy sababi bu Stack xotirada &lt;br&gt;
    saqlanishi, To'gri buni yaxshi tarafi ham bor. Ishlash yengillashadi&lt;br&gt;&lt;br&gt;
    va tezlik oshadi. Ya'ni bekorga atyishmagan mashoyiqlar. Structni &lt;br&gt;
    faqatgina kichik joylardan ishaltinglar deb. Kattalarga ko'pgina &lt;br&gt;
    xususiyatlari ishlamaslik ehtimoli ham borda...&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;Xulosa&lt;/strong&gt;: &lt;em&gt;Tushunib oldingizmi ?&lt;/em&gt;&lt;/p&gt;

</description>
      <category>dotnet</category>
      <category>csharp</category>
      <category>class</category>
      <category>struct</category>
    </item>
    <item>
      <title>Pattern Matching | Uzbek | C#</title>
      <dc:creator>Ozodbek</dc:creator>
      <pubDate>Wed, 26 Jun 2024 13:29:03 +0000</pubDate>
      <link>https://dev.to/ozodbek_soft/pattern-matching-uzbek-c-4hi7</link>
      <guid>https://dev.to/ozodbek_soft/pattern-matching-uzbek-c-4hi7</guid>
      <description>&lt;p&gt;&lt;strong&gt;Bugun biza C# dasturlash tilidagi legenda xususiyatlardan biri bo'lmish Pattern Matchinglarni ko'rib o'tamiz!&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Bu postni ham ma'lum bir sabablarga ko'ra savol javob orqali yoritib boraman. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1 savol&lt;/strong&gt; - Pattern Matching nima ? &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;C# dasturlash tilida &lt;code&gt;Pattern Matching&lt;/code&gt; - bu kod ichida turli ma'lumot turlarini aniqlash va ular ustida ishlash ustida turli xil amallar bajarish uchun ishlatiladi. C# dasturlash tilida bu xususiyat odatda swtich case, if else operatorlari yordamida ishlatiladi.&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;2 savol:&lt;/strong&gt; Pattern Matching C# da qachon paydo bo'lgan ?&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;&lt;code&gt;Pattern Matching&lt;/code&gt; C# dasturlash tilida ilk bor C# 7.0 versionda paydo bo'lgan. Undan keyin esa &lt;strong&gt;C# (8.0, 9.0, 10.0, 11.0, 12.0 ∞)&lt;/strong&gt; larda ancha kengaytilishni boshlagan, hozirgacha C# kuchayishdan to'xtamayapdi 🔥&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;3 savol:&lt;/strong&gt; Pattern Matching yordamida turli ma'lumot turlarini qanday qilib tekshiramiz ?&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;Pattern Matching orqali ma'lumot turlarini tekshirib olish uchun &lt;code&gt;is&lt;/code&gt; kalit so'zidan foydalaniladi.&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Misol uchun:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;object obj = "Ozodbek";
if (obj is string)
    Console.WriteLine(true);
else 
    Console.WriteLine(false);
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;ushbu kodda &lt;code&gt;is&lt;/code&gt; yordamida biz "Ozodbek"ni string ekanligini aniqlashimiz mumkin. Hozir bu yerda natija &lt;code&gt;true&lt;/code&gt; qaytadi. Sababini tushuntirib o'tirmayman.&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;4 savol:&lt;/strong&gt; Switch case da Patterns qanday ishlaydi ? &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;Switch case orqali C# 7.0 dan beri ishlab kelmoqda, biz esa hozirgi kundagi holatini ko'rib o'tamiz 👇&lt;/em&gt;&lt;br&gt;
&lt;/p&gt;
&lt;/blockquote&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;object obj = 17;
switch (obj)
{
    case int i: Console.WriteLine("Butun son. Ya'ni integer"); break;
    case double d: Console.WriteLine("O'nlik. Ya'ni double"); break;
    case string s: Console.WriteLine("String matn. Ya'ni harf, son aralash belgilar"); break;
    default: Console.WriteLine("Boshqa tip"); break;
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Bu yerda qaysi tipga mas'ul ekanini korishimiz mumkin bo'ladi. &lt;/p&gt;

&lt;p&gt;*&lt;em&gt;5 savol: *&lt;/em&gt; Tuple Pattern nima va u qanday ishlaydi ?&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;_Tuple Pattern yordamida bir nechta qiymatlarni tekshirishimiz mumkin. Ming marta nazariya o'qigandan bir mart ko'rib review qilgan yaxshi deganlaridek👇 _&lt;br&gt;
&lt;/p&gt;
&lt;/blockquote&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Console.WriteLine("Sonlarni birma bir kiriting! Har bir sonni kiritgandan keyin enter tugmasini bosishni unutmang! Ogohlik Tashkent talabi!");
(int, int) raqam = (int.Parse(Console.ReadLine() ?? ":)"), int.Parse(Console.ReadLine() ?? ":)"));
switch (raqam)
{
    case (0, 0): Console.WriteLine("Xato son kiritdingiz!"); break; 
    case (23, 17): Console.WriteLine("Xato son kiritdingiz, Lekin sal yaqinlashtingiz!"); break;  
    case (17, 23): Console.WriteLine("Tog'ri son kiritdingiz!"); break;
    default: Console.WriteLine("Boshqa son kiritdingiz!"); break;
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;6 savol:&lt;/strong&gt; Property Pattern nima ? &lt;/p&gt;

&lt;p&gt;&lt;em&gt;Property pattern yordamida obyektning xususiyatlarini tekshirishimiz mumkin!&lt;/em&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;public class Circle 
{
     public int Radius { get; set; } 
}
var shakl = new Circle { Radius = 5 };
if (shakl is Circle { Radius: 5 })
{
    Console.WriteLine("Bu doirani radiusi 5 ga teng!");
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;em&gt;Bu yerda property pattern yordamida shaklning Radiusi aniqlanadi&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Davomi bor &lt;/p&gt;

&lt;p&gt;&lt;a href="https://chatgpt.com/share/12ee29aa-2b10-41e9-b577-540e6b35620a" rel="noopener noreferrer"&gt;https://chatgpt.com/share/12ee29aa-2b10-41e9-b577-540e6b35620a&lt;/a&gt;&lt;/p&gt;

</description>
      <category>dotnet</category>
      <category>csharp</category>
      <category>uzbek</category>
      <category>patternmatching</category>
    </item>
    <item>
      <title>Pattern Matching | Uzbek | C#</title>
      <dc:creator>Ozodbek</dc:creator>
      <pubDate>Wed, 26 Jun 2024 13:29:03 +0000</pubDate>
      <link>https://dev.to/ozodbek_soft/pattern-matching-uzbek-c-2eoo</link>
      <guid>https://dev.to/ozodbek_soft/pattern-matching-uzbek-c-2eoo</guid>
      <description>&lt;p&gt;&lt;strong&gt;Bugun biza C# dasturlash tilidagi legenda xususiyatlardan biri bo'lmish Pattern Matchinglarni ko'rib o'tamiz!&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Bu postni ham ma'lum bir sabablarga ko'ra savol javob orqali yoritib boraman. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1 savol&lt;/strong&gt; - Pattern Matching nima ? &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;_C# dasturlash tilida &lt;code&gt;Pattern Matching&lt;/code&gt; - bu kod ichida turli ma'lumot turlarini aniqlash va ular ustida ishlash ustida turli xil amallar bajarish uchun ishlatiladi. C# dasturlash tilida bu xususiyat odatda swtich case, if else operatorlari yordamida ishlatiladi. _&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;2 savol:&lt;/strong&gt; Pattern Matching C# da qachon paydo bo'lgan ?&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;&lt;code&gt;Pattern Matching&lt;/code&gt; C# dasturlash tilida ilk bor C# 7.0 versionda paydo bo'lgan. Undan keyin esa &lt;strong&gt;C# (8.0, 9.0, 10.0, 11.0, 12.0 ∞)&lt;/strong&gt; larda ancha kengaytilishni boshlagan, hozirgacha C# kuchayishdan to'xtamayapdi 🔥&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;3 savol:&lt;/strong&gt; Pattern Matching yordamida turli ma'lumot turlarini qanday qilib tekshiramiz ?&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;_Pattern Matching orqali ma'lumot turlarini tekshirib olish uchun &lt;code&gt;is&lt;/code&gt; kalit so'zidan foydalaniladi. _&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Misol uchun:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;object obj = "Ozodbek";
if (obj is string)
    Console.WriteLine(true);
else 
    Console.WriteLine(false);
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;blockquote&gt;
&lt;p&gt;_ushbu kodda &lt;code&gt;is&lt;/code&gt; yordamida biz "Ozodbek"ni string ekanligini aniqlashimiz mumkin. Hozir bu yerda natija &lt;code&gt;true&lt;/code&gt; qaytadi. Sababini tushuntirib o'tirmayman. _&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;4 savol:&lt;/strong&gt; Switch case da Patterns qanday ishlaydi ? &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;Switch case orqali C# 7.0 dan beri ishlab kelmoqda, biz esa hozirgi kundagi holatini ko'rib o'tamiz 👇&lt;/em&gt;&lt;br&gt;
&lt;/p&gt;
&lt;/blockquote&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;object obj = 17;
switch (obj)
{
    case int i: Console.WriteLine("Butun son. Ya'ni integer"); break;
    case double d: Console.WriteLine("O'nlik. Ya'ni double"); break;
    case string s: Console.WriteLine("String matn. Ya'ni harf, son aralash belgilar"); break;
    default: Console.WriteLine("Boshqa tip"); break;
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Bu yerda qaysi tipga mas'ul ekanini korishimiz mumkin bo'ladi. &lt;/p&gt;

&lt;p&gt;*&lt;em&gt;5 savol: *&lt;/em&gt; Tuple Pattern nima va u qanday ishlaydi ?&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;_Tuple Pattern yordamida bir nechta qiymatlarni tekshirishimiz mumkin. Ming marta nazariya o'qigandan bir mart ko'rib review qilgan yaxshi deganlaridek👇 _&lt;br&gt;
&lt;/p&gt;
&lt;/blockquote&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Console.WriteLine("Sonlarni birma bir kiriting! Har bir sonni kiritgandan keyin enter tugmasini bosishni unutmang! Ogohlik Tashkent talabi!");
(int, int) raqam = (int.Parse(Console.ReadLine() ?? ":)"), int.Parse(Console.ReadLine() ?? ":)"));
switch (raqam)
{
    case (0, 0): Console.WriteLine("Xato son kiritdingiz!"); break; 
    case (23, 17): Console.WriteLine("Xato son kiritdingiz, Lekin sal yaqinlashtingiz!"); break;  
    case (17, 23): Console.WriteLine("Tog'ri son kiritdingiz!"); break;
    default: Console.WriteLine("Boshqa son kiritdingiz!"); break;
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;6 savol:&lt;/strong&gt; Property Pattern nima ? &lt;/p&gt;

&lt;p&gt;Property pattern yordamida obyektning xususiyatlarini tekshirishimiz mumkin!&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;public class Circle 
{
     public int Radius { get; set; } 
}
var shakl = new Circle { Radius = 5 };
if (shakl is Circle { Radius: 5 })
{
    Console.WriteLine("Bu doirani radiusi 5 ga teng!");
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Bu yerda property pattern yordamida shaklning Radiusi aniqlanadi&lt;/p&gt;

&lt;p&gt;Davomi bor &lt;/p&gt;

&lt;p&gt;&lt;a href="https://chatgpt.com/share/12ee29aa-2b10-41e9-b577-540e6b35620a" rel="noopener noreferrer"&gt;https://chatgpt.com/share/12ee29aa-2b10-41e9-b577-540e6b35620a&lt;/a&gt;&lt;/p&gt;

</description>
      <category>dotnet</category>
      <category>csharp</category>
      <category>uzbek</category>
      <category>patternmatching</category>
    </item>
    <item>
      <title>StringBuilder | C#</title>
      <dc:creator>Ozodbek</dc:creator>
      <pubDate>Wed, 26 Jun 2024 10:37:21 +0000</pubDate>
      <link>https://dev.to/ozodbek_soft/stringbuilder-c-4paf</link>
      <guid>https://dev.to/ozodbek_soft/stringbuilder-c-4paf</guid>
      <description>&lt;p&gt;*&lt;em&gt;Salom barchaga! Bugun biz C# dastulash tilida StringBuilder sinfini ko'rib chiqamiz! *&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Reja:&lt;/strong&gt; &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Sal kam hech qanday reja yo'q, Sababi biz bugungi darsda StringBuilderni chunchaki dialog sifatida 0 dan Prof darajagacha o'rganamiz! O'ylaymanki bu sizga va boshqalarga yoqadi. Eslatib o'tamiz ushbu maqolada men &lt;code&gt;sb&lt;/code&gt; o'zgaruvchi nomini e'lon qilmasdan ishlatishim mumkin, lekin chalgimaslik uchun uni shunday tasavvur qiling
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;code&gt;StringBuilder sb = new StringBuilder(); // oddiy o'zgaruvchi nomi&lt;/code&gt;&lt;br&gt;
&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1 Savol:&lt;/strong&gt; StringBuilder nima va Nimaga kerak o'zi ?&lt;br&gt;
&lt;em&gt;C# dasturlash tilida StringBuilder bu - Stringlarni manipulation qilish, ya'ni boshqarish. StringBuilderni ishlatishdan maqsad, bir necha o'zgarishlar kiritilishi mumkin bo'lgan stringlarni ishlashini samaraliroq qilishdir, Ya'ni biz "Hello" so'zini yoki boshqa bir so'zni, gaplarni teskari tartibda chiqaruvchi dastur tuzmoqchi bo'lsak. Ko'pincha tajribasizlik qilib stringni o'zini ishlatamiz, Lekin bu juda katta xato.&lt;br&gt;
Misol: Agar string ishlatsak, String bu immutable hisoblanadi, O'zgarmas.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Buni Amaliy qilib ko'rsatsak!&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;string say = "Hello";
string natija = "";
for (int i = say.Length - 1; i &amp;gt;= 0; i--)
     natija += say[i]; 
Console.WriteLine(natija);  // olleH
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;em&gt;Ushbu holatda "Hello" Length 5 ga teng bo'lganligi sabab, Processor tomonida 5 marta yangi str ochiladi. yani bu 5 ta operatsiya bajaradi degani. Har for aylanganda bittadan yangi o'zgaruvchi yaratilib oxiri shu teskari chiqaradi. Bu endi biz kutgan natijani chiqargani bilan, optimal usul emas. Optimal usul qanday bo'ladi desangiz pastga qarang 👇&lt;/em&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;using System.Text;

string say = "hello";
StringBuilder natija = new StringBuilder();
for (int i = say.Length - 1; i &amp;gt;= 0; i--)
    natija.Append(say[i]);
Console.WriteLine(natija); // olleh 
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Bunisi ancha yaxshi variantde 😄&lt;br&gt;
Chunki StringBuilder bitta stringni o'zgartiradi. Stringni o'zi esa qayta qayta yangi string yarataveradi. &lt;/p&gt;

&lt;p&gt;*&lt;em&gt;2 savol: *&lt;/em&gt; - StringBuilder Classini qanday yaratishimiz mumkin ? &lt;br&gt;
Xuddi pastdagidey 👇&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;using System.Text;

StringBuilder salom = new StringBuilder();
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;_Aytgancha ushbu classni yaratishda doim &lt;code&gt;new&lt;/code&gt; kalit so'zi ishlatiladi!&lt;br&gt;
Tushunganetion ?&lt;br&gt;
_&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3 - savol:&lt;/strong&gt; StringBuilder ga matn, string qo'shish uchun qanday usullar yoki functionlar bor ?&lt;br&gt;
&lt;em&gt;Quyidagicha 👇&lt;/em&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;StringBuilder salom = new StringBuilder(); 

salom.Append("alik");
salom.Append("yaxshi");
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Append(); methodi orqali qo'sha olamiz!&lt;br&gt;
Tushundilami ?&lt;/p&gt;

&lt;p&gt;*&lt;em&gt;4 - savol: *&lt;/em&gt; StringBuilderdagi mavjud stringni qanday qilib o'zgartirishimiz mumkin ?&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;salom.Replace("salom", "alik");
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Replace(); methodi eng qulay methodlardan biri. Yani bu yerda birinchi parametr bo'lmish "salom" ni "alik" ga almashtirdik&lt;/p&gt;

&lt;p&gt;*&lt;em&gt;5 - savol: *&lt;/em&gt; StringBuilderdagi ma'lum bir indexdagi methodni olish yoki o'zgaritish qilish uchun qaysi usullar bor ?&lt;/p&gt;

&lt;p&gt;Buning javobi oddiy insert() va remove(), To'gri shu yerda aqliy savol kelishi mumkin. Ularni farqi nimada ?&lt;/p&gt;

&lt;p&gt;&lt;code&gt;Insert()&lt;/code&gt; - bu StringBuilderni ma'lum bir matniga yana matn yoki belgilar qo'shish uchun. Ya'ni 3 qatordan boshlab "ozod" matnini qo'sh degandek :)&lt;/p&gt;

&lt;p&gt;&lt;code&gt;Remove()&lt;/code&gt; - ushbu method, StringBuilderdagi matnning ma'lum bir joyidan boshlab, ma'lum bir ta belgi o'chiradi. Yani 4 chi belgidan boshlab 2 ta belgini o'chir degandek!&lt;/p&gt;

&lt;p&gt;Insert(); ga misol:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;StringBuilder nnnn = new StringBuilder("Salom");
nnnn.Insert(6, "O'zbeklar"); // Salom O'zbeklar
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Remove(); ga misol:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;StringBuilder sb = new StringBuilder("Hello Uzbeks");
sb.Remove(5, 3); // Hellobeks
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Tushundilarmi endi ?&lt;/p&gt;

&lt;p&gt;*&lt;em&gt;6 savol: *&lt;/em&gt; StringBuilderning uzunligini qanday aniqlashimiz mumkin ?&lt;/p&gt;

&lt;p&gt;Javobi oddiy: Length methodi orqali, lekin shu o'rinda Lengthni olish uchun bitta int o'zgaruvchisi kerak bo'lishi mumkin. Pastdagiga qarangda👇&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;StringBuilder sb = new StringBuilder("Hello");
int sbUzunligi = sb.Length; // 5
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;*&lt;em&gt;7 savol: *&lt;/em&gt; StringBuilder obyektini stringga o'girish uchun nima qilamiz?&lt;/p&gt;

&lt;p&gt;Ushbu amalni bajarishimiz uchun bizga ToString() methodi yordamga keladi. Uni ishlashi oddiy &amp;gt;&amp;gt; Amaliy ko'rishingiz mumkin 👇&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;string natija sb = ToString(); 
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;**8 Savol: **StringBuilderning si'gimi va uni qanday o'zgartiramiz ?&lt;/p&gt;

&lt;p&gt;&lt;code&gt;Sig'im is Capasity&lt;/code&gt; degan&lt;br&gt;
**Javob: **StringniBuilderning sig'imi degani, u uning ichki xotiradagi maksimal uzunligi. Sigimi oshib ketganda xotiradan yangi joy ajratiladi. Sigimni Capacity methodi orqali ko'rishimiz va o'zgartirishimiz mumkin 👇&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;int sigim = sb.Capacity; 
sb.Capacity = 100; // sigimi 100 ta belgi uchun bo'ladi endi😄
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;**9 savol: **StringBuilderdan nega foydalanish kerak ? Afzalliklar nima uni ? &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Tezroq ishlayd, anu stringga o'xshab yangi obyektlar yaratib o'tirmaydi. &lt;/li&gt;
&lt;li&gt;Xotira samaradorligini oshiradi | chunki 👆&lt;/li&gt;
&lt;li&gt;Bir necha o'zgarishlar kerak bo'lganda, qulaylikni dodasini yaratadi.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;*&lt;em&gt;10 savol: *&lt;/em&gt; StringBuilderni qachon ishlatmaslik kerak?&lt;/p&gt;

&lt;p&gt;&lt;em&gt;StringBuilderni kichik stringlar qo'shish, yoki kichik o'zgartirishlar uchun ishlatmaslik kerak. Yani kichik narsa, amaliyotlarda stringni o'zi ham yetadi. Lekin kattaroq narsaga esa StringBuilderni ishlatishimiz kerak . Agar katta narsalarda ham StringBuilder ishlatishni xohlamasangiz unda tabriklayman siz yaxshi dasturchi emassiz (Hazil albatta).&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;*&lt;em&gt;Oxirida bir Yetim Savolcha bo'lishi mumkin 😄: StringBuilder so'zini ma'nosi nima ? *&lt;/em&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;String = matn, Builder = quruvchi    =&amp;gt;&amp;gt;   MatnQuruvchi&lt;/p&gt;
&lt;/blockquote&gt;

</description>
      <category>dotnet</category>
      <category>csharp</category>
      <category>uzbek</category>
      <category>stringbuilder</category>
    </item>
    <item>
      <title>Properties in C# | Uzbek</title>
      <dc:creator>Ozodbek</dc:creator>
      <pubDate>Tue, 18 Jun 2024 18:01:48 +0000</pubDate>
      <link>https://dev.to/ozodbek_soft/properties-in-c-uzbek-3cof</link>
      <guid>https://dev.to/ozodbek_soft/properties-in-c-uzbek-3cof</guid>
      <description>&lt;p&gt;Salom barchaga. Bugun biza C# dasturlash tilida o'rganishimiz kerak bo'lgan ba'zi bir tushunchalar haqida aytib beraman. &lt;br&gt;
`** Reja: **&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Property nima ?&lt;/li&gt;
&lt;li&gt;Property turlari &lt;/li&gt;
&lt;li&gt;Propertydan foydalanish &lt;/li&gt;
&lt;li&gt;Amaliyot va tushunchalar&lt;/li&gt;
&lt;li&gt;Quizlar`&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;*&lt;em&gt;Property nima ? *&lt;/em&gt;&lt;br&gt;
Property(&lt;em&gt;xususiyat&lt;/em&gt;) C# dasturlash tilida obyektlar, classlar va strukturalar ichida ma'lumotni saqlash va olish uchun ishlatiladigan maxsus a'zolar(&lt;em&gt;member&lt;/em&gt;)dir. Propertylar fieldlar(&lt;em&gt;maydonlar&lt;/em&gt;) kabi ko'rinadi. Va ular &lt;code&gt;getter&lt;/code&gt; va &lt;code&gt;setter&lt;/code&gt; orqali maydonga kirish imkonyatini beradi. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Property turlari: **&lt;br&gt;
1 - **&lt;em&gt;Auto implemented property&lt;/em&gt;&lt;/strong&gt; - &lt;em&gt;Bu turdagi propertylar soddalashtirilgan holda yoziladi, bu yerda &lt;code&gt;get&lt;/code&gt; va &lt;code&gt;set&lt;/code&gt; methodlari automatik ravishda yoziladi.&lt;/em&gt;&lt;br&gt;
2 - &lt;strong&gt;&lt;em&gt;Read-Only Property&lt;/em&gt;&lt;/strong&gt; - &lt;em&gt;Faqat o'qish uchun belgilangan propertylar.  get funksiyasi ishlaydi xolos, set qo'sha olmaymiz.&lt;/em&gt; &lt;br&gt;
3 - &lt;strong&gt;&lt;em&gt;Write-Only Property&lt;/em&gt;&lt;/strong&gt; - &lt;em&gt;Faqat yozish mumkin bo'lgan propertylar, faqat set metodi bilan ta'minlanadi.&lt;/em&gt;&lt;br&gt;
4 - &lt;strong&gt;&lt;em&gt;Calculated Properties&lt;/em&gt;&lt;/strong&gt; - &lt;em&gt;Hisob kitobli propertylar, get va set methodlari maxsus hisob-kitoblarni amalga oshirish uchun ishlatiladi.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Amaliyotni boshladik 🚀🚀🚀🚀🚀🚀🚀🚀🚀🚀🚀&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Auto-Implemented Property&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;public class Person 
{
    public string Name { get; set; }
    public int Age { get; set; }
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;*&lt;em&gt;Read-Only Property *&lt;/em&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;public class Person2 
{
    private string name; 

    public Person2 (string name)
    {
        this.name = name;
    }
    public string Name 
    {
        get {return name;}
    }
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Write-Only Property&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;public class Person3 
{
    private string password; 

    public string Password 
    {
        set {password = value;}
    }
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;davomi bor....&lt;/p&gt;

</description>
      <category>uzbek</category>
      <category>csharp</category>
      <category>dotnet</category>
      <category>property</category>
    </item>
    <item>
      <title>Classes in C# | Uzbek</title>
      <dc:creator>Ozodbek</dc:creator>
      <pubDate>Mon, 17 Jun 2024 10:15:14 +0000</pubDate>
      <link>https://dev.to/ozodbek_soft/classes-in-c-uzbek-c7h</link>
      <guid>https://dev.to/ozodbek_soft/classes-in-c-uzbek-c7h</guid>
      <description>&lt;p&gt;Assalomu alaykum barchaga. Bugun biza C# dasturlash tilida &lt;code&gt;Class&lt;/code&gt; tushunchasi bilan bog'liq miflarni sindiramiz. Dastlab Classlar haqida gaplashsak. Class bu reference Type hisoblanadi. Va xotirada HEAP dan joy oladi. &lt;/p&gt;

&lt;p&gt;C# dasturlash tilida &lt;code&gt;class&lt;/code&gt; - bu Object-Oriented-Programming(OOP)ni asosiy tushunchalaridan biri hisoblanadi. Classlar yordamida yangi turdagi obekt yaratishingiz va ularga ishlov berish, methodlarni(function) guruhlashingiz mumkin. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Class nima ?&lt;/strong&gt; &lt;br&gt;
Class bu - obektlarning tuzilishi, xususiyatlari(properties), methodlar(functions)larni aniqlovchi shablon yoki qolib. Yuqorida aytganimizdek siz - Classlar yordamida yangi obektlarni yaratishingiz, ularga ishlov berishingiz va methodlarni guruhlashingiz mumkin bo'ladi. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Classlar nima uchun kerak ?&lt;/strong&gt;&lt;br&gt;
`- 1 - Ma'lumotlarni guruhlash: Classlar yordamida ma'lumotlar va methodlarni guruhlash imkoniyatiga ega bo'lamiz. Bu bizga codeni o'qish va yaxshi tushunish imkoniyatini beradi. &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;2 - Qayta foydalanish: Bir marta yaratilgan classdan ko'p joyda foydalanish mumkin. Bu esa codeni yaxshi ishlashini ta'minlaydi (100 xil nomli o'zgaruvchi yaratib o'tirmaysiz 🔥)&lt;/li&gt;
&lt;li&gt;3 - Encasulation: Classlar ma'lumotlarni yashirish va ularga kirishni nazorat qilish, imkonini beradi. &lt;/li&gt;
&lt;li&gt;4 - Inheritance: Bir class boshqa classlardan meros olib(nusxa olib), uning xususiyatlari va methodlarini o'zida saqlab qolishi mumkin.`&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;em&gt;Classlar haqida biroz nazariy bilimga ega bo'ldik. Endi undan foydalanishni bilib olamiz.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Person.cs&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;// Bir Person degan class yaratib olamiz
public class Person
{
    // xususiyatlari 👇
    public string Name { get; set; }
    public int Age { get; set; }

    // Salomlashish uchun Method
    public void Greeting()
        =&amp;gt; Console.WriteLine($"Assalomu alaykum. Mening ismim: "{Name}" va men {Age}") yoshdaman");
} 
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Yuqoridagi codeda bir inson haqida ma'lumotlarni olib salomlashish uchun bir method yaratdik. Endi shu class asosida bir obekt yaratib olamiz...&lt;/p&gt;

&lt;p&gt;Program.cs&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;public class Program 
{
      // Yangi obekt hosil qilib olamiz. Person classi asosida
     Person odam = new Person();

     // Propertylarga value berib chiqamiz
     odam.Name = "Ozodbek";
     odam.Age = 17;


     // Salomlashish uchun methodni ushbu obekt orqali ishlatib ko'ramiz
     odam.Greeting();
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Output:Terminal&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Assalomu alaykum. Mening ismim **Ozodbek** va men 17 yoshdaman
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Classlarni tushunib oldik. Endi Constructor haqida ham bir ikki shingil ma'lumot berib o'tmasam bo'lmaydi. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Constructor&lt;/strong&gt; - &lt;em&gt;bu, classning obektini yaratishda automatic ravishda chaqiriladigan methoddir. Return type mavjud emas. Constructor yordamida boshlang'ich qiymatlarni berishimiz mumkin.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Person.cs&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;// Boyagi, Person deganda misol qilamiz
public class Person
{
    // xususiyatlari 👇
    public string Name { get; set; }
    public int Age { get; set; }

// Constructor 
    public Person(string name, int age) 
    {
        Name = name;
        Age = age; 
    }

    public void Greeting()
        =&amp;gt; Console.WriteLine($"Salom mening ismim{Name}, Yoshim {Age} da")
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Constructorni chiqaramiz&lt;br&gt;
&lt;strong&gt;Program.cs&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;public class Program 
{
    public void Main() 
    {
        Person odam2 = new Person("Ozodbek", 17);
        odam2.Greeting();
    }
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Inheritance&lt;/strong&gt; - bir class ikkinchi classdan meros olib uni xususiyatlari va mehtodlari o'zida saqlab qolishi uchun kerak.&lt;br&gt;
&lt;strong&gt;Inheritance&lt;/strong&gt;  orqali ham ishlab ko'rishimiz kerak. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Program.cs&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;// Asosiy animal class
public class Animal 
{
     public string Name { get; set; }

     public void speak() 
         =&amp;gt; Console&amp;gt;WriteLine($"The {Name} sound");
}



// Inheritance (meros) olamiz. 
public class Dog : Animal
{
    public void Color() 
       =&amp;gt; Console&amp;gt;WriteLine("Dog color is Black");
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Program.cs&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;public class Program 
{
       public static void Main() 
       {
            Dog kuchuk = new Dog();
            kuchuk.Name = "Rex";
            kuchuk.Speak();
            kuchuk .Color();
       }
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Output&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;The Rex sound
Dog color is Black 
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Xulosa&lt;/strong&gt;: Classlar bu C# dasturlash tilida asosiy tushuncha va u yordamida strukturalash, ma'lumotlarni guruhlash va hokazolarni qilish mumkin. O'rgangan misollarimizni review qilish orqali siz chuqurroq tushunib ham olishingiz mumkin(Classlarni). Bu misollar orqali bir sodda tilda tushuntirib berdik degan umiddaman😊&lt;/p&gt;

</description>
      <category>class</category>
      <category>csharp</category>
      <category>uzbek</category>
      <category>dotnet</category>
    </item>
    <item>
      <title>Nullable value Types | C#</title>
      <dc:creator>Ozodbek</dc:creator>
      <pubDate>Wed, 05 Jun 2024 14:07:44 +0000</pubDate>
      <link>https://dev.to/ozodbek_soft/nullable-value-types-c-5d89</link>
      <guid>https://dev.to/ozodbek_soft/nullable-value-types-c-5d89</guid>
      <description>&lt;p&gt;&lt;strong&gt;Bugun biza o'rganishimiz shart bo'lgan narsalar quyidagicha 👇&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;em&gt;Declaretion va Assigment&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;
&lt;em&gt;Null bo'ladigan misollar qiymatlarini tekshirish&lt;/em&gt; &lt;/li&gt;
&lt;li&gt;_Null qiymatni primative typega o'tqazish _&lt;/li&gt;
&lt;li&gt;&lt;em&gt;Vahokazolar&lt;/em&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Null bu Value type&lt;/strong&gt;! Odatda null qiymat biriktirish uchun asosan 1 ta belgidan foydalaniladi. Bu &lt;code&gt;?&lt;/code&gt; belgisi. Biz ko'pincha ishlatadigan Ma'lumot turlari o'z o'zidan null qiymat olishi mumkin emas. &lt;strong&gt;Misol uchun&lt;/strong&gt;: &lt;code&gt;bool?&lt;/code&gt; &amp;gt;&amp;gt; &lt;code&gt;True&lt;/code&gt;, &lt;code&gt;False&lt;/code&gt;, &lt;code&gt;Null&lt;/code&gt;. Har qanday Null qiymat &lt;code&gt;System.Nullable&amp;lt;T&amp;gt;&lt;/code&gt; Structurasiga tegishlidir. &lt;br&gt;
Quyidagi almashtirilgan shakllardan birida &lt;code&gt;T&lt;/code&gt; asosiy turga ega null qiymat turiga murojaat qilishingiz mumkin. Asosiy malumot turining aniqlanmagan qiymatini ko'rsatish uchun &lt;code&gt;null&lt;/code&gt; dan foydalanish kerak.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Declaretion &amp;amp; Assigment&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Declaretion&lt;/strong&gt; - bu C# dasturlash tilida o'zgaruvchi e'lon qilib, unga qiymat berish. &lt;strong&gt;Assigment&lt;/strong&gt; esa xuddi shu qiymat berish jarayonidagi &lt;code&gt;=&lt;/code&gt; belgisi!&lt;br&gt;
Practice&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;double? pi = 3.14;
char? letter = 'A';

int? son = 10; 
int? son2 = son;

bool? test = null;

// Ushbu ko'rsatilgan array Value type va Uning qiymati Null

int?[] sonlar = new int?[10];
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Null bo'lishi mumkin bo'lgan misol tekshiramiz!&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;int? a = 43; 
if (a is int valueOfA)
{
    Console.WriteLine($"a is {valueOfA}");
}
else
{
    Console.WriteLine("a does not have a value");
}
// Output:
// a is 42
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Davomi bor...&lt;/p&gt;

</description>
      <category>dotnet</category>
      <category>csharp</category>
      <category>nullable</category>
      <category>uzbek</category>
    </item>
    <item>
      <title>Checked &amp; Unchecked statements in C# reference</title>
      <dc:creator>Ozodbek</dc:creator>
      <pubDate>Tue, 04 Jun 2024 09:29:38 +0000</pubDate>
      <link>https://dev.to/ozodbek_soft/checked-unchecked-statements-in-c-reference-2onk</link>
      <guid>https://dev.to/ozodbek_soft/checked-unchecked-statements-in-c-reference-2onk</guid>
      <description>&lt;p&gt;Bugun sizlar bilan, Quyidagi savollar bilan bog'liq miflarni sindiramiz 🛠️&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Overflow checking Context ?&lt;/li&gt;
&lt;li&gt;Default overflowni tekshirish Contexti ?&lt;/li&gt;
&lt;li&gt;C# tili spefikatsiyasidan bir shingil ?&lt;/li&gt;
&lt;li&gt;Vahokazo ?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Checked va Unchecked iboralari arifmetik va Convertationlar uchun Overflow bo'lishni tekshirish contextini belgilaydi. Butun son arifmetik tomondan to'lib ketganda Overflow checkings bizga nima sodir bo'lganligini ko'rsatadi. Masalan: E'tibor berganmisiz, Int tipiga Int.MaxValue dan ko'p miqdorda qiymat berilganda System.OverFlowException compilator tomonidan sizga tashlanadi. Agar doimiy ifodada Overflow sodir bo'lsa, compilation vaqtida xatolik yuz beradi. Aytgancha bu turdagi Exceptionlar System kutubxonasiga tegishli,&lt;br&gt;
Xullas quyidagi bir shingil codeda qisqa va lo'nda qilib ko'rishimiz mumkin.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;uint a = uint.MaxValue;

unchecked
{
    Console.WriteLine(a + 3);  // output: 2
}

try
{
    checked
    {
        Console.WriteLine(a + 3);
    }
}
catch (OverflowException e)
{
    Console.WriteLine(e.Message);  // output: Arifmetik operatsiya to'lib ketishga olib keldi 
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Double tipida ham shunday qilib ko'rsa bo'ladi .&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;double a = double.MaxValue;

int b = unchecked((int)a);
Console.WriteLine(b);  // output: -2147483648

try
{
    b = checked((int)a);
}
catch (OverflowException e)
{
    Console.WriteLine(e.Message);  // output: Arithmetic operation resulted in an overflow.
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Checked va Unchacked haqida yana bir kattaroq misol. Bu misolni review qilishingizni maslahat beraman.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;int Multiply(int a, int b) =&amp;gt; a * b;

int factor = 2;

try
{
    checked
    {
        Console.WriteLine(Multiply(factor, int.MaxValue));  // output: -2
    }
}
catch (OverflowException e)
{
    Console.WriteLine(e.Message);
}

try
{
    checked
    {
        Console.WriteLine(Multiply(factor, factor * int.MaxValue));
    }
}
catch (OverflowException e)
{
    Console.WriteLine(e.Message);  // output: Arithmetic operation resulted in an overflow.
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



</description>
      <category>dotnet</category>
      <category>csharp</category>
      <category>development</category>
      <category>microsoft</category>
    </item>
    <item>
      <title>TryParse C# | Int32. Uzbek</title>
      <dc:creator>Ozodbek</dc:creator>
      <pubDate>Tue, 04 Jun 2024 05:58:14 +0000</pubDate>
      <link>https://dev.to/ozodbek_soft/tryparse-c-int32-uzbek-e1j</link>
      <guid>https://dev.to/ozodbek_soft/tryparse-c-int32-uzbek-e1j</guid>
      <description>&lt;p&gt;&lt;strong&gt;Salom barchaga. Bugun biz TryParse haqida gaplashamiz. Va shu o'rinda quyidagi savollar bilan bog'liq miflarni sindiramiz.&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;- TryParse o'zi nima ?
- TryParsening turlari ham bormi ?
- TryParse C# da qanday ishlaydi ?
- Amaliyot qilib ko'ramizmi ?
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;em&gt;&lt;strong&gt;Boshladik🚀&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;TryParse bu Parse qilishga harakat qiladigan bir method deb olsak ham bo'ladi. Misol uchun Int.Parse() methodi bizga int tipiga parse qilib beradigan bo'lsa TryParse parse qilishga harakat qiladi, qila olmasa false qaytradi. TryParse C# dasturlash tilida System kutubxonasining methodi hisoblanadi. Ishga tushirilishi esa System.Runtime.dll orqali amalga oshiriladi. Mantiqiy qiymat qaytaradi.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;em&gt;Boshqa methodlar kabi TryParse() methodining o'ziga yarasha Overloadinglari ham bor. Overloading bu parametrlarni joylash, Yani qancha parametr va qanday shaklda olishi. Ularni ham birma bir ko'rib chiqamiz.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;1 - &lt;code&gt;TryParse(ReadOnlySpan&amp;lt;Byte&amp;gt;, IFormatProvider, Int32)&lt;/code&gt; - _&lt;a href="https://www.google.com/search?q=what+is+utf-8+in+c%23&amp;amp;sca_esv=6b733a51577a6574&amp;amp;ei=AKVeZtesFZSj3QPWvYi4DA&amp;amp;oq=what+is+utf-8+in+C&amp;amp;gs_lp=Egxnd3Mtd2l6LXNlcnAiEndoYXQgaXMgdXRmLTggaW4gQyoCCAIyBhAAGBYYHjIGEAAYFhgeMgYQABgWGB4yCBAAGBYYHhgPMgYQABgWGB4yBhAAGBYYHjIGEAAYFhgeMgYQABgWGB4yChAAGBYYChgeGA8yBhAAGBYYHkjyGVC3A1ivCXABeAGQAQCYAY8BoAGRBaoBAzAuNbgBAcgBAPgBAZgCBqACrAXCAgoQABiwAxjWBBhHwgINEAAYgAQYsAMYQxiKBcICBRAAGIAEmAMAiAYBkAYKkgcDMS41oAfhHA&amp;amp;sclient=gws-wiz-serp" rel="noopener noreferrer"&gt;UTF-8&lt;/a&gt; belgilar oraligida qiymatga ajratishga harakat qiladi. _&lt;/p&gt;

&lt;p&gt;2 - &lt;code&gt;TryParse(ReadOnlySpan&amp;lt;Char&amp;gt;, Int32)&lt;/code&gt; -_ Belgilangan methodni &lt;strong&gt;Int32&lt;/strong&gt; ga Parse qilishga harakat qilib ko'radi. Agar &lt;strong&gt;Parse&lt;/strong&gt; qila olsa natijani qaytaradi. Yokida &lt;strong&gt;False&lt;/strong&gt; qaytaradi(Yoki methodning return typega bog'liq)._&lt;/p&gt;

&lt;p&gt;3 - &lt;code&gt;TryParse(String, Int32)&lt;/code&gt; - &lt;em&gt;String orqali kiritgan ma'lumotni tekshiradi, Agar kiritgan ma'lumot raqam ko'rinishida bo'lsa natijani qaytaradi. Aks holda False.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;4 - &lt;code&gt;TryParse(ReadOnlySpan&amp;lt;Char&amp;gt;, IFormatProvider, Int32)&lt;/code&gt; - &lt;em&gt;Belgilar oralig'ini qiymatga ajratishga harakat qiladi.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;5 - &lt;code&gt;TryParse(String, IFormatProvider, Int32)&lt;/code&gt; - _Qatorni qiymatga ajratishga harakat qiladi. _&lt;/p&gt;

&lt;p&gt;6 - &lt;code&gt;TryParse(ReadOnlySpan&amp;lt;Byte&amp;gt;, NumberStyles, IFormatProvider, Int32)&lt;/code&gt; - _UTF-8 belgilar oralig'ini qiymatga ajratishga harakat qiladi. _&lt;/p&gt;

&lt;p&gt;7 - &lt;code&gt;Shu ko'rinishda ketaveradi. O'zingiz har bir harakatlar qilib ko'rasiz, hali pastda o'rganadigan narsalar ko'p :)&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;C# dasturlash tilida yozilishi&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;public static bool TryParse (ReadOnlySpan&amp;lt;byte&amp;gt; utf8Text, IFormatProvider? provider, out int result);
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;code&gt;.NET 8&lt;/code&gt; &amp;amp; &lt;code&gt;.NET 9&lt;/code&gt;_ ga tegishli Method hisoblanadi_.&lt;/p&gt;

&lt;p&gt;Agar method orqali kelgan qiymat &lt;code&gt;null&lt;/code&gt; bo'lsa, Convert qilish bajarilmaydi.&lt;/p&gt;

&lt;p&gt;Kelinglar bir Misollar orqali ko'rib chiqamiz. &lt;/p&gt;

&lt;p&gt;public static void Main() &lt;br&gt;
{&lt;br&gt;
     string[] sonlar = { null, "1244", "-8595", "+550", "23.5", "(102);", "01FR"}&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt; foreach(var i in sonlar) 
 {
      int son;
      bool omad = int.TryParse(i, out son);
      if (omad)
         Console.WriteLine($"{i} Convert qilindi &amp;gt;&amp;gt; {son}");
      else 
         Console.WriteLine("Convert qilishda xatolik, null qiymatlarni ham tekshiring!");
 } 
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;}&lt;/p&gt;

&lt;p&gt;Bu yerda Code Convert qila olmaydi, Sababi ?&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Birinchi qiymatda Null qiymat oldi. Failed❌&lt;/li&gt;
&lt;li&gt;1244 Bunisi ishlaydi✅&lt;/li&gt;
&lt;li&gt;-8595 Bunisi ishlaydi✅&lt;/li&gt;
&lt;li&gt;+550 Bunisi ishlaydi✅&lt;/li&gt;
&lt;li&gt;23.5 Failed ❌&lt;/li&gt;
&lt;li&gt;(102); Faied. Sababi ortiqcha belgilar ham qo'shilgan.&lt;/li&gt;
&lt;li&gt;01FR - Failed❌, Raqam va Sonlar aralashib ketdi.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Qisqacha bo'lsa ham tushuntira oldin degan umiddaman. &lt;/p&gt;

</description>
      <category>tryparse</category>
      <category>csharp</category>
      <category>uzbek</category>
      <category>integer</category>
    </item>
    <item>
      <title>C# 13.0 da nima yanglik ?</title>
      <dc:creator>Ozodbek</dc:creator>
      <pubDate>Sun, 26 May 2024 19:08:00 +0000</pubDate>
      <link>https://dev.to/ozodbek_soft/c-130-da-nima-yanglik--5dcl</link>
      <guid>https://dev.to/ozodbek_soft/c-130-da-nima-yanglik--5dcl</guid>
      <description>&lt;p&gt;*&lt;em&gt;Ushbu maqolada nimalarni o'rganamiz ? *&lt;/em&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;C#&lt;/strong&gt; 13.0 haqida&lt;/li&gt;
&lt;li&gt;1👆&lt;/li&gt;
&lt;li&gt;Params to'plamlar&lt;/li&gt;
&lt;li&gt;Indexga yashirin kirish&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;C# 13.0 - Bu C# ning 13.0 chi versioni degani. O'zimizni tilda avlodi. Va har yili yangilanib boradi. Bazida esa 2 3 yilda bir yangilanadi...&lt;br&gt;
Xullas boshladik!&lt;/p&gt;

&lt;p&gt;&lt;code&gt;C# 13.0&lt;/code&gt; o'z ichiga quyidagi narsalarni oladi. &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Siz ushbu functionni &lt;code&gt;.NET sdk 9.0&lt;/code&gt; da ishlata olasiz xolos.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Visual studio 2022&lt;/strong&gt; yoki &lt;strong&gt;VsCode&lt;/strong&gt; orqali ishlatishingiz mumkin.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;C# 13.0 Faqatgina SDK 9.0 da ishlaydi. Undan pastiga emas ❌&lt;/p&gt;

&lt;p&gt;Xohlasangiz &lt;code&gt;.NET SDK 9.0&lt;/code&gt; ni o'rnating (&lt;a href="https://dotnet.microsoft.com/en-us/download/dotnet/9.0" rel="noopener noreferrer"&gt;ushbu havola orqali&lt;/a&gt;)&lt;/p&gt;

&lt;p&gt;&lt;code&gt;Params&lt;/code&gt; modifikator massiv turlari bilan cheklanmaydi. Endi siz  &lt;code&gt;System.Span&amp;lt;T&amp;gt; , System.ReadOnlySpan&amp;lt;T&amp;gt;&lt;/code&gt; va &lt;code&gt;System.Collections.Generic.IEnumerable&amp;lt;T&amp;gt;&lt;/code&gt; ni params har qanday to'plam turidan foydalana olasiz. Add orqali esa &lt;code&gt;System.Collections.Generic.IEnumerable&amp;lt;T&amp;gt;&lt;/code&gt; , &lt;code&gt;System.Collections.Generic.IReadOnlyCollection&amp;lt;T&amp;gt;&lt;/code&gt; , &lt;code&gt;System.Collections.Generic.IReadOnlyList&amp;lt;T&amp;gt;&lt;/code&gt; , &lt;code&gt;System.Collections.Generic.ICollection&amp;lt;T&amp;gt;&lt;/code&gt; interfeyslari bor , va &lt;code&gt;System.Collections.Generic.IList&amp;lt;T&amp;gt;&lt;/code&gt; dan ham foydalanish mumkin.&lt;/p&gt;

&lt;p&gt;Indexga yashirin murojaat qilish. &lt;/p&gt;

&lt;p&gt;Endilikda &lt;code&gt;^&lt;/code&gt; orqali objectni ishga tushirish ham mumkin(ruxsat beriladi). Ya'ni nima demoqchiman. Ming marta eshitgandan bir marta korgan yaxshi deganlaridek. Quyidagi code orqali siz massivni ishga tushirishingiz mumkin.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;var sanash = new TimerRemaining()
{
    buffer =
    {
        [^1] = 0,
        [^2] = 1,
        [^3] = 2,
        [^4] = 3,
        [^5] = 4,
        [^6] = 5,
        [^7] = 6,
        [^8] = 7,
        [^9] = 8,
        [^10] = 9
    }
};
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;ana ko'rdilarmi. &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Hozir bu code 0 dan 9 gacha hisoblovchi massivni yaratadi. C# 9.0 &lt;code&gt;^&lt;/code&gt; belgi orqali massivni ishga tushirishga ruxsat bermasdi. &lt;code&gt;C# 13.0&lt;/code&gt; da esa o'zingzi ko'rib turibsiz.&lt;br&gt;
&lt;em&gt;Hozircha men ham tushunganlarim shu. Lekin hali bundanda qiziqarli maqolalar hali oldinda...&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;

</description>
      <category>csharp</category>
      <category>dotnet</category>
      <category>microsoft</category>
      <category>news</category>
    </item>
    <item>
      <title>Github va Git haqida</title>
      <dc:creator>Ozodbek</dc:creator>
      <pubDate>Thu, 23 May 2024 06:00:06 +0000</pubDate>
      <link>https://dev.to/ozodbek_soft/github-va-git-haqida-22eg</link>
      <guid>https://dev.to/ozodbek_soft/github-va-git-haqida-22eg</guid>
      <description>&lt;p&gt;Ishda yoki biror loyihada birga ishlash uchun Git va Githubdan foydalanish kerak. &lt;br&gt;
&lt;code&gt;S: Codelaringizni nazorat qilmoqchimisiz ? &lt;br&gt;
J: Git va Githubdan foydalaning. &lt;br&gt;
S: Version controll qilmoqchimisiz ? &lt;br&gt;
J: Git va Githubdan foydalaning.&lt;br&gt;
S: Yaxshi dasturchi bo'lmoqchimisiz ?&lt;br&gt;
J: Git va Githubdan foydalaning.&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Git va Github 21 asrning eng kattay texnologiyalardan bir deb aytsak ham bo'laveradi(qo'rqmasdan). Hozirgi siz ishlatadigan, yani katta dasturlar Codelari Git va Github orqali nazorat qilinadi. &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Tarif: Git-Github bu source controll { Git + Github = 💪 } &lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Endi savol tug'ilishi mumkin | Git nima o'zi (yesa bo'ladimi) ?&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Git&lt;/strong&gt;&lt;br&gt;
&lt;em&gt;Git - bu, siz tuzayotgan dasturlarning fayllarini aqliy ravishda kuzatib boruvchi boshqaruv tizimi! Ayniqsa siz Git texnologiyasi orqali, bir dastur ustida bir necha kishi bo'lib, jamoaviy ishlashingiz mumkin(Github platformasi orqali albatta). Hali chuqur kirishmaymiz, chunki Github haqida ham tushuncha olishingiz kerak halii...&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Github nima ?&lt;/strong&gt;&lt;br&gt;
Github bu - Cloudga asoslangan platforma bo'lib, u yerda siz yozgan codelaringizni - almashtirish, ulashish, saqlash va ommaga taqdim etishingiz mumkin... &lt;br&gt;
Misol uchun bir dastur tuzishga kirishdingiz va deyarli 90% ni bitirdingiz. To'satdan Computeringiz portlab ketdi yoki o'g'irlab ketishdi. Yokida Filellarni desktopdan o'chirib yubordingiz(Hazillarni ham yorvoramana 😆). U paytda siz Codelarni Githubga joylagan bo'lsangiz boshqa Laptop orqali davomidan ishlashingiz mumkin. Lekin Githubga qo'ymaagan bo'lsangiz....☠️&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Maqola oxirida: Githubga register qilish haqida tushuncha berib o'tmoqchiman...&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;1 - Istalgan browser orqali &lt;a href="https://github.com/" rel="noopener noreferrer"&gt;Github.com&lt;/a&gt; saytiga o'ting.&lt;br&gt;
2 - Githubga kirgandan keyin, yuqorida &lt;code&gt;sign up&lt;/code&gt; | &lt;code&gt;sign in&lt;/code&gt;degan ikki yo'l bo'ladi. Agar Githubda yangi bo'lsangiz &lt;code&gt;sign up&lt;/code&gt; orqali register qilishni boshlaysiz, hammasi oson va tez. telefon raqam, ism-familya, username github uchun, va bir ikki so'rovlarga javob berasiz xolos. Hammasis oddiy. Agarda Github accountingiz bo'lsa(oldingi accountingiz) &lt;code&gt;sign in&lt;/code&gt; orqali &lt;code&gt;username and passwordni&lt;/code&gt; kiritib ishlayverasiz..&lt;/p&gt;

&lt;p&gt;*&lt;em&gt;Gitni o'rnatish qanday ? *&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Gitni o'natish uchun istalgan browser orqali &lt;a href="https://git-scm.com/downloads" rel="noopener noreferrer"&gt;Git&lt;/a&gt; saytiga o'ting. Download tugmasini bosib o'zingizning Computeringiz xususiyatlariga mos ravishda yuklab oling. Hammasi oson. &lt;br&gt;
 Terminal orqali ham o'rnatish mumkin:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;winget install --id Git.Git -e --source winget
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;shunchaki ushbu commandni tering va sizda git yuklanishni boshlaydi.&lt;/p&gt;

</description>
      <category>git</category>
      <category>github</category>
      <category>dotnet</category>
    </item>
    <item>
      <title>To'plamlar | array, list, queue, stack, dictionary</title>
      <dc:creator>Ozodbek</dc:creator>
      <pubDate>Mon, 20 May 2024 08:19:43 +0000</pubDate>
      <link>https://dev.to/ozodbek_soft/toplamlar-array-list-queue-stack-dictionary-1ed3</link>
      <guid>https://dev.to/ozodbek_soft/toplamlar-array-list-queue-stack-dictionary-1ed3</guid>
      <description>&lt;p&gt;&lt;strong&gt;Ushbu maqolada nimalarni o'rganamiz ?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;code&gt;1 - _To'plamlar nima_ ? &lt;br&gt;
2 - _Array nima_ ?&lt;br&gt;
3 - _List nima_ ? &lt;br&gt;
4 - _Queue nima _? &lt;br&gt;
5 - _Dictionary nima_ ?&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Javoblarni birma bir ko'rib chiqamiz.&lt;br&gt;
&lt;strong&gt;1.&lt;/strong&gt; Ma'lumot turdagi bir nechta ma'lumotni o'zida jamlay oladigan ma'lumot turi. Siz C# dasturlash tilida o'rgangan int, string, char, bool, double, struct, class, record va hokazo ma'lumot turlari, o'zlarida atigi bitta ma'lumotni saqlay oladi, Array, List, Queue, Dictionar esa bundan mustasno va C#da eng ko'p ishlatiladigan mashhur turlardir. Endi esa shu 4 ta asosiy turlarni birma bir ko'rib chiqamiz.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2.&lt;/strong&gt; Array - bu (Massiv) ham deyishadi. Lekin massiv demasdan array deganimiz yaxshiroq. Array bu bir xil tipdagi bir nechta ma'lumotlarni saqlashda ishlatilinadi. Array bu reference type. Tabiiyki xotiradan Heap dan joy oladi. Elemenlari ham default qiymat oladi. String typeda bo'lsa null oladi, int &amp;amp; double bo'lsa 0 qiymat oladi, bool bo'lsa false. E'lon qilishni ko'ramiz: Misol uchun sizda bir nechta string typedagi mevalar nomi bo'lsa, uni bunday saqlaysiz 👇&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;string[] mevalar = {"olma", "nok", "gilos"};
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Agar sonlar saqlamoqchi bo'lsangiz 👇&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;int[] sonlar = {1, 3, 5};
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;code&gt;int[]&lt;/code&gt; deganimiz bu shunchaki butun sonlarni qabul qilish uchun e'lon qilindi. &lt;code&gt;sonlar&lt;/code&gt; esa istalgancha o'zgaruvchi nomi. &lt;code&gt;{}&lt;/code&gt; qavs ichidagilar esa arrayni elementlari deb ataladi. Elementlarga esa index orqali murojaat qilinadi. Indexlar esa 0 dan boshlanib array lengthgacha teng bo'ladi..&lt;/p&gt;

&lt;p&gt;&lt;em&gt;C# xususiyatlaridan bir shingil code&lt;/em&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;var son = new[] {1, 3, 5, 6};
var meva = new[] {"olma", "shaftoli"};
Console.WriteLine(string.Join(", ", son));
Console.WriteLine(string.Join(", ", meva));
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Yana biri esa &lt;strong&gt;Collection expression&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;int[] son = [1, 4, 5];
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;vahokazo, qolgan featurelarni ko'rib olishingiz mumkin (practice orqali)&lt;/p&gt;

&lt;p&gt;*&lt;em&gt;3. *&lt;/em&gt;  Davomi bor....&lt;/p&gt;

</description>
      <category>array</category>
      <category>list</category>
      <category>queue</category>
      <category>dictionary</category>
    </item>
  </channel>
</rss>
