Skip to content

Latest commit

 

History

History
80 lines (51 loc) · 3.73 KB

Feature Flags (Feature Toggle) - Uber.md

File metadata and controls

80 lines (51 loc) · 3.73 KB
github
true

مارال: سلام بچه‌ها! 😊 امروز می‌خوام یه موضوع جدید رو باهاتون در میون بذارم.

حسین: سلام مارال! 🤔 چی شده؟

مارال: می‌دونید که ما همیشه در حال توسعه و بهبود اپلیکیشن اوبر هستیم. حالا یه ایده جدید به ذهنمون رسیده که می‌خوایم پیاده‌سازیش کنیم. ولی مشکل اینجاست که نمی‌دونیم این ایده چقدر موفق میشه و مشتری‌ها ازش استقبال می‌کنن یا نه. 😕

پیمان: خب چیکار می‌خواید بکنید؟ 🤨

مارال: به نظر من بهترین راه اینه که از Feature Flags استفاده کنیم. 🚀

حسین: Feature Flags؟ 🤔 یعنی چی؟

مارال: Feature Flags یا Feature Toggle به ما امکان می‌ده که ویژگی‌های جدید رو بدون نیاز به ریلیز مجدد، فعال یا غیرفعال کنیم. 🌟

ماهان: 😮 واقعاً عجیبه! یعنی می‌تونیم ویژگی‌های جدید رو به صورت آزمایشی در اختیار بخشی از کاربرا قرار بدیم؟

مارال: دقیقاً! اینطوری می‌تونیم ببینیم این ویژگی‌ها چقدر موفق هستن و بر اساس بازخورد کاربرا تصمیم بگیریم که فعالش نگه داریم یا نه. 👍

کیان: واااای، پس می‌تونیم به راحتی ویژگی‌های جدید رو امتحان کنیم؟ 😍

مارال: بله کیان جان! و اگه دیدیم که ویژگی خاصی مورد استقبال قرار نگرفت، می‌تونیم به سرعت اون رو غیرفعال کنیم. ⚡

پیمان: 🤔 ولی چطوری می‌خوایم این کار رو انجام بدیم؟ یعنی چه تغییراتی باید توی کد ایجاد کنیم؟

حسین: خب، برای پیاده‌سازی Feature Flags، ما باید یه جایی توی کد خودمون شرط بذاریم که چک کنه آیا اون ویژگی فعال هست یا نه. 🔍

مارال: دقیقاً! و این شرط می‌تونه بر اساس یه Environment variable یا یه فایل تنظیمات باشه. 📄

ماهان: 🤔 یعنی مثلاً توی یه فایل جداگانه مقدار این متغیر رو تغییر بدیم؟

حسین: بله! مثلاً می‌تونیم یه فایل JSON یا YAML داشته باشیم که توش تنظیمات مربوط به Feature Flags رو نگه داریم. 🗂️

پیمان: 😮 پس هر بار که بخوایم یه ویژگی رو فعال یا غیرفعال کنیم، فقط کافیه توی این فایل تنظیمات تغییر ایجاد کنیم؟

مارال: بله پیمان! اینطوری دیگه نیازی نیست که کل برنامه رو ریلیز کنیم. 👍

کیان: واااای، پس همه چی خیلی راحت میشه! 😃

حسین: دقیقاً! و یه نکته مهم اینه که باید مراقب باشیم که کد مربوط به ویژگی‌های غیرفعال رو از برنامه پاک نکنیم. ⚠️

ماهان: 🤔 چرا؟ مگه چه اتفاقی می‌افته؟

حسین: خب، اگه کد اون ویژگی‌ها رو پاک کنیم و بعداً بخوایم دوباره فعالش کنیم، باید دوباره برنامه رو توسعه بدیم و ریلیز کنیم. 😕

مارال: دقیقاً! به همین دلیل همیشه باید کد ویژگی‌های غیرفعال رو توی برنامه نگه داریم، ولی اجراش نکنیم. 🛠️