وقتی شروع کردم به یاد گرفتن React، خیلی هیجانزده بودم. فکر میکردم همه چیز رو سریع یاد میگیرم و پروژههامو میزنم میره. ولی خب، مثل خیلی از آدما، تو مسیر کلی اشتباه کردم. اشتباهاتی که اگه زودتر میفهمیدمشون، هم وقتم کمتر تلف میشد، هم سریعتر پیشرفت میکردم.
اینا ۷ تا از اون اشتباهان که خودم با پوست و استخون حسشون کردم:
۱. استفادهی زیاد از useState برای همه چی
🟥 مشکل:
اوایل فکر میکردم هر نوع استیتی دارم باید با useState مدیریت کنم. حتی استیتهای پیچیده یا دیتای تودرتو رو.
✅ راهحل:
بعداً با useReducer آشنا شدم، مخصوصاً وقتی استیت یه کم پیچیدهتر بود. برای اشتراکگذاری استیت بین چند کامپوننت هم از Context استفاده کردم.
۲. بیتوجهی به ساختار پروژه
🟥 مشکل:
همه چی رو میریختم تو یه فولدر. فرقی نمیکرد کامپوننت باشه، استایل، هر چی.
✅ راهحل:
شروع کردم از ساختارهایی مثل feature-based و Atomic Design استفاده کنم. کمک کرد پروژههام مرتبتر و قابل نگهداریتر بشن.
۳. وابستگی زیاد به کلاسهای CSS
🟥 مشکل:
کلی کلاس دستی مینوشتم واسه استایل دادن. کدها سنگین و خوندنشون سخت میشد.
✅ راهحل:
با Tailwind CSS آشنا شدم و کامپوننتهامو تمیزتر و قابل استفادهی مجدد نوشتم.
۴. اشتباه گرفتن JSX با HTML
🟥 مشکل:
فکر میکردم JSX همون HTMLه. کلی ارور میخوردم، مخصوصاً تو سینتکس.
✅ راهحل:
وقتی فرقهاشونو یاد گرفتم (مثل camelCase، بسته بودن تگها و غیره)، خیلی از مشکلهام حل شد.
۵. استفاده اشتباه از useEffect
🟥 مشکل:
useEffect رو میزاشتم ولی نمیفهمیدم دقیقاً چیکار میکنه. گاهی باعث میشد API چند بار پشت سر هم صدا زده بشه.
✅ راهحل:
یاد گرفتم دپندنسیهاش چقدر مهمه. از React Query و SWR هم برای گرفتن دیتا استفاده کردم که خیلی بهترن.
۶. قاطی کردن منطق و UI
🟥 مشکل:
همه چی تو یه فایل بود. هم UI، هم منطق. خوندنش سخت میشد، تغییر دادنش سختتر.
✅ راهحل:
شروع کردم به نوشتن custom hook برای منطقها، که کامپوننتام سبکتر و تمیزتر شدن.
۷. تست نمینوشتم!
🟥 مشکل:
اصلاً تستنویسی بلد نبودم یا جدی نمیگرفتم. وقتی باگ میخوردم، نمیدونستم دقیقاً از کجاست.
✅ راهحل:
با Jest و React Testing Library آشنا شدم. اولش سخت بود ولی بعد دیدم چقدر بهم کمک میکنه.
نتیجهگیری خودمونی:
این اشتباهها بخشی از مسیر یادگیریم بودن. الان که به عقب نگاه میکنم، میبینم چقدر ازشون یاد گرفتم. اگه تو هم تازه شروع کردی، امیدوارم این تجربهها کمکت کنه راهت رو راحتتر بری.
اگه تو هم اشتباهی داشتی که ازش درس گرفتی، خوشحال میشم برام بنویسی یا به اشتراک بذاری.
✌️
مهدی، یه برنامهنویس فرانت که هنوزم هر روز داره یاد میگیره و عاشق به اشتراکگذاری تجربهست.