چی میدونی قبل اینکه reactjs کار کنی؟

شاید عنوان کمی تند و تیزه . اما لازمه با هم مروری کنیم به اینکه اگر بخوایم ری اکت کار کنیم باید چی بدونیم؟مثلا : خیلی ها میرن سراغ reactNative بدون اینکه life cycle ری اکت رو خونده باشن . چون داخل داکیومنت نیتیو ، دوباره لایف سایکل رو ننوشته . باید برید ری اکت جی اس رو بخونید .مورد بعدی هم اینکه دوستانی میان با علم html و css ، بعد توقع دارن بتونن reactjs کار کنن به اسم ui کار.حالا میخوام ببینیم که UI/UX Designer کیه ؟ UI Developer کیه ؟ و ما به عنوان UI Developer باید چی کار کنیم؟به چه کسی میگین UI / UX Designer ؟ آدمای حرفه ای توی زمینه طرای گرافیک که با ابزار های مثل sketch , Adobe XD , ... یک موکاپ و اسکچ طراحی میکنن تا هم رابط کاربر و هم تجربه کاربری رو به نمایش بکشن ، UI / UX Designer هستن . این افراد میتونن به عنوان Developer هم باشن . هیچ تناقضی وجود نداره . اما جای شک و ابهام توی حرفه ای بودن این افراد هست ( مگر استثنا ) . چون مورد طراحی با develope دوتا آدم با دو روحیه متفاوت میطلبه .به کی میگن UI Developer ؟کسی که طراحی UI / UX Designer رو پیاده سازی میکنه . اما این مورد خیلی پیچیدگی داره دوست من . شما فقط نباید از نظر ظاهری کارت ۲۰ باشه . باید از نظر فنی و کدنویسی هم کارت درست باشه .باید بدونی که کجا از دیزاین پترن ها استفاده کنی کجا از پکیج ها و کجا خودت تولید یک پکیج رو انجام بدی . حالا با همه این حرف ها بریم سر اصل مطلب . یک ری اکت کار باید چیا بدونه؟جوابش سادست : باید اصول یک برنامه نویسی و تولید نرم افزار با بهینه ترین حالت رو بدونه . برای مثال : زمانی که شما با WebPack آشنایی نداشته باشید ، پس نمیدونید چجوری یک اپلیکیشن ری اکتی داره کار میکنه و حتی به چه شکل میشه SSR کرد . اگر شما دانش node.js و خاصیت های پلتفورمی که روی اون دارید کد میزنید رو ندونید ، پس نمیدونید که چرا برای SSR از express.js استفاده میشه . زمانی که شما نحوه طراحی Routing رو بلد نباشید ، نمیدونید که react-router-dom داره چی کار میکنه . زمانی که لایف سایکل ری اکت رو نخونید و از نظر فنی باهاش آشنایی نداشته باشید ، نمیدونید که app.js چه وظیفه ای داره . زمانی که شما با اصطلاح Memory leak آشنایی نداشته باشید ، نمیدونید که چه زمانی که از componentDidMount و یا componentWillUpdate و ... استفاده کنید . وقتی که آگاهی از ساختار node.js و مدل کد نویسی ندارید ، پس باید اول سطح مطالعه روی این قسمت رو بالا ببرید تا بدونید دارید با چی کد میزنید و چی کار میکنید . خیلی از وقت ها برای اینکه حجم باندل بالا نره مجبورید که خودتون دست به تولید یک پکیج بزنید و از پکیج های بزرگ استفاده نکنید . هرچیزی کار رو راحت میکنه ، صرفا مناسب نیست . حساسیت سایت های SPA و State Base ، روی همین نکته هاست که بدونید دارید چه بلایی سر کلاینت میارید و چه قدر از رم و CPU کلاینت بی چاره استفاده میکنید . در آخر : مطالعه کنید . نوشته های دوستان عزیزم رو بخونید تا بیشتر با حرفام آشنا بشید https://virgool.io/JavaScript8/how-javascript-works-memory-management-how-to-handle-4-common-memory-leaks-ldxonke9zy3k https://virgool.io/iran-react-community/%D8%AF%D8%B1%D9%88%D8%BA%DB%8C-%D8%A8%D9%87-%D9%86%D8%A7%D9%85-%D8%B4%D8%A8%D8%A7%D9%87%D8%AA-react-%D9%88-react-native-ecv0abjf8ftk+ https://virgool.io/iran-react-community/%D8%A8%D9%87%DB%8C%D9%86%D9%87-%D8%B3%D8%A7%D8%B2%DB%8C-%D8%B1%DB%8C-%D8%A7%DA%A9%D8%AA-react-performance-%D9%88%DB%8C%DA%98%DA%AF%DB%8C-%D9%87%D8%A7%DB%8C-%D8%AC%D8%AF%DB%8C%D8%AF-%D8%B1%DB%8C-%D8%A7%DA%A9%D8%AA-166-f5lxvorg4sva https://virgool.io/iran-react-community/%D9%85%D9%82%D8%A7%DB%8C%D8%B3%D9%87-purecomponent-%D9%88-memo-%D8%AF%D8%B1-reactjs-pp5wyhwgjjus