TGViewer
CodeVerse | دنیای برنامه نویسان CodeVerse | دنیای برنامه نویسان @codeverse_dev · 1.06K subscribers
Post #635 266
🔥 یک تصمیم معماری که می‌تونه هزاران خط کد Frontend رو کمتر کنه

فرض کن یه اپلیکیشن داری که چندین Component مختلف از اطلاعات یک کاربر استفاده می‌کنن.

راه ساده اینه که اطلاعات رو از بالا به پایین با Props پاس بدی:
App
↓
Layout
↓
Page
↓
Section
↓
Card
↓
User

بعد چند ماه:
<Card
user={user}
permissions={permissions}
settings={settings}
preferences={preferences}
/>

و بعد:

"چرا Prop Drilling اینقدر زیاد شد؟" 😐

ولی راه‌حل حرفه‌ای این نیست که برای هر چیزی سریع بری سراغ Global State.

اول باید سؤال درست رو بپرسی:

این Data واقعاً چه Scopeای داره؟

مثلاً:

Local UI State
→ Component

Feature State
→ Feature Boundary

Shared Client State
→ Store

Server State
→ Cache / Query Layer

URL State
→ URL

این تفکیک خیلی مهمه.

چون اگر Server State رو مثل Client State مدیریت کنی، کم‌کم خودت مسئول چیزهایی مثل:
Cache
Refetch
Stale Data
Loading
Error
Synchronization
Invalidation

می‌شی.

در حالی که ابزارهایی مثل Query Layer دقیقاً برای مدیریت Lifecycle داده‌های سمت سرور ساخته شدن.

💡 هر State که Global نیست.

و یکی از نشانه‌های معماری خوب اینه که قبل از اضافه کردن یک State Manager جدید، دقیقاً بدونی:

این داده متعلق به کجاست؟ چه کسی مالکشه؟ و Lifecycleش دست کیه؟


@CodeVerse_dev
  • 👍 7
  • ❤ 1
More from @codeverse_dev
  1. Oct 7, 2026👨‍💻 برنامه‌نویسی با AI راحت‌تر شده؛ پس چرا بعضی Developerها خسته‌تر شده‌اند؟ طبق نظرسنجی…
  2. Oct 7, 2026🚨 وردپرس 7.1.3 منتشر شد؛ این یکی را عقب نینداز وردپرس دیروز نسخه 7.1.3 را منتشر کرد؛ یک آ…
  3. Oct 6, 2026شرکت Google وارد یک درگیری جدی با ناشران شده ⚖️ رگولاتور رقابت لهستان اعلام کرده Google را…
  4. Oct 6, 2026اگر Windows 11 داری، قبل از نصب بعضی آپدیت‌ها حواست باشد ⚠️ مایکروسافت تأیید کرده آپدیت پی…
  5. Oct 6, 2026اگر Chrome استفاده می‌کنی، این آپدیت را جدی بگیر ⚡ نسخه Stable مرورگر Chrome برای دسکتاپ ب…
  6. Oct 6, 2026🖥 سازنده محتوایی؟ ویندوزت بدون این ۵ نرم‌افزار نصفه‌ست! خب راستشو بخوای، من خودم تا چند و…
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 →