مقدمه و توضیح ابتدایی برای React

React یا ReactJSیکی از سریع ترین و محبوب ترین کتابخانه های JavaScript است که البته متن باز و رایگانه.این کتاب خونه ماهی می 2013 برای عموم منتشر شدهاما این کتابخانه ابتدا توسط یک مهندس Facebookدرست شد به اسم "جردن واک" در سال 2011 تحت تاثیر XHP که یک کامپوننت HTMLبرای زبان PHP است ایجاد کرددر همین سال React روی قسمت newsfeed , facebook به کار گرفته شد و 2 سال بعد استفاده از ان به Instagram هم رسیدنکته مهم این است که این کتاب خانه صرفادر الگوی طراحی MVC وظیفه ی view را داردView یا interface در واقع مرتبط با نمایش اجزا هستند و طبیعتا React به جای پرداختن به الگوی MVC به وظایفش که مربوط به اجزا هست میپردازداز دیگر کاربرد های React میتوان به استفاده در طراحی و ایجاد سایت تک صفحه ای و ساخت اپلیکیشن موبایل اشاره کرداز دلایل محبوبیت React میتوان به خالق ان اشاره کردزمانی که یک شرکت یا موسسه عظیم با طرفداران فوق العاده زیاد وظیفه نگهداری و توسعه یک کتابخانه JavaScript را به عهده میگیرد نباید در نحوه کار کرد ان تردید داشتهمه ما از FaceBook و Instagram استفاده میکنیم و می دانیم که چقدر این دو از نگاه فنی کم اشکال و قابل اطمینان هستند و در سطح بالایی قرار دارندحالا دقت کنید که یکی از این دو شرکت این کتابخانه را خلق کرده و توسعه دادهاز React میتوان برای ایجاد یک رابط کاربری زیبا و عامپسند استفاده کرد بنابراین برنامه نویسان و طراحان وب خیلی زود به Reactعلاقه مند شدندReactتمام جنبه های ظاهری یا توسعه اپ موبایل رو به عهده می گیردبا استفاده از ان بسیاری از پیچیدگی های برنامه نویسی از روی دوش برنامه نویس برداشته می شوداز خصوصیات React میتوان به JSXاشاره کردبرای پروسه templating از JSX به جای Javascriptعادی استفاده میشودJSX نوعی Javascript هست که این امکان را میدهد که کد های HTML را درون ساختارش قرار دهیماین کد ها در موقع اجرا به کد های javascript رندر میشوندویژگی دیگر ری اکت , Reactnative هستری اکت نیتیو که یک 2015 توسط facebook به دست توسعه دهنده های Mobile Application رسید , این کتابخانه ها که برای ایجاد کراس پلتفرم موبایل است و بر پایه ری اکت طراحی شده , یک معماری ارایه میدهند که با استفاده از ان میتوان android Application , Ios Applicationتوسعه داد (با تشکر از حامد زیدآبادی برای پیشنهاد اصلاح این قسمت)Virtual Dom : React از یک ساختار درون حافظه ای برای Catch کردن اطلاعات بهره میبرداین ساختار ابتدا تغییرات انجام شده را محاسبه میکند و سپس مرورگر را Updateمیکند این ویژگی به طراح سایت و توسعه دهنده این امکان را میدهد که به گونه ای کد نویسی کند که انگار تمام صفحه با هر تغییری رندر میشود در حالی که کتابخانه Raect تنها کامپوننت هایی را رندر میکند که واقعا تغییر کردندSingle way Data Flow : در React یک سری مقدار تغییر ناپذیر به عوامل رندر کننده کامپوننت ها داده میشوداین مقدار ها دقیقا مثل ویژگی تگ های HTML هر رندر کننده ای استدر این حالت کامپوننت ها نمیتوانند به صورت مستقیم دستکاری کنند اما میتوانند از یک عمل کرد Call back استفاده کنند تا به کمک اون تغییرات رو انجام بدنحالچرا ما از React استفاده میکنیم؟چون ساده است و امکانات زیادی می دهد و رابط کاربری عالی محصوب میشودمنابع من برای این تحقیق : https://reactjs.org/ https://virgool.io/p/yrn7zvgjeey4/edit https://digidanesh.org/ در همین راستا 3 عدد ویدیو تهیه کردم و همین توضیحات به علاوه دو پروژه ساده با استفاده از React که نوشتم داخل اپارات گذاشتمممنون میشم ببینید و نظرتون رو با من درمیون بزارید https://www.aparat.com/v/r2Z91 https://www.aparat.com/v/yQdLE https://www.aparat.com/v/r2Z91