English
Open in Telegram

Post🔵 Python: @property — faqat private yoki protected atributlar uchun emas!

27 November 2025
I
Isoqjanov Ilyos | Python
🔵 Python: @property — faqat private yoki protected atributlar uchun emas! Ko‘pchilikda shunday tushuncha bor: “@property faqat private yoki protected atributlar bilan ishlatiladi.” Bu — noto‘g‘ri. Keling, to‘g‘risini tushunamiz👇 🔹 @property aslida nima uchun kerak? @property ning vazifasi: • atributni o‘qishda nazorat qilish (getter) • atributga qiymat berishda nazorat qilish (setter) • ichki kodni tashqi interfeysdan ajratish (encapsulation) • API ni chiroyli va pythonic qilish (obj.get_price() o‘rniga obj.price) Demak, @property — atributni boshqariladigan metodga aylantirish vositasi. Uning private/protected bilan to‘g‘ridan-to‘g‘ri bog'liq joyi yo‘q. 🔵 Unda nega hamma @property ni private atribut bilan ishlatadi? Buning muhim texnik sababi bor: @property def radius(self): return self.radius # ❌ cheksiz rekursiya Atribut va metod nomi bir xil bo'lib qolishi sababli cheksiz rekursiya yuzaga keladi, buni rekursiyani oldini olish uchun ularni nomini ikki xil qilinishi mumkin ya'ni radius atributi protected yoki private ko'rinishida olinishi mumkin: • _radius (protected) • __radius (private) Bu shunchaki rekursiyani oldini olish usuli. Hech qanday majburiy qoida emas. 🟢 Property private bo‘lmasdan ham ishlaydi Masalan, hisob-kitobli atribut: @property def area(self): return self.width * self.height Bu yerda private atribut umuman yo‘q, lekin property juda chiroyli ishlayapti. 🟣 Yoki faqat o‘qiladigan atribut: @property def info(self): return "User info" Bu ham private atribut bo'lishini talab qilmaydi. 🟡 Xulosa (eng muhim) @property — bu private atributlar uchun yaratilgan mexanizm emas. Uning vazifasi: atributga o‘xshash interfeys orqali boshqariladigan metod yaratish. Private/protected atributlar esa shunchaki: • ichki qiymatni ajratish • rekursiyani oldini olish • inkapsulyatsiyani yaxshilash uchun odatiy amaliyot xolos. 🟥 Qachon ishlatmaslik kerak? ❌ Juda katta va og‘ir hisob-kitob property ichida bo‘lsa ❌ Noaniq side effect bo‘lsa ❌ Atribut nomi orqali metod chaqirilayotganini yashirish zarar bo‘lsa Bunday hollarda odatiy metod ishlatgan ma’qul.
3 · 839 ·

Nearby in the feed

IIsoqjanov Ilyos | PythonPythonni o'rganish uchun roadmap (ya'ni o'rganish kerak bo'lgan narsalar va ularning ketma-ketligi). Shularning hammasini bilsangiz men senior dasturchiman deyvIIsoqjanov Ilyos | Python🧠 Pythonda Comprehension nima? Nega ishlatiladi? Python dasturlashda comprehension — ma’lumot tuzilmalarini ixcham, tez va o‘qilishi oson tarzda yaratish usuli.
this message
IIsoqjanov Ilyos | Python🔥 Obyekt class atributini o‘zgartirsa nima bo‘ladi? 👉 Ko‘pchilik o‘ylagandek, obyekt orqali class atributiga qiymat bersangiz, class atributi o‘zgarmaydi. AksinIIsoqjanov Ilyos | Python🐍 Python: @classmethod nimaga kerak? Pythonda obyektlar va classlar qanday ishlashini tushunish — toza va mantiqli kod yozishning asosiy qismidir. Bugun @classm
IIsoqjanov Ilyos | PythonIsoqjanov Ilyos | Python@python_fastapi_uz · channel · Tech
491subscribers275posts in the index
Venue feed Open in Telegram

An open public feed from the search index ChatCrawler — “Google for public Telegram”; refreshed as the venue is crawled. Times are UTC.

Public content only, official Telegram API. About · FAQ · Index limits · Remove a page · Catalog · Search · How we count