<?xml version="1.0" encoding="utf-8" ?><rss version="2.0" xmlns:tt="http://teletype.in/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:media="http://search.yahoo.com/mrss/"><channel><title>@nosirbek-xakimov</title><generator>teletype.in</generator><description><![CDATA[@nosirbek-xakimov]]></description><link>https://teletype.in/@nosirbek-xakimov?utm_source=teletype&amp;utm_medium=feed_rss&amp;utm_campaign=nosirbek-xakimov</link><atom:link rel="self" type="application/rss+xml" href="https://teletype.in/rss/nosirbek-xakimov?offset=0"></atom:link><atom:link rel="next" type="application/rss+xml" href="https://teletype.in/rss/nosirbek-xakimov?offset=10"></atom:link><atom:link rel="search" type="application/opensearchdescription+xml" title="Teletype" href="https://teletype.in/opensearch.xml"></atom:link><pubDate>Mon, 25 May 2026 21:58:54 GMT</pubDate><lastBuildDate>Mon, 25 May 2026 21:58:54 GMT</lastBuildDate><item><guid isPermaLink="true">https://teletype.in/@nosirbek-xakimov/ie7sWthG08U</guid><link>https://teletype.in/@nosirbek-xakimov/ie7sWthG08U?utm_source=teletype&amp;utm_medium=feed_rss&amp;utm_campaign=nosirbek-xakimov</link><comments>https://teletype.in/@nosirbek-xakimov/ie7sWthG08U?utm_source=teletype&amp;utm_medium=feed_rss&amp;utm_campaign=nosirbek-xakimov#comments</comments><dc:creator>nosirbek-xakimov</dc:creator><title>out &amp; ref | C#</title><pubDate>Mon, 13 Jun 2022 00:03:01 GMT</pubDate><category>C# darslari</category><description><![CDATA[public static string GetNextName(ref int id) { string returnText = &quot;Next-&quot; + id.ToString(); id += 1; return returnText; } static void Main(string[] args) { int i = 1; Console.WriteLine(&quot;Previous value of integer i:&quot; + i.ToString()); string test = GetNextName(ref i); Console.WriteLine(&quot;Current value of integer i:&quot; + i.ToString()); }]]></description><content:encoded><![CDATA[
  <h3 id="H5BB"><code>ref</code></h3>
  <ul id="25pc">
    <li id="EYWc">qiymatlarni <em>reference</em> orqali jo&#x27;natadi yoki qaytaradi</li>
    <li id="sIT1"><code>ref</code> orqali jo&#x27;natilgan o&#x27;zgaruvchilar avvaldan <em>initialize</em> qilingan bo&#x27;lishi shart</li>
  </ul>
  <h3 id="S2yL"><code>out</code></h3>
  <ul id="vdj4">
    <li id="czvD"><code>ref</code> bilan deyarli bir xil.</li>
    <li id="1otX"><code>out</code> orqali jo&#x27;natilgan parameterlar <em>initialize</em> qilinishi shart emas, lekin method qaytishidan avval <em>initialize</em> bo&#x27;lshi shart</li>
  </ul>
  <h3 id="LqKp"><code>out</code> &amp; <code>ref</code> ishlatish mumkin emas</h3>
  <ul id="w7v3">
    <li id="zWN9"><code>async</code> keyword orqali yaratilgan asinxron methodlarda ishlatilmaydi</li>
    <li id="xbGh"><code>yield return</code> va <code>yield break</code> keywordlar mavjud methodlarda ishlatilmaydi</li>
    <li id="fv95"><code>out</code> <strong>extension method</strong>larning birinchi argument ustida ishlatilmaydi</li>
    <li id="5Mc6"><code>ref</code> <strong>extension method</strong>larning birinchi argumenti <code>struct</code> bo&#x27;lmasa yoki <code>struct constraint</code> mavjud bo&#x27;lmasa, ularni ustida ishlatib bo&#x27;lmaydi.</li>
  </ul>
  <p id="jBEd">public static string GetNextName(ref int id) { string returnText = &quot;Next-&quot; + id.ToString(); id += 1; return returnText; } static void Main(string[] args) { int i = 1; Console.WriteLine(&quot;Previous value of integer i:&quot; + i.ToString()); string test = GetNextName(ref i); Console.WriteLine(&quot;Current value of integer i:&quot; + i.ToString()); }</p>

]]></content:encoded></item><item><guid isPermaLink="true">https://teletype.in/@nosirbek-xakimov/o_G_uU0Vku9</guid><link>https://teletype.in/@nosirbek-xakimov/o_G_uU0Vku9?utm_source=teletype&amp;utm_medium=feed_rss&amp;utm_campaign=nosirbek-xakimov</link><comments>https://teletype.in/@nosirbek-xakimov/o_G_uU0Vku9?utm_source=teletype&amp;utm_medium=feed_rss&amp;utm_campaign=nosirbek-xakimov#comments</comments><dc:creator>nosirbek-xakimov</dc:creator><title>C# record type</title><pubDate>Sun, 12 Jun 2022 23:58:37 GMT</pubDate><description><![CDATA[Quyida bir xil vazifani bajaruvchi record va oddiy C# classni ko'ring.]]></description><content:encoded><![CDATA[
  <p id="Jj3L">Quyida bir xil vazifani bajaruvchi <code>record</code> va oddiy <code>C# class</code>ni ko&#x27;ring.</p>
  <pre id="D6PV">public record OdamRecord(string Ism, string Familya);

public class OdamClass
{
   public OdamClass(string ism, string familya)
   {
      Ism = ism;
      Familya= familya;
   }

   public string Ism{ get; set; }
   public string Familya{ get; set; }
}

var wahidRecord = new PersonRecord(&quot;Wahid&quot;, &quot;Abduhakimov&quot;);
var wahidClass = new PersonClass(&quot;Wahid&quot;, &quot;Abduhakimov&quot;);
</pre>
  <h3 id="hdlE">1. <code>record</code> immutable(o&#x27;zgarmas)</h3>
  <p id="21wo">Yuqoridagi usulda <code>record</code> yaratilganda uning property&#x27;lari immutable*(o&#x27;zgartirib bo&#x27;lmas)* bo&#x27;ladi. Ularga <code>record</code> yaratilyapkanda qiymat beriladi va keyin o&#x27;zgartirishning iloji yo&#x27;q. <code>{ get; init; }</code> deganday gap.</p>
  <pre id="iXtS">var wahid = new OdamRecord(&quot;Wahid&quot;, &quot;Abduhakimov&quot;);
wahid.Ism= &quot;David&quot;; // Compile error beradi
</pre>
  <h3 id="PzPx">2. Tizimli tenglash (==)</h3>
  <p id="KxkM"><code>record</code> structural equality*(tizimli tenlash)* usulidan foydalanadi. Bu degani agar 2 ta <code>record</code> obyektlarning ichidagi property&#x27;lari qiymatlari teng bo&#x27;lsa bu ikki obyektlar teng hisoblanadi.</p>
  <pre id="tMAb">// ... eng tepadagi kodga qarang
var wahid1 = OdamRecord(&quot;Wahid&quot;, &quot;Abduhakimov&quot;);
var wahid2 = OdamRecord(&quot;Wahid&quot;, &quot;Abduhakimov&quot;);
Console.WriteLine($&quot;{wahid1 == wahid2}&quot;);          // true

var davron1 = OdamClass(&quot;Davron&quot;, &quot;Abduhakimov&quot;);
var davron2 = OdamClass(&quot;Davron&quot;, &quot;Abduhakimov&quot;);
Console.WriteLine($&quot;{davron1 == davron2}&quot;);        // false
</pre>
  <ol id="P2gx">
    <li id="KecB"><code>record</code> non-immutable <code>record</code> yaratilganda odatda immutable bo&#x27;ladi dedik. Lekin uni non-immutable*(o&#x27;zgartirsa bo&#x27;ladigan)* qilib yaratsa ham bo&#x27;ladi.</li>
  </ol>
  <pre id="Dwyg">public record Odam
{
    public string Ism { get; set; }
    public string Familya{ get; set; }
}

var wahid = new Odam(&quot;Wahid, &quot;Abduhakimov&quot;);
wahid.Ism = &quot;David&quot;;  // muammosiz ishlaydi.
</pre>
  <blockquote id="ysp3">Zeriktirib qo&#x27;ymaslik uchun davomi keyingi postlarda 😊</blockquote>
  <p id="kD6Y"><em>Shu joyigacha erinmay o&#x27;qib kelgan ekansiz demak siz yoki C#&#x27;ni chindan sevasiz yoki shunchaki meni kuzatuvchimsiz. Ikkala holatda ham vaqtingiz uchun katta rahmat 😍</em></p>
  <p id="YwNm">Yurakcha va yakkashoxlarni bosib, menga &quot;podpiska&quot; tashashni unutmang.</p>

]]></content:encoded></item><item><guid isPermaLink="true">https://teletype.in/@nosirbek-xakimov/zB0THSoIpPd</guid><link>https://teletype.in/@nosirbek-xakimov/zB0THSoIpPd?utm_source=teletype&amp;utm_medium=feed_rss&amp;utm_campaign=nosirbek-xakimov</link><comments>https://teletype.in/@nosirbek-xakimov/zB0THSoIpPd?utm_source=teletype&amp;utm_medium=feed_rss&amp;utm_campaign=nosirbek-xakimov#comments</comments><dc:creator>nosirbek-xakimov</dc:creator><title>Test Iiko Bot</title><pubDate>Thu, 02 Jun 2022 18:37:14 GMT</pubDate><description><![CDATA[shunaqa gapla
Blog yozish uchun yaxshi joy ekan
]]></description><content:encoded><![CDATA[
  <p id="6ysr">shunaqa gapla<br />Blog yozish uchun yaxshi joy ekan<br /></p>
  <p id="okI4">Notion ga o&#x27;xsharkan<br />sa</p>
  <p id="94sU">d</p>
  <p id="pn18">as</p>
  <p id="3kjp">d</p>
  <p id="USkp">as</p>
  <p id="7VW3">d</p>
  <p id="ftWp">sa</p>
  <p id="nvHO">d</p>
  <p id="XzSh">as</p>
  <p id="5rqH"></p>
  <p id="rCgx">d</p>
  <p id="PrYq">as</p>
  <p id="ThuK">d</p>
  <p id="ErvZ"></p>
  <p id="hDlQ">sad</p>
  <p id="P4aL">as</p>
  <p id="GqBA">d</p>
  <p id="fcLA"></p>
  <p id="6LiR">as</p>
  <p id="1pyG">d</p>
  <p id="Rcq6">as</p>
  <p id="p80U"></p>
  <p id="o77F">d</p>
  <p id="UiXG">as</p>
  <p id="5scL">d</p>
  <p id="sFAW"></p>
  <p id="9XMi">d</p>
  <p id="Ct6A">as</p>
  <p id="18mW">d</p>
  <p id="AVtx">as</p>

]]></content:encoded></item></channel></rss>