نگاه عمیق تری به ری اکت

ری اکت یه کتابخونه جاوااسکریپته که برای ایجاد رابط های کاربری سریع و تعاملی برای اپلیکیشن های وب و موبایل ساخته شده. یه کتابخونه متن باز فرانت اند مبتنی بر کامپوننت که تنها برای ساخت لایه نمایش یا همون View اپلیکیشن به کار میره تو معماری mvc یا همون model view controller، لایه نمایش یا همون view مسئول اینه که ظاهر و کارکرد لایه نمایش چه جوری باشه.ری اکتآموزش سریع و کاربردی ری اکتری اکت توسط جوردن واک، مهندس نرم افزار در فیسبوک ساخته شده.این روزها ری اکت بوسیله برندهای برتری مثل Airbnb، Tesla، instagram و walmart و هزاران برند مطرح دیگه استفاده میشه با این مثال ها خواستم بگم که ری اکت واقعا یه فریم ورک تمام عیار برای توسعه اپلیکیشن فرانت اند و اپ های موبایله.خوب حالا چطوری، و چرا ری اکت انقدر کاربردیه؟به عنوان نمونه به این پیج اینستاگرام یه نگاهی بندازیم، اصلی ترین دلیل برتری ری اکت اینه که رابط کاربری (UI) به چندین جزء تحت عنوان کامپوننت تقسیم میشه. این به طور چشم گیری سادگی کار با کد و رفع خطا(debug) رو افزایش میده.ری اکت فریمورکه یا کتابخونه؟یه عده ای اصرار دارن که ری اکت فریمورک نیست، بلکه یه کتابخونست چون فقط لایه نمایش(view) رو کنترل میکنه. ولی واقعیت اینه که با استفاده از کتابخونه های مختلف نه تنها چیزی کمتر از فریمورک نداره بلکه تجربه خودم اینه که می تونه حتی در عین سبک بودن قدرتمندتر هم باشه.ری اکت یه کد توصیفی داره، که شرح میده چی می خوایم، به جای اینکه بگه چجوری انجامش بده. اون صرفا نتیجه رو توصیف میکنه ولی مثل یه آموزش قدم به قدم نیست که بگه دقیقا چجوری انجامش بده. این منجر میشه به یه کد توصیفی سبک که به سادگی قابل فهمه و در نهایت باگ کمتری داره. همچنین ری اکت یه ویژگی فوق العاده داره به نام ویرچوال دام (virtual dom) که باعث میشه برنامه نویسا بدون احتیاج به بروزرسانی کل لایه نمایش(DOM) و دستکاری هزینه بر کل DOM به ازای هر تغییر، براحتی اپلیکیشن های تحت وب و اپ هایی که لایه نمایششون سمت سرور رندر میشه(SSR) رو پیاده سازی کنن.حالا ببینیم ری اکت چی در اختیارمون میزاره و چرا محبوبیتش انقدر زیاد شده:ساخت راحت اپلیکیشن های داینامیک: چون ری اکت کد کمتری نیاز داره و فانکشنالیتی بیشتری رو در اختیارمون میزاره پیاده سازی اپ های داینامیک(پویا) راحت تره باهاش.کارایی رو افزایش میده: ویرچوال دام(virtual dom) با مقایسه وضعیت(state) قبلی کامپوننت ها فقط اون بخشی از سند داکیومنت واقعی (real dom) رو بروزرسانی میکنه که تغییر کرده نه کل دام رو، واسه همین اپ های تحت وب سریع با کارایی و پرفرمنس بالا میشه باهاش ساخت.کامپوننت ها با قابلیت استفاده مجدد و چندباره: کامپوننت ها در اصل اجزاء سازنده هر اپلیکیشن ری اکتی هستن، هر کامپوننت لایه نمایش و لاجیک خودش رو داره، و همه این کامپوننت ها می تونن بارها تو سراسر اپلیکیشن استفاده بشن و زمان توسعه اپ رو کاهش بدن.جریان داده یکطرفه: با جریان یکطرفه داده ها، برطرف کردن خطا ها و دیباگ کردن خیلی خیلی ساده تره و وقتی یه خطایی(باگی) رخ میده به دقت و مشخصا میشه جایی رو که اتفاق افتاده سریعا پیدا کرد و برطرفش کرد.اپلیکیشن های وب و موبایل: یه فریمورکی به اسم ری اکت نیتیو(react native) که از خود ری اکت مشتق شده ، یه راه عالی برای ساخت اپ های فوق العاده موبایله.یه ابزار دیباگ اختصاصی: فیسبوک یه افزونه کروم منتشر کرده که منحصرا برای دیباگ کردن اپ های ری اکتی استفاده میشه. که فرایند خطایابی و دیباگ کردن اپ های ری اکتی رو بسیار ساده تر و سریع تر میکنه.در کل وقتی تمام خوبی ها و بدی های ری اکت رو کنار هم میزاریم، خوبیاش پیشی میگیره.مقایسه ری اکت، ویو و انگولاریه نگاهی به این نمودار بندازین، خیلی واضح نشون میده که میزان دانلود ری اکت نسبت به دو تا رقیب اصلی جاوااسکریپتیش، یعنی ویو و انگولار، خیلی بیشتر و داره بیشتر و بیشتر هم میشه.واقعیت اینه که یه برنامه نویس مدرن و حرفه ای باید بی وقفه مهارت های جدید و تکنولوژی های جدیدی رو یاد بگیره تا بتونه خودش رو نسبت به تغییرات بروز نگه داره. تکنولوژی به سرعت تغییر میکنه و ما باید خودمون رو باهاش وفق بدیم. اگه با ری اکت آشنا نیستی، شدیدا پیشنهاد میکنم که این آموزش رو ببینید و کار با این "من میگم کتابخونه شما بخونید فریم ورک" قدرتمند رو شروع کنید: آموزش سریع و کاربردی ری اکتنظرتون در مورد این مطلب و تجربتون با کار با ری اکت رو با من و بقیه در میون بزارید، مرسی که با من همراه بودید و این مقاله رو مطالعه کردید، اگر براتون مفید بود لطفا لایک کنید و به اشتراک بزاریدش، ممنون.من رو تو شبکه های اجتماعی دنبال کنید:اینستاگرام: yasharhabibimediaتلگرام: yasharhabibimediaیوتیوب: yasharhabibimedia