دقیقا فانکشن کامپوننتها چجوری با کلاس کامپوننتها متفاوتند؟
برای مدت زیادی، تنها جوابی که درجا به ذهن میرسید این بود که کلاس کامپوننت ها امکانات بیشتری در اختیار ما میذارند ( مثل مدیریت state ). با اومدن Hooks ها این گذاره دیگه بکار نمیاد.
شاید شنیده باشید که یکیشون نسبت به اون یکی پرفورمنس بهتری داره. کدومشون؟ خیلی از اعداد و ارقامی که منتشر میشه ناقص هستند و خیلی نمیشه بهشون اتکایی کرد، منم بر اساس اونها نتیجه گیری نمیکنم. پرفرومنس در درجهی اول به اینکه کدتون دقیقا داره چیکار میکنه بستگی داره، تا اینکه کلاس یا فانکشنال بودن کامپوننت بخواد روش تاثیری بذاره. تا جایی که ما مشاهده کردیم، تفاوت پرفورمنس بسیار ناچیزه، البته استراتژیهای بهینه سازی کمی متفاوت از این جریان هستند.
در هر حالت پیشنهاد ما این نیست که بشینید کدتون رو بازنویسی کنید، اگرم اینکار رو میخواید انجام بدید باید دلایل بیشتری داشته باشید. hooks هنوز در ابتدای راه قرار داره ( مثل خود React در سال 2014 ) و خیلی از بهترین روشها هنوز پیدا نشدند و توی فیلمهای آموزشی دیده نمیشد.
خب این مارو به کجا میرسونه؟ آیا اصلا تفاوت اساسی بین فانکشنال کامپوننتها با کلاس کامپوننتها هست؟ البته که هست، توی الگوی ذهنی .
در این مقاله ما به بزرگترین تفاوت بین این دو نگاه میکنیم. از زمانی که در سال 2015 فانکشن کامپوننتها معرفی شدند این تفاوت وجود داشت.
ادامه مطلب رو میتونید روی ویرگول بخونید: https://virgool.io/@shxhryar/classcomponent-vs-functionalcomponent-react-nmlyr2tns0eh