TGViewer
Channel Public Channel
Pythopia

Pythopia

@pythopiachannel

آموزش تخصصی برنامه‌نویسی و مهندسی نرم افزار

ارتباط با ادمین و ثبت‌نام در دوره ها: @pythopia

چنل یوتیوب:
https://youtube.com/@pythopiatutoring
Subscribers
566
Photos
80
Videos
8
Links
16
Recent Posts 12 shown
Post #312 125
در این پست با یکی از مشکلات رایج و اساسی در توسعه نرم افزار آشنا می‌شویم و در پست بعدی روش های رایج حل اون در جنگو رو بررسی می‌کنیم.

اگر این نوع محتوا براتون مفیده لطفا لایک کنید تا تولیدش ادامه داشته باشه💙
  • ❤ 4
Post #309 329

This post (sticker, poll or similar) has no web preview. Open in Telegram

  • 🔥 4
  • ❤ 1
Post #308 177
🔔QUIZ TIME
Post #307 227
🎉 روز جهانی برنامه‌نویس مبارک!

فکر می‌کردیم با اومدن AI، برنامه‌نویسی راحت‌تر می‌شه. خب نوشتن کد هم سریع‌تر شد. ولی الان چالش اصلی ما فهمیدن و چک کردن کدیه که AI با کلی اعتماد‌به‌نفس تحویلمون می‌ده 🤓

الان معنی دیباگ کردن این شده که «چرا کدی که اولش منطقی به‌نظر می‌رسید کاری که میخوام رو نمی‌کنه؟»

این روز رو به همه‌ی کسایی که هنوز پشت هر خط کد فکر می‌کنن، تبریک می‌گیم 💙
  • ❤ 16
Post #301 639
آیا Message Queue و Task Queue یکی اند؟
نه دقیقا!

هر دو برای ارتباط ناهم‌زمان بین بخش‌های یک سیستم استفاده می‌شوند ولی اشتباه گرفتن اون ها در طراحی می‌تواند به تصمیم‌های اشتباه معماری منجر بشود.

در این پست با یک سناریوی واحد (ثبت سفارش) هر دو مفهوم رو کنار هم می‌بینیم.

سوالات و نظراتتون رو برامون کامنت کنید💙
  • ❤ 8
  • 🔥 2
Post #300 327
  • 🔥 5
  • 🏆 1
Post #296 777
اگر پروژه‌ت تسک زمان‌بر داره و می‌خوای زمان انتظار کاربر رو کم کنی، وقتشه با Celery آشنا بشی.

توی این پست یاد می‌گیریم:
🔸 چرا نباید کار سنگین رو مستقیم توی ریسپانس اجرا کنیم
🔸 معماری Celery از Broker تا Worker
🔸 یه مثال ساده از تعریف و اجرای تسک
🔸 چندتا نکته‌ی مهم برای کار با این تکنولوژی
  • 🔥 9
  • ❤ 2
Post #293 433
اگه یه پروژه‌ی جدی نوشتی و تاخیر دریافت داده از سرور رو تجربه میکنی، احتمالا وقتشه که با Redis آشنا بشی.

توی این پست یاد می‌گیریم:
🔸 چرا Redis چند برابر سریع‌تر از دیتابیس‌های معمولیه
🔸 چه نوع داده‌هایی رو می‌تونه نگه داره
🔸 کجاها واقعاً بهش نیاز داریم
🔸 کجاها نباید بهش تکیه کنیم

قسمت بعدی می‌ریم سراغ Celery تا ببینیم چطور همین Redis پشت صحنه‌ی صف‌ تسک ها قرار می‌گیره
  • ❤ 10
Post #288 295

Forwarded from انجمن مهندسی کامپیوتر دانشگاه الزهرا(س)تهران

این هفته به جای کافه رفتن، پایتون یاد بگیر!

“کارگاه آموزشی پایتون”

📍سرفصل ها:
ساختارهای داده
دستورهای شرطی
حلقه
تابع
ساخت ماژول اختصاصی
کار با فایل

🎖️همراه با ارائه مدرک معتبر از دانشگاه الزهرا

پشتیبانی فوری در تلگرام( گروه اختصاصی + چت خصوصی)

📚دسترسی دائمی به جزوه‌ها و ویدئوی
جلسات

📆زمان برگزاری:
۱۲و۱۳ شهریور
ساعت ۱۰ الی۱۲

💰شهریه:
عموم دانشجویان: ۵۸۰ هزارتومان
دانشجویان دانشگاه الزهرا :۴۹۰ هزارتومان

شرکت برای عموم آزاد است.

👥ظرفیت: ۳۵ نفر

برای رزرو به آیدی زیر پیام دهید:
@pythopia

❅معاونت فرهنگی و اجتماعی دانشگاه الزهرا (س)❅
https://eitaa.com/farhangialzahraplans
  • 🔥 9
Post #287 329
پیاده‌سازی Mixin در پایتون و اشتباهات رایج

💻 چگونه یک Mixin بنویسیم؟

پایتون سنتکس اختصاصی برای Mixin ندارد و از ارث‌بری چندگانه (Multiple Inheritance) استفاده می‌کند.
class JSONMixin:
def to_json(self):
import json
return json.dumps(self.dict)

class User(JSONMixin):
def init(self, name, email):
self.name = name
self.email = email

user = User("Ali", "ali@example.com")
print(user.to_json())


در این مثال، User قابلیت تبدیل به JSON را از JSONMixin بدون پیچیدگی اضافه به ارث برده است.

⚙️اهمیت ترتیب ارث‌بری و MRO
در پایتون، ترتیب فراخوانی متدها توسط Method Resolution Order (MRO) تعیین می‌شود.
هنگام استفاده از Mixinها، همیشه Mixin را قبل از کلاس پایه اصلی در پرانتز قرار دهید:
class MyView(LoginRequiredMixin, View):

این کار باعث می‌شود متدهای Mixin در صورت نیاز، متدهای کلاس اصلی را Override کنند.

⚠️ ۳ اشتباه رایج هنگام استفاده از Mixin:

1️⃣ افراط در استفاده: اضافه کردن ده‌ها Mixin به یک کلاس، خوانایی کد را از بین می‌برد.
2️⃣ ترتیب نادرست در ارث‌بری: قرار دادن Mixin بعد از کلاس پایه اصلی می‌تواند عملکرد آن را مختل کند.
3️⃣ تعریف Variableهای تداخل‌دار: ایجاد متغیر در Mixin که با متغیرهای کلاس اصلی هم‌نام باشند.

🌐 نمونه‌های واقعی در کتابخانه‌های معروف:
Django: کلاس LoginRequiredMixin برای احراز هویت ویوها.

Python Stdlib: کلاس socketserver.ThreadingMixIn برای افزودن قابلیت مالتی‌تردینگ.
  • 👏 8
Post #286 1.05K
میکسین (Mixin) در پایتون چیست و چرا به آن نیاز داریم؟

در OOP، برای افزودن قابلیت‌های مشترک (مثل تبدیل به JSON یا لاگ‌گیری) به کلاس‌های نامرتبط، ساخت کلاس پایه مشترک باعث پیچیدگی می‌شود.

میکسین کلاسی معمولی در پایتون است که رفتار تک‌منظوره و قابل استفاده مجدد را بدون ایجاد رابطه ارث‌بری سخت‌گیرانه (Is-a) ارائه می‌دهد.

💡 چرا به جای ارث‌بری از Mixin استفاده کنیم؟

1️⃣ رعایت اصل DRY: حذف کدهای تکراری.
2️⃣ ترکیب به جای ارث‌بری: ترکیب رفتارهای مستقل به جای درخت‌های عمیق و شکننده.
3️⃣ جلوگیری از مشکل Gorilla/Jungle: ارث‌بری فقط یک موز، نه کل جنگل.

ویژگی‌های یک Mixin استاندارد:
▫️نام‌گذاری مشخص: معمولاً پسوند Mixin دارند (مثل JsonSerializableMixin).
▫️بدون وضعیت (Stateless): فاقد متد init یا ویژگی‌های نمونه اختصاصی.
▫️تک‌منظوره: مسئولیت خاص واحد.
▫️مستقل: مستقیماً از آن‌ها شیء ساخته نمی‌شود.
در پست بعدی، نحوه پیاده‌سازی و نکات فنی MRO در میکسین‌ها را بررسی می‌کنیم.
  • ❤ 10
  • 👏 1
Older posts →

About this channel

How can I read @pythopiachannel without a Telegram account?
TGViewer shows the public web preview Telegram publishes for Pythopia: recent posts, photos, videos and the subscriber count, with no app, login or account.
How many subscribers does Pythopia have?
Pythopia (@pythopiachannel) has 566 subscribers on Telegram, refreshed roughly every 30 minutes.
Does Pythopia know I viewed it here?
No. Public channel previews carry no viewer identity, and TGViewer has no accounts or tracking of what you look up.
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →