<?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>Forem: umida5</title>
    <description>The latest articles on Forem by umida5 (@umida5).</description>
    <link>https://forem.com/umida5</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%2F1256067%2F8f1b53d5-929e-4e61-84d2-a01a7e2b02b5.jpg</url>
      <title>Forem: umida5</title>
      <link>https://forem.com/umida5</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/umida5"/>
    <language>en</language>
    <item>
      <title>🔐 C# Logger haqida va uning darajalari</title>
      <dc:creator>umida5</dc:creator>
      <pubDate>Fri, 30 May 2025 10:50:12 +0000</pubDate>
      <link>https://forem.com/umida5/c-logger-haqida-va-uning-darajalari-379</link>
      <guid>https://forem.com/umida5/c-logger-haqida-va-uning-darajalari-379</guid>
      <description>&lt;h2&gt;
  
  
  Log darajalari (Logging Levels)
&lt;/h2&gt;

&lt;p&gt;1) - &lt;em&gt;Trace&lt;/em&gt; - Dasturchilar uchun foydali bo‘lgan, c# da console.writeline daka ishni bajaradi,lekin  debugdan nisbatan kamroq batafsil.&lt;br&gt;
2) - &lt;em&gt;Debug&lt;/em&gt; - Juda batafsil loglar, odatda debugging jarayonida ishlatiladi.&lt;br&gt;
3) - &lt;em&gt;Information&lt;/em&gt; - Dastur oqimini ko‘rsatadi. Masalan: ilova ishga tushdi, foydalanuvchi tizimga kirdi va hokazo.&lt;br&gt;
4) - &lt;em&gt;Warning&lt;/em&gt; - Kutilmagan yoki ehtimoliy muammo, lekin jiddiy emas.&lt;br&gt;
5) - &lt;em&gt;Error&lt;/em&gt; - Jiddiy xatolik. Masalan: servis to‘xtab qoldi yoki tizimda falokat yuz berdi.&lt;br&gt;
6) - &lt;em&gt;Critical&lt;/em&gt; - bu eng yuqori log darajasi. Bu darajadagi loglar dastur yoki tizim ishining to‘xtashiga olib keladigan holatlar uchun ishlatiladi.&lt;/p&gt;

</description>
      <category>csharp</category>
      <category>programming</category>
      <category>codepen</category>
      <category>logerlog</category>
    </item>
    <item>
      <title>C# da Nuqtalar va Doiralar bilan Ishlash</title>
      <dc:creator>umida5</dc:creator>
      <pubDate>Wed, 12 Mar 2025 13:02:19 +0000</pubDate>
      <link>https://forem.com/umida5/struct-5d2i</link>
      <guid>https://forem.com/umida5/struct-5d2i</guid>
      <description>&lt;p&gt;&lt;strong&gt;Ushbu maqolada C# dasturlash tilida nuqtalar (Point) va doiralar (Circle) bilan qanday ishlashni o‘rganamiz. Biz quyidagilarni amalga oshiramiz:&lt;/strong&gt;&lt;br&gt;
• Ikki nuqta orasidagi masofani hisoblaymiz.&lt;br&gt;
• Nuqta doira ichida joylashganligini tekshiramiz.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1. &lt;code&gt;Point&lt;/code&gt; (Nuqta) Struktura&lt;/strong&gt;&lt;br&gt;
 X va Y koordinatalariga ega bo‘lgan &lt;em&gt;struct&lt;/em&gt; dan foydalanamiz.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;public struct Point
{
    public int X { get; set; }
    public int Y { get; set; }
}

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;em&gt;Tushuntirish&lt;/em&gt;&lt;br&gt;
 &lt;code&gt;X&lt;/code&gt; va &lt;code&gt;Y&lt;/code&gt; – nuqtaning koordinatalari.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;public struct Point
{
    public int X { get; set; }
    public int Y { get; set; }

    public Point(string? input)
    {
        var inputArray = input.Split(' ');
        X = int.Parse(inputArray[0]);
        Y = int.Parse(inputArray[1]);
    }
}

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;code&gt;Point(string? input)&lt;/code&gt;  foydalanuvchi kiritgan ma'lumotni &lt;code&gt;("3 4")&lt;/code&gt; ikkita &lt;code&gt;X&lt;/code&gt; va &lt;code&gt;Y&lt;/code&gt; qiymatiga ajratadi.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;public double DistanceTo(Point other)
    {
        var cSquare = Math.Pow(X - other.X, 2) + Math.Pow(Y - other.Y, 2);
        return Math.Sqrt(cSquare);
    }
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;1️⃣Ikki nuqta orasidagi farqni topamiz:&lt;/p&gt;

&lt;p&gt;•&lt;code&gt;(X - other.X)&lt;/code&gt; → X koordinatalar farqi&lt;br&gt;
•&lt;code&gt;(Y - other.Y)&lt;/code&gt; → Y koordinatalar farqi&lt;br&gt;
&lt;code&gt;DistanceTo(Point other)&lt;/code&gt; – ikki nuqta orasidagi masofani hisoblaydi.&lt;br&gt;
2️⃣ Kvadratlarni qo‘shamiz:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgtihzgmn8g3so8hf6y2h.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgtihzgmn8g3so8hf6y2h.png" alt="Image description" width="414" height="64"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Bu &lt;strong&gt;Pifagor teoremasiga&lt;/strong&gt; asoslangan.&lt;/p&gt;

&lt;p&gt;Misol: &lt;code&gt;DistanceTo&lt;/code&gt; qanday ishlaydi?&lt;br&gt;
Agar ikkita nuqta shunday bo‘lsa:&lt;br&gt;
📌 &lt;code&gt;a(3,4)&lt;/code&gt;&lt;br&gt;
📌 &lt;code&gt;b(6,8)&lt;/code&gt;&lt;br&gt;
✅ Hisoblash:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvhqrxfb7ij1lz7acc1jd.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvhqrxfb7ij1lz7acc1jd.png" alt="Image description" width="543" height="56"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;💡 Natija: 5 birlik masofa.&lt;br&gt;
3️⃣ Kvadrat ildizni hisoblaymiz:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F93b0jhl3h06pt8m9tgvw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F93b0jhl3h06pt8m9tgvw.png" alt="Image description" width="458" height="53"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Bu ikkita nuqta orasidagi masofa bo‘ladi.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2. &lt;code&gt;Circle&lt;/code&gt; (Doira) Strukturasi&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Endi doirani ifodalash uchun Point markazi &lt;code&gt;(Center)&lt;/code&gt; va &lt;code&gt;Radius&lt;/code&gt; dan foydalanamiz.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;public struct Circle
{
    public Point Center { get; set; }
    public int Radius { get; set; }

    public bool Includes(Point point)
    {
        var distance = point.DistanceTo(Center);
        return distance &amp;lt; Radius;
    }
}

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;•&lt;code&gt;Center&lt;/code&gt; – doiraning markazi.&lt;br&gt;
•&lt;code&gt;Radius&lt;/code&gt; – doiraning radiusi.&lt;br&gt;
•&lt;code&gt;Includes(Point point)&lt;/code&gt; – berilgan nuqta doiraning ichida yoki yo‘qligini tekshiradi.&lt;br&gt;
Circle struktura &lt;strong&gt;markaz&lt;/strong&gt; (nuqta) va &lt;strong&gt;radius&lt;/strong&gt; dan iborat. &lt;code&gt;Includes&lt;/code&gt; metodi esa berilgan nuqta doira ichida yoki yo‘qligini tekshiradi.&lt;/p&gt;

&lt;p&gt;1️⃣ Nuqta va doira markazi orasidagi masofa topiladi:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;var distance = point.DistanceTo(Center);

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;2️⃣ Agar masofa radiusdan kichik bo‘lsa, nuqta doira ichida 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;return distance &amp;lt; Radius;

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Misol: Includes qanday ishlaydi?&lt;br&gt;
📌 &lt;code&gt;Doira markazi:&lt;/code&gt; (0,0)&lt;br&gt;
📌 &lt;code&gt;Radius:&lt;/code&gt; 5&lt;br&gt;
📌 &lt;code&gt;Tekshirilayotgan nuqta:&lt;/code&gt; (3,4)&lt;/p&gt;

&lt;p&gt;✅ Hisoblash:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1b8949dzy85gg6vkp72l.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1b8949dzy85gg6vkp72l.png" alt="Image description" width="554" height="74"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;💡 Natija:&lt;/p&gt;

&lt;p&gt;• 5 &amp;lt; 5 emas → Nuqta doira ichida emas (&lt;code&gt;false&lt;/code&gt;).&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3. Asosiy Dastur &lt;code&gt;(program.cs)&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Endi ikkita nuqta orasidagi &lt;em&gt;masofani&lt;/em&gt; hisoblash uchun asosiy dastur yozamiz:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;var a = new Point(Console.ReadLine());
var b = new Point(Console.ReadLine());

Console.WriteLine(a.DistanceTo(b));

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;1️⃣ Foydalanuvchi ikkita nuqta koordinatalarini kiritadi.&lt;br&gt;
2️⃣ DistanceTo metodi ikki nuqta orasidagi masofani hisoblaydi va ekranga chiqaradi.&lt;br&gt;
✅ Misol:&lt;br&gt;
📌 Kirish:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;3 4
6 8

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;📌 Chiqish:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;5

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;em&gt;Xulosa&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;✅ Point struktura nuqtalarni ifodalaydi va ularning orasidagi masofani hisoblaydi.&lt;br&gt;
✅ Circle struktura doira yaratish va nuqta doiraning ichida yoki tashqarisida ekanligini tekshirish imkonini beradi.&lt;br&gt;
✅ program.cs orqali ikkita nuqta orasidagi masofani hisoblaymiz.&lt;/p&gt;

</description>
      <category>csharp</category>
      <category>circle</category>
      <category>distance</category>
      <category>radius</category>
    </item>
    <item>
      <title>Member,Structda,Field,Property,Method,Constructor("this"),overloading,overriding,readonly().</title>
      <dc:creator>umida5</dc:creator>
      <pubDate>Sun, 09 Mar 2025 10:13:27 +0000</pubDate>
      <link>https://forem.com/umida5/memberstructdafieldpropertymethodconstructorthisoverloadingoverridingreadonly-303o</link>
      <guid>https://forem.com/umida5/memberstructdafieldpropertymethodconstructorthisoverloadingoverridingreadonly-303o</guid>
      <description>&lt;p&gt;&lt;strong&gt;Member&lt;/strong&gt; - C# da a'zo sinf, struktura yoki interfeysning komponentidir. A'zolar ob'ekt bilan bog'liq xatti-harakatlar va ma'lumotlarni belgilaydi.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Field&lt;/em&gt; - maydon ma'lumotlarni saqlash uchun sinf yoki struktura ichida e'lon qilingan o'zgaruvchidir. Maydonlar ob'ektning holatini yoki atributlarini belgilaydi.&lt;br&gt;
&lt;em&gt;Property&lt;/em&gt; - xususiyat private maydonlarga boshqariladigan kirishni ta'minlaydigan sinf a'zolarining maxsus turidir. Xususiyatlar inkapsulyatsiyani amalga oshirishda maydon qiymatlarini olish (retrieve) va o'rnatish (modify) imkonini beradi.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Method&lt;/em&gt; -  bu usul ma'lum bir vazifani bajaradigan kod blokidir. Usullar kodni qayta ishlatish, modullilik va dasturda mantiqni tashkil qilishda yordam beradi.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Constructor&lt;/strong&gt; - bu sinf ob'ekti yaratilganda avtomatik ravishda chaqiriladigan maxsus usul. U maydonlarni ishga tushirish va ob'ektni sozlash uchun ishlatiladi.&lt;br&gt;
&lt;code&gt;class ClassName &lt;br&gt;
{&lt;br&gt;
    public ClassName() &lt;br&gt;
    {&lt;br&gt;
        // Initialization code&lt;br&gt;
    }&lt;br&gt;
}&lt;br&gt;
&lt;/code&gt;&lt;br&gt;
&lt;em&gt;this&lt;/em&gt; - konstruktordagi this kalit so'zi bir sinfdagi boshqa konstruktorni chaqirish uchun ishlatiladi. Bu konstruktor zanjirida yordam beradi, kodning takrorlanishini kamaytiradi.&lt;/p&gt;

&lt;p&gt;how to use:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;class ClassName {
    public string Property1;
    public int Property2;

    // Constructor 1 (Default)
    public ClassName() : this("Default", 0) { }

    // Constructor 2 (Single Parameter)
    public ClassName(string property1) : this(property1, 10) { }

    // Constructor 3 (Full Initialization)
    public ClassName(string property1, int property2) {
        Property1 = property1;
        Property2 = property2;
    }
}

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;for example:&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;// Constructor 1 (Default)
public Person() : this("Unknown", 0) { }

// Constructor 2 (Parameterized)
public Person(string name) : this(name, 18) { }

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

public void Introduce() =&amp;gt; Console.WriteLine($"Hi, I'm {Name}, {Age} years old!");
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;}&lt;br&gt;
`&lt;br&gt;
&lt;em&gt;overloading&lt;/em&gt; - member overloading bu faqat parametrlar soni yoki turi bilan farq qiladigan, lekin bir xil nomga ega bo'lgan bir xil turdagi ikki yoki undan ortiq a'zolarni yaratishni anglatadi.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;&lt;/code&gt;`&lt;br&gt;
public static class Console &lt;br&gt;
{&lt;br&gt;
    public void WriteLine();&lt;br&gt;
    public void WriteLine(string value);&lt;br&gt;
    public void WriteLine(bool value);&lt;/p&gt;

&lt;p&gt;}&lt;br&gt;
`&lt;code&gt;&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;overriding&lt;/em&gt; - overriding  modifikatori meros qilib olingan usul, xususiyat, indeksator yoki hodisaning mavhum yoki virtual amalga oshirilishini kengaytirish yoki o'zgartirish uchun talab qilinadi.&lt;/p&gt;

&lt;p&gt;exapmle:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;&lt;/code&gt;`&lt;br&gt;
using System;&lt;/p&gt;

&lt;p&gt;class Animal &lt;br&gt;
{&lt;br&gt;
    public virtual void Speak() &lt;br&gt;
    {&lt;br&gt;
        Console.WriteLine("Animal makes a sound.");&lt;br&gt;
    }&lt;br&gt;
}&lt;/p&gt;

&lt;p&gt;class Dog : Animal &lt;br&gt;
{&lt;br&gt;
    public override void Speak() &lt;br&gt;
    {&lt;br&gt;
        Console.WriteLine("Dog barks.");&lt;br&gt;
    }&lt;br&gt;
}&lt;/p&gt;

&lt;p&gt;class Program &lt;br&gt;
{&lt;br&gt;
    static void Main() &lt;br&gt;
    {&lt;br&gt;
        Animal myAnimal = new Animal();&lt;br&gt;
        myAnimal.Speak(); // Output: Animal makes a sound.&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;    Animal myDog = new Dog();
    myDog.Speak(); // Output: Dog barks.
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;}&lt;br&gt;
`&lt;code&gt;&lt;/code&gt;&lt;br&gt;
&lt;em&gt;readonly&lt;/em&gt; - (faqat field) maydonga tayinlash faqat &lt;br&gt;
deklaratsiyaning bir qismi sifatida yoki bir xil &lt;br&gt;
sinfdagi konstruktorda sodir bo'lishi mumkinligini &lt;br&gt;
ko'rsatadi. Maydon deklaratsiyasi va konstruktor ichida &lt;br&gt;
faqat o'qish uchun maydon bir necha marta tayinlanishi va qayta tayinlanishi mumkin.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;public readonly double Sum()&lt;br&gt;
{&lt;br&gt;
    return X + Y;&lt;br&gt;
}&lt;/code&gt;&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>programming</category>
      <category>csharp</category>
    </item>
    <item>
      <title>Operators</title>
      <dc:creator>umida5</dc:creator>
      <pubDate>Fri, 18 Oct 2024 12:15:29 +0000</pubDate>
      <link>https://forem.com/umida5/operators-20om</link>
      <guid>https://forem.com/umida5/operators-20om</guid>
      <description>&lt;p&gt;Bu operatorlar mantiqiy qiymatlar bilan ishlaydi (&lt;code&gt;true&lt;/code&gt; yoki &lt;code&gt;false&lt;/code&gt;):&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;&lt;code&gt;&amp;amp;&amp;amp;&lt;/code&gt;&lt;/strong&gt; (AND - va)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;&lt;code&gt;||&lt;/code&gt;&lt;/strong&gt; (OR - yoki)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;&lt;code&gt;!&lt;/code&gt;&lt;/strong&gt; (NOT - emas)
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;bool a = true;
bool b = false;
bool natija1 = a &amp;amp;&amp;amp; b;  // false (ikkalasi ham true bo'lishi kerak)
bool natija2 = a || b;  // true (bittasi true bo'lsa ham yetarli)
bool natija3 = !a;      // false (a ning aksi)
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



</description>
      <category>dotnet</category>
      <category>csharp</category>
    </item>
    <item>
      <title>Value type va Reference Type</title>
      <dc:creator>umida5</dc:creator>
      <pubDate>Fri, 18 Oct 2024 12:11:09 +0000</pubDate>
      <link>https://forem.com/umida5/value-type-va-reference-type-214l</link>
      <guid>https://forem.com/umida5/value-type-va-reference-type-214l</guid>
      <description>&lt;p&gt;c# da &lt;strong&gt;struct&lt;/strong&gt; va &lt;strong&gt;class&lt;/strong&gt; orasidagi asosiy farq nima?&lt;/p&gt;

&lt;p&gt;Class reference ma’lumot turi, struct esa value ma’lumot turiga kiradi. Classlar inheritance (Meros) ni qo'llab-quvvatlaydi va null bo’la oladi. Bundan tashqari murakkab ob'ektlar uchun ishlatiladi. Struct esa inheritance (Meros) ni qo’llab-quvvatlamaydi va value ma’lumot turi bo’lgani uchun kichikroq ob’ektlar uchun ishlatiladi.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Class nad Object</title>
      <dc:creator>umida5</dc:creator>
      <pubDate>Fri, 18 Oct 2024 12:02:09 +0000</pubDate>
      <link>https://forem.com/umida5/class-nad-object-2a49</link>
      <guid>https://forem.com/umida5/class-nad-object-2a49</guid>
      <description>&lt;p&gt;a) Class ichida metodni qanday declaratsiya qilasiz?&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;class Avtomobil
{
    // Fields (maydonlar)
    public string model;
    public string rang;
    public int yil;

    // Methods (usullar)
    public void Yurish()
    {
        Console.WriteLine(model + " harakatlanmoqda.");
    }
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;b) Quyidagi koddagi &lt;strong&gt;this&lt;/strong&gt; kalit so'zining ma'nosini tushuntiring:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;class Person
{
  public string Name;
  public Person(string name)
  {
    this.Name = name;
  }
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;C# da &lt;strong&gt;this&lt;/strong&gt; kalit so'zi klass ichidagi o'zgaruvchilarni yoki xususiyatlarni anglatish uchun ishlatiladi. this yordamida siz hozirgi obyektning xususiyatlariga yoki metodlariga murojaat qilishingiz mumkin.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;this.Name: Bu hozirgi Person obyekti (this)ning Name xususiyatiga murojaat qilmoqda.&lt;/li&gt;
&lt;li&gt;name: Bu konstruktor funksiyasiga parametr sifatida o'tkazilgan qiymat.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Agar siz Person klassini yaratishda name nomli parametr berilsa, u holda this.Name xususiyatini o'rnatishda name parametrining qiymatini ishlatamiz. Bu yordamida Name xususiyati obyektda saqlanadi.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;this&lt;/em&gt; kalit so'zi hozirgi obyektdagi xususiyatlarga murojaat qilish uchun kerak.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Namespace</title>
      <dc:creator>umida5</dc:creator>
      <pubDate>Fri, 18 Oct 2024 11:44:00 +0000</pubDate>
      <link>https://forem.com/umida5/namespace-2fhe</link>
      <guid>https://forem.com/umida5/namespace-2fhe</guid>
      <description>&lt;p&gt;a) using System; bu kodning vazifasi nima?&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;using System;&lt;/strong&gt; C# dasturlash tilida standart kutubxonaning System nomli nomlar fazosini (namespace) kiritish uchun ishlatiladi. Bu kutubxona turli xil asosiy funksiyalar va sinflar, shu jumladan:&lt;/p&gt;

&lt;p&gt;Ma'lumot turlari (masalan, int, string, bool)&lt;br&gt;
Klasslar va interfeyslar (masalan, Exception, DateTime)&lt;/p&gt;

&lt;p&gt;using System; – bu kodning qulayligini oshirish va System sinflarga tez va oson kirish imkonini berish uchun ishlatiladi.&lt;/p&gt;

&lt;p&gt;b)Quyidagi kod qaysi xato beradi va uni qanday tuzatish mumkin?&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;namespace MyApp
{
  class Program
   {
      static void Main()
      {
        Console.WriteLine("hello world");
      }
    }
}

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;bu kodda xato class programni va static void Main ni ham alohida namespace dan tashqarida yo'zish kerak edi,chunki namespace ichida  Sinflar, interfeyslar, strukturalar va boshqa elementlar ishlatiladi.Lekin class Program va main hech qachon namespace ni ichida yozilmaydi.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Class and Objects</title>
      <dc:creator>umida5</dc:creator>
      <pubDate>Fri, 18 Oct 2024 11:30:10 +0000</pubDate>
      <link>https://forem.com/umida5/class-and-objects-13b6</link>
      <guid>https://forem.com/umida5/class-and-objects-13b6</guid>
      <description>&lt;p&gt;a)c# tilida objectni qanday yaratasiz?&lt;/p&gt;

&lt;p&gt;object yaratilishi&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;SinfNomi obektNomi = new SinfNomi();
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;b)Quyidigi kodda nima xato?&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;class Person
{
   public string Name;
   public Int Age;
}
Person p;
p.name = "John";
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Person p dan boshlab kod class program ichida static void main ichida yo'zish kerak edi. &lt;/p&gt;

</description>
    </item>
    <item>
      <title>Nulable Types</title>
      <dc:creator>umida5</dc:creator>
      <pubDate>Fri, 18 Oct 2024 11:16:28 +0000</pubDate>
      <link>https://forem.com/umida5/nulable-types-1dg</link>
      <guid>https://forem.com/umida5/nulable-types-1dg</guid>
      <description>&lt;p&gt;C# da &lt;strong&gt;nullable type&lt;/strong&gt; (nolga qabul qiluvchi tur) qiymat turlariga null qiymatini berish imkonini beradi.&lt;/p&gt;

&lt;p&gt;Nullable Type yaratish:&lt;/p&gt;

&lt;p&gt;Nullable turlarni yaratish uchun qiymat turining orqasiga &lt;strong&gt;?&lt;/strong&gt; qo'shiladi. Misol:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;&lt;br&gt;
int? nullableInt = null; // nullable int, hozirgi qiymati null&lt;br&gt;
&lt;/code&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? num = null;

if (num.HasValue) 
{
    Console.WriteLine(num.Value); // qiymat mavjud bo'lsa, chiqazadi
} 
else 
{
    Console.WriteLine("Null value"); // aks holda 0 chiqaradi
}

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Nullable turlar qiymat turlarini null qiymatini qabul qilish imkonini beradi va bu dasturlashda ko'plab holatlarni yanada qulayroq hal qilishga yordam beradi.&lt;/p&gt;

</description>
      <category>devto</category>
      <category>csharp</category>
      <category>dotnet</category>
      <category>programming</category>
    </item>
    <item>
      <title>Value Type and Reference Type</title>
      <dc:creator>umida5</dc:creator>
      <pubDate>Fri, 18 Oct 2024 11:01:03 +0000</pubDate>
      <link>https://forem.com/umida5/value-type-and-reference-type-291i</link>
      <guid>https://forem.com/umida5/value-type-and-reference-type-291i</guid>
      <description>&lt;p&gt;&lt;strong&gt;Value type&lt;/strong&gt; (Qiymat turlari)&lt;br&gt;
Qiymat turlari to'g'ridan-to'g'ri qiymatlarni saqlaydi. Ular stack xotirasida joylashgan va o'zgaruvchilarga qiymatlarni ko'chirishda yangi nusxalar yaratiladi. Misollar:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;int&lt;/li&gt;
&lt;li&gt;float&lt;/li&gt;
&lt;li&gt;double&lt;/li&gt;
&lt;li&gt;char&lt;/li&gt;
&lt;li&gt;struct&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Value Type xususiyatlari:
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Stack xotirasida&lt;/strong&gt; saqlanadi.&lt;/li&gt;
&lt;li&gt;Har bir o'zgaruvchi o'z qiymatini mustaqil saqlaydi.&lt;/li&gt;
&lt;li&gt;Bir o'zgaruvchini boshqasiga o'zlashtirganda qiymat nusxasi o'rnatiladi.&lt;/li&gt;
&lt;li&gt;Null qiymat qabul qilmaydi (agar &lt;strong&gt;nullable&lt;/strong&gt; bo'lmasa).&lt;/li&gt;
&lt;li&gt;Turli qiymat o'zgarishlari boshqa o'zgaruvchilarga ta'sir qilmaydi.
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;int a = 10;
int b = a; // b endi 10, a ga bog'liq emas
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Havola turlari&lt;/strong&gt; (Reference Types)&lt;br&gt;
Havola turlari ma'lumotlar haqidagi ma'lumotlarni saqlaydi va ularni heap xotirasida joylashtiradi. O'zgaruvchilar havolalarni saqlaydi, shuning uchun bir o'zgaruvchini o'zgartirish boshqa o'zgaruvchilarga ham ta'sir qilishi mumkin. Misollar:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;class&lt;/li&gt;
&lt;li&gt;string&lt;/li&gt;
&lt;li&gt;array&lt;/li&gt;
&lt;li&gt;delegate
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;class Person 
{

    public string Name;
}

Person p1 = new Person();
p1.Name = "Ali";

Person p2 = p1; // p2 ham p1 ga bog'langan
p2.Name = "Vali"; // endi p1.Name ham "Vali" bo'ladi

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



</description>
      <category>programming</category>
      <category>dotnet</category>
      <category>csharp</category>
      <category>coding</category>
    </item>
    <item>
      <title>Object - oriented Programming</title>
      <dc:creator>umida5</dc:creator>
      <pubDate>Wed, 16 Oct 2024 11:51:21 +0000</pubDate>
      <link>https://forem.com/umida5/object-oriented-programming-3i79</link>
      <guid>https://forem.com/umida5/object-oriented-programming-3i79</guid>
      <description>&lt;ol&gt;
&lt;li&gt;&lt;ul&gt;
&lt;li&gt;"Inkapsulyatsiya" so'zi lotincha "in capsula" - qobiqda joylashtirish so'zidan olingan. Shundan kelib chiqib inkapsulatsiyani izolyatsiyalash, atrof muhit ta'siridan himoya qilgan holda yopish, himoyalash, biror bir buyum, narsani qolib, kapsulaga solib qo'yish deb tushunish mumkin.&lt;/li&gt;
&lt;/ul&gt;&lt;/li&gt;
&lt;li&gt;&lt;ul&gt;
&lt;li&gt;Inheritance bir yoki bir nechta classlardan meros olish degan ma’noda qo’llaniladi.&lt;/li&gt;
&lt;/ul&gt;&lt;/li&gt;
&lt;li&gt;&lt;ul&gt;
&lt;li&gt;Polimorfizm odatda inkapsulyatsiya va vorislikdan keyin OOP ning uchinchi ustuni deyiladi. Polimorfizm yunoncha so’z bo’lib, “ko’p shaklli” degan ma’noni anglatadi.&lt;/li&gt;
&lt;/ul&gt;&lt;/li&gt;
&lt;/ol&gt;

</description>
    </item>
    <item>
      <title>for Loop</title>
      <dc:creator>umida5</dc:creator>
      <pubDate>Mon, 14 Oct 2024 12:45:15 +0000</pubDate>
      <link>https://forem.com/umida5/for-loop-26h</link>
      <guid>https://forem.com/umida5/for-loop-26h</guid>
      <description>&lt;ol&gt;
&lt;li&gt;- &lt;strong&gt;&lt;em&gt;continue&lt;/em&gt;&lt;/strong&gt; siklni to‘xtatmay, faqat keyingi iteratsiyaga o‘tadi:
&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;for(int i = 0; i &amp;lt; 5; i++)
{
    if(i == 2)
    {
        continue; // 2 ni chiqarib yuboradi
    }
    Console.WriteLine(i);
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Natija :&lt;br&gt;
&lt;code&gt;&lt;br&gt;
0&lt;br&gt;
1&lt;br&gt;
3&lt;br&gt;
4&lt;br&gt;
&lt;/code&gt;&lt;br&gt;
2.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;for(int i = 1;i &amp;lt; 10;i++)
{
   if(i % 2 == 0)
   {
     Console.WriteLine(i);
   }
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Output: 2,4,6,8 alohida qatorlarda&lt;/p&gt;

</description>
      <category>csharp</category>
      <category>dotnet</category>
    </item>
  </channel>
</rss>
