Skip to content

State (State-specific behavior) [Behavioral]

Description

The State Pattern allows an object to alter its behavior when its internal state changes. The object will appear to change its class.

Info

  • کاملا مشابه به استراتژی پترن هستش، با این تفاوت که در استراتژی پترن، حتما یه کلاس مشخص صدا زده میشه، اما تو استیت پترن چندین کلاس هستن که بسته به استیتی که درش هستیم پتانسیل کال شدن دارن
  • بعضی وقت ها چندین شرط پشت سر هم رو چک میکنیم و بر اساسشون تصمیم میگیریم چه اتفاقی بیافته، این کار دو مشکل داره، اول این که بیزینس سامانه داخل شرط های مختلف مخفی میشه و قابل فهم نیست، دوم این که تمامی کامبینیشن های مختلف از این شروط ممکنه به اشتباه چک نشه، این پترن کمک میکنه هیچ کدوم از این مشکلات رخ نده