react js چیست


react js چیست و چرا باید از react js استفاده کنیم، موضوعی است که در این نوشته مورد بررسی قرار می دهیم.
ReactJs اساسا یک کتابخانه open-source جاوا اسکریپته که برای ایجاد رابط کاربری مخصوصا برای برنامه های تک صفحه ای مورد استفاده قرار میگیره. این کتابخونه برای مدیریت لایه های نمایشی برنامه های تحت وب و تلفن همراه استفاده میشه.همچنین ReactJs این امکان رو به شما میده تا کامپوننت هایی طراحی کنید که در بخش های مختلف پروژتون قابل استفاده باشه(reusable UI components)
ReactJs این امکان رو به توسعه دهنده ها میده تا وب اپلیکیشن های بزرگ و پیچیده که داده ها رو بدون بارگزاری مجدد مدیریت میکنند ، بسازند.هدف اصلی ReactJS سادگی،سرعت و مقیاس پذیری است که در رابط کاربری برنامه عمل میکنه.ReactJS با ترکیب با کتابخونه ها و فریمورک های دیگه جاوا اسکریپت مثل AngularJs در MVC استفاده میشه.
ویژگی ها و مزایا ReactJS
-
Jsx
در React به جای استفاده از جاوا اسکریپت معمولی از Jsx برای قالب سازی استفاده میشه.Jsx جاوا اسکریپت ساده است که از Syntax تگ های HTML برای برای رندرگرفتن زیر کامپوننت ها استفاده میکنه.
-
React Native
React Native یک فریمورک که به شما اجازه میده با استفاده از جاوااسکریپت و React اپلیکیشن هایی بسازید که روی پلتفرم های Android و Ios اجرا بشه. برخلاف تکنولوژی اپلیکیشن های هیبریدی شما یک mobile Web App نمیسازید.کدهای جاوااسکریپت کامپایل میشه به یک اپلیکیشن موبایل که غیرقابل تشخیصه از اپلیکیشن هاییه که برای Ios با استفاده از Objective-c یا برای Android با استفاده از Java نوشته شده. برای کسب اطلاعات بیشتر در مورد React Native میتونید مقاله React Native چیست رو بخونید.
-
Single-Way data flow
در React مجموعه از مقادیر غیرقابل تغییر تحت عنوان properties در کامپوننت ها به تگ های HTML پاس داه میشه.کامپوننت ها نمیتوانند به طور مستقیم هر گونه properties رو تغییر بدهند اما میتوانند یک تابع رو فراخوانی کنند و تغییرات رو انجام دهند.این فرآیند کامل به عنوان ” properties flow down; actions flow up “شناخته میشه.
-
Virtual Document Object Model
React در حافظه یک ساختار داده ای کش ایجاد میکند که تغییرات انجام شده رو محاسبه میکنه و بعد مرورگر رو بروزرسانی میکنه.این ویژگی خاص این امکان رو به برنامه نویس میده که اگر کل صفحه رندر شده با هر تغییر در React کامپوننتی که واقعا تغییر کرده فقط رندر میشه.
چرا باید از ReactJs استفاده کنیم
حالا اولین سوالی که ذهنمون رو درگیر میکنه اینکه چرا باید از ReactJS استفاده کنیم در حالی که تعداد بسیار زیادی کتابخونه و فریمورک برای ایجاد طراحی رابط کاربری وب اپلیکیشن ها مثل Angular وجود داره.اجازه بدید که نگاهی سریع به مزایای React نسبت به سایر کتابخانه ها و فریمورک ها بندازیم.با دنیای front-end که روزانه تغییر میکنه سخته که زمانی رو به یادیگیری یک فریمورک جدید اختصاص بدی مخصوصا زمانی که این فریمورک در نهایت میتونه به یک پایان تبدیل بشه.اگه شما به دنبال بهترین فریمورک در این زمینه هستید،پیشنهاد میکنم از Reactاستفاده کنید
- سادگی
با توجه به رویکرد مبتنی بر کامپوننت ،چرخه های حیات(lifeCycle) مناسب و استفاده از جاوا اسکریپت ReactJs رو میشه به راحتی یاد گرفت.Reactاز یک syntax جدید به اسم JSX استفاده میکنه که به شما اجازه میده HTML و JavaScript رو با هم دیگه ترکیب کنید.
- راحتی یادگیری
هر کسی که دانش پایه برنامه نویسی رو داشته باشه به راحتی میتونه React رو درک کنه.برای یادگیری React کافیه که فقط دانش پایه ای از HTML ،CSS و JavaScript داشته باشید.
- ساخت اپلیکیشن های native
با استفاده از React میتونید اپلیکیشن native بسازید(react native).React یکی از طرفداران قابلیت استفاده مجدد است،به این معنی که به شما این امکان رو میده از کدتون در پلتفرم های مختلف استفاده کنید،بنابراین همزمان میتونیم اپلیکیشن های َAndroid و Ios طراحی کنیم.
- تست پذیری
برنامه های ReactJs فوق العاده آسان برای تست هستند.React views را میتوان به عنوان توابع state تلقی کرد،بنابراین ما میتوانیم با استفاده از state ها تغییرات لازم رو ایجاد کنیم و به View ها منتقل کنیم و خروجی ، توابع و رویدادها رو به راحتی مشاهده کنیم.
امیدوارم که از خوندن این مقاله لذت برده باشین و براتون مفید واقع شده باشه.اگه دلایل دیگه ای برای استفاده از ReactJs دراید خیلی خوشحال میشم در قسمت دیدگاه ها بیانش کنید.
اگر قصد یادگیری react js به صورت تخصصی و حرفه ای دارید، پیشنهاد می کنم آموزش جامع و پروزه محور react js را مشاهده کنید
دیدگاهتان را بنویسید