ReactJS

از ویکی‌پدیا، دانشنامهٔ آزاد
(تغییرمسیر از ری‌اکت)
پرش به ناوبری پرش به جستجو
ری‌اکت
React-icon.svg
نویسنده(های) اصلیجردن واک
توسعه‌دهنده(ها)فیس‌بوک، اینستاگرام و انجمن
انتشار ابتداییمارس ۲۰۱۳؛ ۶ سال پیش (۲۰۱۳-۰۳)
نسخهٔ پایدار
۱۶٫۲٫۰ / ۲۸ نوامبر، ۲۰۱۷؛ ۲۰ ماه پیش (۲۰۱۷-۱۱-28)[۱]
مخزن ویرایش در ویکی‌داده
نوشته‌شده توسطجاوااسکریپت
سکوچندسکویی
حجم109 KiB production
710 KiB development
گونهکتابخانه جاوااسکریپت
پروانهپروانه ام‌آی‌تی
وبگاهreactjs.org

ری‌اکت (که به صورت React.js یا ReactJS نیز خوانده می‌شود)، یک کتابخانه متن‌باز جاوااسکریپت برای ساخت رابط‌های کاربری و اجزای(Component) صفحات وب است.

این کتابخانه توسط فیس‌بوک و جامعه‌ای از توسعه‌دهندگان و شرکت‌ها به صورت انفرادی توسعه و نگه‌داری می‌شوند.[۲] براساس آنالیزهای جاوااسکریپت سرویس Libescore، ری‌اکت در حال حاضر در سایت‌های نت‌فلیکس، Imgur، بلیچر رپورت، فیدلی، ایر بی‌ان‌بی و … مورد استفاده قرار می‌گیرد.

به دلیل بهینه بودن ری‌اکت برای دریافت اطلاعاتی که با سرعت تغیر میکنند، میتوان از آن برای توسعه برنامه تک‌صفحه‌ای(SPA) یا برنامه‌های موبایل استفاده کرد. هرچند دریافت اطلاعات ابتدایی ترین بخش در یک صفحه‌ وب است و برنامه‌های پیچیده ری‌اکت معمولا به کتابخانه‌های اضافه‌ای برای مدیریت وضعیت(state management)، مسیریابی(URL mapping)، و اتصال به رابط برنامه‌نویسی کاربردی(API) نیاز دارند.

ری‌اکت و ری‌اکت نیتیو(React Native) از جمله پروژه‌های متن‌باز شرکت فیس‌بوک هستند که در صدر محبوب‌ترین پروژه‌های وبگاه گیت‌هاب قرار دارند.[۳]

تاریخچه[ویرایش]

ری‌اکت توسط جردن واک، یک مهندس نرم‌افزار در فیس‌بوک، ساخته شده‌است. او از XHP که یک چارچوب فریم‌ورک HTML برای PHP است، تأثیر گرفته‌است.[۴] اولین نسخه‌ای که او در سال ۲۰۱۱ توسعه داد در بخش اخبار فیس‌بوک و بعدها در سال ۲۰۱۲ در سرویس اینستاگرام مورد استفاده قرار گرفت. در سال ۲۰۱۳ در جریان کنفرانس آمریکا JSConf این کتابخانه متن‌باز اعلام شد.

ReactNative، که امکان توسعه برنامه‌های مبتنی بر Android, IOS و UWP را با React فراهم میکند، در فوریه ۲۰۱۵ در React.js Conf فیسبوک معرفی شد و در مارس ۲۰۱۵ به صورت رایگان عرضه شد.

در ۱۸ آوریل ۲۰۱۷ فیسبوک اعلام کرد React Fiber، یک الگوریتم اصلی جدید React library برای ایجاد رابط کاربری است.[۵] React Fiber پایه و اساس هرگونه پیشرفتهای آینده و ویژگیهای چارچوب React خواهد بود.[۶]

ویژگی‌های قابل توجه[ویرایش]

جریان داده‌ای یک سویه[ویرایش]

DOM مجازی[ویرایش]

وقتی صفحه وبی بارگذاری میشود مرورگر یک مدل شی گرا از المان های موجود در صفحه می سازد.این مدل Dom و یا Document Object Model نام دارد. این نمودار یک نمودار درختی از اشیا موجود در صفحه است. برنامه هایی مانند جاوااسکریپت با استفاده از این مدل یک صفحه Html را به صورت پویا ایجاد می کنند.

در تکنولوژیReact.js  از مفهومی به نام Dom مجازی (Virtual DOM) استفاده می شود و به این صورت کار میکند که برای هر شی  Dom که ویژگی جدیدی قرار است برای آن ساخته شود نیازی نیست که آن شی دوباره ساخته شود بلکه تنها نیاز است که آن ویژگی مورد نظر را تغییر داد و یا افزود.

جی‌اس‌ایکس (JSX)[ویرایش]

جی‌اس‌ایکس یک نسخه گسترش یافته از جاوااسکریپت است که این امکان را می‌دهد تا بتوان در کنار کدهای جاوااسکریپت از کدهای اچ‌تی‌ام‌ال نیز بهره برد که به موجب آن کامپوننت‌های ری‌اکت معمولاً در قالب جی‌اس‌ایکس نوشته می‌شوند. همچنین ممکن است توسعه دهندگان تنها از جاوااسکریپت خالص استفاده کنند. جی‌اس‌ایکس مشابه XHP در PHP است.

معماری فراتر از HTML[ویرایش]

ری‌اکت نیتیو(React Native)[ویرایش]

ریکت نیتیو یک کتابخانه قدرتمند جاوااسکریپت است که می‌توان با استفاده از آن برای سیستم عامل‌های موبایلی ios , android اپلیکیشن ساخت باید توجه داشت که applicationهای ساخته شذه کاملاً native خواهند بود و خبری از applicationهای hybrid نیست

این freamwork بسیار قدرتمند می‌باشد به‌طوری‌که بسیاری از شرکت‌های بزرگ applicationهای خود را تحت همین فریمورک می‌سازند

برخی از اپلیکیشن‌هایی که با ریکت نیتیو ساخته شده‌اند:Instagram - Facebook - Facebook Ads Manager - f8 - Skype , ...

آینده توسعه[ویرایش]

وضعیت توسعه پروژه را می‌توان در انجمن تیم اصلی توسعه دهندگان آن دنبال کرد.[۷] هرچند تغییرات جزئی، مشکلات و درخواست ادغام آن در مخزن آینده ری‌اکت(Feture of React) دنبال می‌شوند.

پروژه‌های زیرمجموعه[ویرایش]

وضعیت پروژه‌های زیرمجموعه ری‌اکت در صفحه ویکی آن قابل مشاهده است.[۸]

توافق‌نامه مجوز مؤلف فیس‌بوک[ویرایش]

فیس‌بوک مشارکت کنندگان ری‌اکت را مجاب به پذیرش توافق‌نامه مجوز مؤلف می‌داند.[ویرایش]

نصب ReactJS[ویرایش]

شما می‌توانید به ۳ روش ری اکت جی اس را نصب کنید اما بهترین راه استفاده از بسته create-react-app است که به راحتی توسط npm قابل نصب می‌باشد.

برای نصب و استفاده مراحل زیر را توسط npm انجام دهید:

npm install -g create-react-app
create-react-app my-app

cd my-app
npm start

این بسته یک محیط بسیار مناسب برای تولید وب اپلیکیشن توسط ری اکت جی اس را برای شما فراهم می‌کند.

[منبع]

پروانه نرم‌افزاری[ویرایش]

پانویس[ویرایش]

  1. "Releases - facebook/react". GitHub.
  2. «Facebook's React JavaScript User Interfaces Library Receives Mixed Reviews». InfoQ. دریافت‌شده در ۲۰۱۶-۱۲-۰۳.
  3. «Open source in 2015: A year of growth». Facebook Code. دریافت‌شده در ۲۰۱۶-۱۲-۰۳.
  4. «Bill Fisher's answer to How was the idea to develop React conceived and how many people worked on developing it and implementing it at Facebook? - Quora». www.quora.com. دریافت‌شده در ۲۰۱۶-۱۲-۰۳.
  5. «Facebook announces React Fiber, a rewrite of its React framework – TechCrunch». techcrunch.com (به انگلیسی). دریافت‌شده در ۲۰۱۸-۰۵-۰۴.
  6. "acdlite/react-fiber-architecture". GitHub. Retrieved 2018-05-04.
  7. «Meeting Notes». React Discuss. دریافت‌شده در ۲۰۱۶-۱۲-۰۴.
  8. «facebook/react». GitHub. دریافت‌شده در ۲۰۱۶-۱۲-۰۴.