React Native ساخت اپلیکیشن موبایل بدون دردسر!

ساخت یک اپلیکیشن چند پلتفرمی موبایل با React Native بخش دوم به زبان ساده فرادرس مجله‌

به‌عنوان‌مثال یک برنامه‌نویس فقط در زمینه وب فعالیت دارد و دیگری فقط برای اندروید برنامه می‌نویسد. همین محدودیت باعث می‌شود برای پروژه‌هایی که نیاز به ساخت برنامه برای چند پلتفرم دارند مجبور باشید چند تیم مختلف استخدام کنید. React Native اما این امکان را به شما می‌دهد تا هم خروجی اندروید و هم iOS داشته باشید. در واقع React کدهای نوشته شده را به زبان بومی یا Native تبدیل می‌کند و به‌این‌ترتیب شما برای پلتفرم‌های مختلفی برنامه خواهید داشت. وجود برنامه نویسانی که با JavaScript کار میکنند ، و همچنین برنامه نویسانی که با react کار کرده بودند باعث شده است که جامعه ی بسیاری از برنامه نویسان برای کدنویسی اپ های موبایل با react native بوجود بیاید .

در این مطلب با هم بررسی کردیم که React Native چیست و استفاده از آن چه مزایایی دارد. React Native به ما اجازه می‌دهد با کمک زبان برنامه نویسی جاوا اسکریپت رابط کاربری اپلیکیشن‌های تلفن همراه را طراحی کنیم، بدون اینکه نیاز باشد به زبان‌های Native برنامه نویسی موبایل مانند جاوا یا سوییفت مسلط باشیم. در واقع قرار نیست این فریمورک جای زبان‌های بومی یا Native را بگیرد، بلکه یک راه حل خوب برای برنامه نویسان موبایل و علاقه مندان به جاوا اسکرپیت است تا به کمک این زبان دوست داشتنی برای موبایل هم برنامه بسازند. در آخر از شما می‌خواهیم اگر تجربه‌ی کار با React Native را داشتید، تجربیات خود را با ما و کاربران سون لرن به اشتراک بگذارید. انگولار همانند ری اکت نیتیو یک فریم ورک جاوا اسکریپتی متن باز است که در طراحی رابط کاربری استفاده می‌شود. این فریم ورک در سال 2010 توسط برنامه نویسان گوگل ایجاد شد که در چند پروژه مهم نیز از آن استفاده کردند.

در این سری آموزش‌ها میخوایم درباره ساخت اپلیکیشن های native برای ios و اندروید یاد بگیریم. اما این کار رو توسط فریمورک محبوب React Native Javascript انجام میدیم. البته دوره آنلاین آموزش React Native در راکت وجود داره که میتونید از این دوره استفاده کنید . یکی از دلایل انتخاب دارت توسط توسعه دهندگان این است که مجموعه‌ی کاملی از ابزارهای از پیش طراحی شده‌ی رابط کاربری را در اختیار دارد. به وسیله‌ی این ابزارها می‌توان در زمان کوتاهی یک برنامه‌ی ساده را پیاده سازی کرد. در حالی که در React Native این مجموعه وجود ندارد و توسعه ‌دهندگان باید از کتابخانه‌های آماده استفاده کرده و آن‌ها را مطابق نیاز خود، شخصی سازی کنند.

به عنوان مثال اگر اشتباهی در نوع تعریف و یا مقدار متغیرها در کدهای جاوا اسکریپت شما ایجاد شود و متوجه آن نشوید، کامپایلری وجود ندارد که که جلوی این کار را بگیرد و در زمان اجرا به آن پی خواهید برد. این شبکه اجتماعی رکورد 1 میلیارد کاربر را در جهان زده است و محبوب‌ترین سرویس در حوزه اشتراک تصویر و ویدئو می‌باشد. تغییر پلتفرم و انتقال کل برنامه به React Native چالش بزرگی برای توسعه دهندگان اینستاگرام بود. بعد از این تغییر، نگهداری هر دو نسخه‌ی اندروید و iOS این اپلیکیشن بسیار آسان‌تر شد. اینک می‌توانید پروژه و پیکربندی آن را هر زمان با اجرای دستور awsmobile console از ریشه دایرکتوری ری‌اکت نیتیو ببینید. در این راهنما به بررسی شیوه بهره‌گیری از AWS Mobile CLI برای ثبت نام سریع در این سرویس‌ها و افزودن این کارکردهای جدید به اپلیکیشن ری‌اکت نیتیو با استفاده از SDK جاوا اسکریپت AWS Amplify می‌پردازیم.

کمتر برنامه نویس اندرویدی پیدا می‌شود که برای گوشی‌های آیفون هم بتواند اپلیکیشن بسازد. در این حالت برنامه نویس برای برنامه نویسی در یک سیستم عامل خاص، باید زبان Native آن سیستم عامل را یاد بگیرد. اما React Native به شما اجازه می‌دهد با زبان جاوا اسکریپت برنامه موبایل بنویسید، React این کدها را تبدیل به زبان Native کرده و خروجی اندروید و iOS به شما می‌دهد. به عبارت دیگر React Native شرایطی را مهیا کرده است که برنامه نویسان وب بتوانند اپلیکیشن‌هایی بسازند که دقیقا شبیه به برنامه‌های نوشته شده به زبان Native رفتار کنند. از آن‌جایی که برنامه نویسان زیادی زبان برنامه نویسی جاوا اسکریپت را دوست دارند و از آن استفاده می‌کنند، تجربه‌ی کار با React Native می‌تواند لذت بخش باشد.

7- کارایی بالا React Native برای کاهش پردازش‌های سنگین از چندین تکنیک هوشمند استفاده می‌کند تا بدون انجام کارهای زیاد، رابط کاربری را به روز کند. React Native قابلیت همزمانی یا real time دارد؛ همزمانی چیزی شبیه به گفتگوی دو نفر است که یکی می‌پرسد و دیگری جواب می‌دهد، یعنی گاهی کاربر درخواست می‌فرستد و گاهی هم سرور این کار را انجام می‌دهد. 8- تست پذیری یکی از موارد بسیار مهم برای توسعه دهندگان، تست نرم افزار است که باعث پیدا کردن اشکالات در تولید نرم افزار می‌شود. از دیگر مزایای تست نرم افزار می‌توان به تضمین رضایت، اعتماد مشتری به برنامه و اطمینان از کیفیت محصول اشاره کرد. کیست که دوست نداشته باشد تنها با یک زبان برنامه‌نویسی تمام آنچه که از دنیای توسعه وب و موبایل نیاز دارد را انجام ندهد؟ خب هدف این دوره آموزشی دقیقا همین است. در طول ده سال اخیر، جاوااسکریپت پیشرفت‌های بسیار زیادی در حوزه برنامه‌نویسی سمت وب و موبایل داشته است.

برای اولین بار گوگل در ماه مه سال 2017 فلاتر را معرفی کرد، اما نسخه‌ی پایدار آن در دسامبر 2018 منتشر شد. فلاتر یک کیت توسعه‌ی نرم ‌افزار متن باز مخصوص رابط کاربری است که از آن برای توسعه‌ی اپلیکیشن‌های اندروید، iOS، لینوکس، مک، ویندوز و وب استفاده می‌شود. ما در راکت و دوره آموزش React Native تمام سعی خود را کرده‌ایم تا شما بتوانید به شکل پروژه محور، درست و جامع کار با React Native را یاد بگیرید و از آن برای ایجاد اپلیکیشن‌های موبایلی خود استفاده کنید. همین موضوع باعث افزایش محبوبت React Native شده و امروزه تعداد زیادی از برنامه‌نویسان جاوا اسکریپت از React Native برای ایجاد کردن اپلیکیشن‌های خود استفاده می‌کنند. در کنار آن کاربرها می‌توانند فایل‌های چندرسانه‌ای، لینک‌ها و پیام‌های متنی نیز به یکدیگر ارسال کنند.

ری‌اکت برای ساخت رابط کاربری (UI) در اپلیکیشن‌های تک صفحه‌ای کاربرد دارد. نزدیکی آن به برنامه‌نویسی وب تا جایی است که حتی برای یادگیری آن نیز معمولاً توصیه می‌کنند با HTML و CSS آشنا شوید. نقطه کلیدی در رابطه با React Native اینه که هدف اصلیش آوردن قدرت مدل برنامه نویسی React به توسعه ی اپلیکیشن های موبایلی هست. هدف اون رسیدن به یک فریمورک cross platform و ابزار یک بار بنویس و هر جا اجرا کن, نیست. بلکه اینه که یک بار یاد بگیرید و هرجا بنویسید, که همین یک تمایز بزرگ محسوب میشه. این سری آموزش پلتفرم IOS رو پوشش میده ولی اگر شما مفاهیم اصلی رو یاد بگیرید میتونید از این‌ اطلاعات برای ساخت راحت و سریع اپلیکیشن اندروید اون استفاده کنید.

در صورتی که شما با مباحث جاوا اسکریپت و react به شکل کامل آشنا باشید برای یادگیری react native احتمالا به چند ماه زمان نیاز دارید. React Native فریمورکی است که بر پایه کتابخانه React و جاوا اسکریپت ایجاد شده و به شما کمک می‌کند تا با داشتن دانش React و جاوا اسکریپت برای پلتفرم‌های موبایلی اپلیکیشن ایجاد کنید. این شبکه که کاربران بیشتر برای اشتراک‌گذاری فیلم و تصویر از آن استفاده می‌کنند از ری‌اکت نیتیو در ساختار خود بهره می‌گیرد. توسعه دهندگان اینستاگرام کل برنامه و پلتفرم را تغییر دادند و نتیجه‌ای که به دست آوردند فوق‌العاده بود! با این تغییر بنیادی نگهداری از نسخه‌های Android و iOS ساده‌تر شد.

اگر هنگام نصب کردن create-react-native-app با مشکلی مواجه شدید، در این صوت ممکن است لازم باشد مجوزهای دسترسی npm را تغییر دهید. زمانی که نصب شد می‌توانیم اقدام به ایجاد اپلیکیشن خودمان بکنیم. پشتیبانی از جاوا اسکریپت و React Native در فضای اینترنت بیشتر است. از زمان پیدایش جاوا اسکریپت تا کنون، میلیون‌ها خط کد در سطح وب و به صورت رایگان منتشر شده است و می‌توانید به سادگی از آن‌ها در پروژه‌های مختلف استفاده کنید. اگر می‌خواهید فلاتر را یاد بگیرید، بد نیست بدانید که مسیر یادگیری آن، آسان‌تر و سریع‌تر از React Native است.

این کد ماژول های react و react native رو اضافه می کنه و اونها رو به متغیرهای React و ReactNative الحاق می کنه. React Native از تکنولوژی بارگزاری ماژول در Node.js توسط تابع require استفاده می کنه, که تقریباً معادل وارد کردن کتابخانه‌ها در Swift هست. در اینجا یک component به نام Hello ساختیم که از React.Component ارث بری می‌کند. ارث بری به این معنی ست که کلاس Hello، می‌تواند ویژگی‌های کلاس پدر یعنی React.Component را داشته باشد. درون این Component می‌توان توابع دلخواهی قرار داد که در اینجا تابع ()render را داریم.

اولین اولویت در آموزش انگولار ، یادگیری زبان تایپ اسکریپت (Type Script) است. این زبان در حقیقت همان نسخه توسعه یافته زبان جاوا اسکریپت محسوب می‌شود و قابلیت شیءگرایی را با دقت بالایی پشتیبانی می‌کند. در Angular مفاهیمی چون MVC (سرویس ها، مدل‌ها و نمایش ویو) به مراتب پیچیده‌تر از ری اکت است. مجموعه این عوامل دست به دست هم می‌دهند تا برای یادگیری این فریم ورک، به زمان بیشتری نیاز داشته باشید. برنامه‌های React Native نیز مانند React با زبان جاوا اسکریپت و JSX نوشته می‌شوند.

در این مقاله، به بررسی گام‌به‌گام ساخت یک اپلیکیشن موبایل با استفاده از React Native خواهیم پرداخت. انگولار بیشتر برای طراحی رابط کاربری استفاده می‌شود و ساختار یکپارچه و مشخصی برای توسعه وب دارد، اما این مسئله ممکن است باعث منعطف نبودن این فریم ورک نیز باشد، که برای برنامه نویسان خیلی خوشایند نیست. برخلاف انگولار، فریم ورک ری اکت آزادی عمل بیشتری به شما می‌دهد، به عبارتی دیگر React Native در معماری MVC تنها قسمت View را آماده کرده و بقیه کار را به عهده شما می‌گذارد تا از کتابخانه‌های مورد نظرتان استفاده کنید. ری اکت نیتیو یک فریمورک است، در حالی که React یک کتابخانه‌ی جاوا اسکریپت برای وب است. زمانی که می‌خواهید یک برنامه‌ی جدید با React شروع کنید، باید ماژول‌های موردنیاز برای توسعه‌ی برنامه را به صورت جدا و یکی پس از دیگری نصب کنید تا بتوانید از آن‌ها استفاده کنید.

در این مقاله جامع از آموزش react native، مفاهیم اولیه و جنبه‌های اساسی این فریمورک را بررسی می‌کنیم و مسیری که برای یادگیری ری اکت نیتیو باید طی کنید را به شما نشان می‌دهیم. React Native چیست؟ React Native یک فریمورک UI متن باز برای ساخت اپلیکیشن موبایل است که توسط فیس بوک معرفی و عرضه شده است. به کمک ری اکت نیتیو و زبان جاوا اسکریپت می‌توانیم برای اندروید، آی اواس، وب و حتی UWP (پلتفرمی برای ساخت برنامه‌های تحت ویندوز، ویندوز موبایل، Xbox و سایر محصولات مایکروسافت) اپلیکیشن بسازیم. در این مقاله بررسی می‌کنیم که React Native چیست و چه مزایایی دارد. این فریمورک بر اساس یک کتابخانه به نام React میباشد که توسط فیسبوک در جهت کارهای رابط کاربری ساخته شده بود و این بار بجای هدف قرار دادن مرورگرها ، موبایل های هوشمند مد نظر است .

برای مثال کدهای مربوط به انیمیشن‌های CSS در React Native قابل اجرا نیستند و به جای تگ div، از کامپوننت View استفاده می‌شود. همچنین سازوکار کدنویسی مفهوم جابجایی میان دو صفحه از برنامه، در این دو به طور کلی متفاوت است. علاوه بر آن، فیس بوک در سرویس آمارگیر خود با نام Facebook Analytics نیز از این فریمورک استفاده کرد. ابتدا باید شیوه استفاده از کامپوننت مرتبه بالای withAuthenticator از aws-amplify-react-native را ببینیم. در App.js زیر ایمپورت‌های ری‌اکت نیتیو اقدم به ایمپورت withAuthenticator می‌کنیم. اضافه کردیم این است که بدین ترتیب به طور تصادفی رشته اتصال خود را در سیستم کنترل نسخه وارد نمی‌کنیم.

اگر شما تابحال اپلیکیشنی با objactive-C یا Swift نوشته باشید, شما ممکنه خیلی درمورد استفاده از جاوا اسکریپت برای این کار هیجان‌زده نشوید. بهرحال بعنوان یک توسعه‌دهنده Swift نکته ی دومی که در بالا مطرح کردیم میتونه نظرتون رو جلب کنه. درواقع React برنامه نویسی کاربردی رو بطور مستقیم به لایه ی UI میاره. ممنون که با ما همراه هستید.بله اسکایپ هم با react native نوشته شده، اما اوایل سال میلادی بود که نسخه دسکتاپ ویندوز 10 رو با الکترون جایگزین کردند. برای آشنایی بیشتر میتونید مقاله فریمورک الکترون رو مطالعه کنید.درمورد ویدیوکال، چندین گزینه دارید که بسته به کاربردتون باید انتخاب کنید. شاید در طول پروژه نیاز داشته باشید که بعضی از بخش‌های برنامه را با زبان‌های Native جاوا و سوئیفت بنویسید.

در طی دوره آموزش react native به شکل پروژه‌ محور و کامل این فریمورک react را به شما آموزش خواهم داد تا بتوانید با استفاده از آن اپلیکیشن خود را بسازید. شاید تعداد زیاد به‌روزرسانی‌ها در نگاه اول مقوله‌ای مثبت به‌حساب بیاید اما بنا بر دلایلی این مسئله یک نکته منفی برای این فریم ورک است. تعداد زیاد به‌روزرسانی‌ها گاه باعث سردرگمی توسعه دهندگان می‌شود. بعضی مواقع ممکن است وسوسه شوید تا پروژه خود را به جدیدترین نسخه به‌روزرسانی کنید. گاهی اوقات هم مشکلات موجود در نسخه جدید شما را وادار می‌سازد به نسخه قدیمی برگردید.

فریمورک‌های مختلفی مانند ویوجی‌اس، ری‌اکت و انگولار به ما قابلیت آن را داده‌اند تا رابط‌های کاربری زیبا و همه فن حریف را ایجاد کنیم. حال تیم توسعه‌دهنده فریمورک ری‌اکت تصمیم گرفته تا این فرایند توسعه و گسترش‌پذیری را حتی فراتر برده و پای جاوااسکریپت را به توسعه اپلیکیشن‌های کاملا محلی باز کند. در این دوره آموزشی از وبسایت راکت شما یاد خواهید گرفت که با استفاده از جاوااسکریپت و فریمورک React Native برای سیستم عامل‌های آندروید و iOS اپلیکیشن‌های موبایلی را توسعه دهید. اما قبل از هرچیزی بیایید ابتدای کار با React Native آشنا شویم و ببینیم این فریمورک چیست و چه کاری را برای ما انجام می‌دهد. این قابلیت فریم ورک React-native هست .که در ادامه با خانه اندروید همراه باشین .

دوره آموزشی در حال ضبط و پیش فروش شده و کاربرانی که زودتر در دروه شرکت می کنند با هزینه مناسبی دوره را تهیه می کنند . قیمت دوره ثابت نیست و پس از هر اپدیت قیمت دوره تغییر می کند و دوستانی زودتر دوره را تهیه می کنند نیازی به هزینه مجدد نیست. با این که ما در این نوشته تنها موارد بسیار ابتدایی را معرفی کردیم، اما شما اینک باید با مقدمات چگونگی ساخت اپلیکیشن‌ها کاملاً آشنا شده باشید. بنابراین در این مرحله متوقف نشوید و با بررسی مستندات React Native اطلاعات جامعی در مورد ویژگی‌های آن به دست آورید. به صفحه دانلود Node.js مراجعه کنید و بسته به سیستم عامل خود نسخه ویندوز یا مک را انتخاب کنید.

با اینکه ری‌اکت نیتیو کامپوننت‌هایی قوی دارد ولی در موارد به خصوصی این کامپوننت‌ها برای کار شما چندان مناسب نیستند. در توسعه برنامۀ iOS شما از Tab Bar خود React Native استفاده می کنید. در مقابل وقتی کار توسعۀ اپ اندروید را انجام می‌دهید به یک کتابخانۀ جانبی نیاز پیدا می‌کنید. اینجا است که باید بررسی کنید و ببینید کتابخانه‌ای که پیدا کرده‌اید مناسب کار شما هست یا نه. ماژولار بودن و معماری بصری قوی باعث می شود که توسعه دهندگان دیگر به راحتی با پروژه های شما بتوانند کار کنند . این مزیت باعث شده است که کارهای تیمی با ری اکت نتیو ( React Native ) بهتر پیش رود و همچنین بروزرسانی اپلیکیشن های مربوط به وب سایت ها راحت تر انجام بگیرد .

پس شما می‌توانید با خیالی راحت دوره آموزش React Native را مشاهده کنید و آن را یاد بگیرید. ما در طی این دوره سعی می‌کنیم شما را با تمام چالش‌های React Native آشنا کنیم و در قالب پروژه‌های متفاوت این فریمورک جذاب را به شما آموزش دهیم. در نسخه های جدید اندروید استودیو SDK Manager با خود اندروید استودیو ترکیب شده و نیازی به نصب جدا نیست برای همین به منظور دسترسی به SDK Manager باید اندروید استودیو هم نصب کنید. فایل نصب اندروید استودیو و از سایت های ایرانی دریافت کنید و مراحل نصب و انجام دهید. علی‌رغم محدودیت‌های این فریم ورک، مزایای آن به‌اندازه‌ای زیاد بوده که برندهای معتبر قانع شوند تا از آن استفاده کنند.

شما با شرکت در این دوره و یادگیری اصولی تمامی مفاهیم پایه و پیشرفته React Native در قالب پروژه های مختلف می توانید به راحتی وارد بازار کار شوید. در کنار آموزش اکثر سرفصل‌های این فریمورک با مثال‌های مختلف ما سعی می‌کنیم در کل پروسه یادگیری در کنار شما باشیم و در صورت داشتن سوال یا مشکل به شما کمک کنیم تا سوالات و مشکلات خود را حل کنید. یکی از چیزهایی که بسیار برای توسعه دهندگان اهمیت دارد و در IDEها نیز معمولاً وجود دارد شرح خطاها است. فریم ورک React Native نیز هنگام کدنویسی اگر خطایی به وجود بیاید به شما می‌گوید که خطا در کدام خط کد رخ‌داده است. در حال حاضر ۶۲ قسمت از دوره آموزشی تهیه شده و پس از خرید برای شما ایمیل می شود و اپدیت های جدید به ایمیل شما ارسال می شوند.

یادگیری آن به زمان کمی نیاز دارد و به شما کمک زیادی در طراحی اجزای اپلیکیشنتان خواهد کرد. این یک style که شما به متن 'Hello World' خودتون اعمال می‌کنید رو تعریف می کنه. اگر شما قبلاً در زمینه توسعه وب کار کرده باشید قطعاً شما با این کد آشنایی دارید. کلاس استایل StyleSheet برای استایل دهی به UI اپلیکیشن شبیه CSS در وب هست. تفاوت بین این دو مسیر در مستندات ری‌اکت نیتیو به خوبی توضیح داده نشده است.

به طور خلاصه نکته اصلی در این است که آیا از Expo استفاده می‌کنید یا نه. Expo یک مجموعه ابزار است که در کتابخانه create-react-native-app جای گرفته و برخی موانع را از سر راه بر می‌دارد؛ اما برخی موانع را نیز در بک‌اند در برابر ما قرار می‌دهد. در این مقاله نه تنها به بررسی شیوه ایجاد سرویس‌ها از طریق AWS Mobile CLI می‌پردازیم، ‌بلکه شیوه ادغام آن‌ها در یک اپلیکیشن ری‌اکت نیتیو با استفاده از AWS Amplify را نیز توضیح می‌دهیم. زمانی که می‌خواهیم یک اپلیکیشن موبایل واقعی بسازیم، الزامات زیادی وجود دارند که باید رعایت شوند. باید میزان engagement و مصرف هر کاربر را اندازه‌گیری کنیم و احتمالاً باید بتوانیم پوش نوتیفیکیشن ارسال کنیم و این پیام‌ها باید بر مبنای رویدادها یا رفتار کاربر باشند. همچنین باید بتوانیم داده‌های اپلیکیشن را مدیریت کنیم و احتمالاً با نقاط انتهایی REST متعددی سروکار داشته باشیم.

پس در حال حاضر میزان تقاضای شغلی React Native بسیار بیشتر از فلاتر است. با این حال این آمار در طول زمان متغیر است و ممکن است در سال‌های آتی تغییر کند. برخی از کاربردهای محبوب‌تر این فناوری شامل سرویس‌های پوش نوتیفیکیشن، ارائه‌دهندگان خدمات احراز هویت، و سرویس‌های آنالیتیکس هستند. شما می‌توانید اغلب موارد را رد کنید به جز این که مطمئن شوید نقطه ورود برنامه را روی app.js تنظیم کرده‌اید. بعد از نصب نوبت به ساخت پروژه میرسه برای این که بتونیم پروژه React Native ایجاد کنیم در cmd یا ترمینال IDE از دستور init استفاده می کنیم.

این فریمورک به توسعه‌دهندگان اجازه می‌دهد تا با استفاده از زبان جاوا اسکریپت و کتابخانه React، اپلیکیشن‌های نیتیو برای iOS و اندروید بسازند. مزیت اصلی React Native این است که می‌توانید کدهای جاوا اسکریپت را به کدهای نیتیو تبدیل کرده و به این ترتیب از سرعت و عملکرد بهتر اپلیکیشن‌های نیتیو بهره‌مند شوید. آموزش react native دوره ای است که مفاهیم پایه و کاربردی فریمورک محبوب react native  به صورت کاملا پروژه محور و جامع آموزش داده می شود. هدفی که در این دوره دنبال می کنیم یادیگری عمیق و مفهومی React Native است تا شما قدم به قدم با مفاهیم اساسی react native آشنا شوید، فریمورکی که با استفاده از آن می توانید برای پلتفرم Android و ios اپلیکیشن بسازید. اولین تفاوتی که بین ReactJS و React Native وجود دارد در ساختار آنها است. یکی در قالب کتابخانه عرضه شده و دیگری یک فریم ورک به شمار می‌رود.

طبیعی است باتوجه‌به کاربرد آن، در این فریم ورک ساختاری مشابه زبانی مثل جاوا را شاهد باشیم. به دلیل همین تفاوت‌ها بسیاری از کتابخانه‌ها و پکیج‌ها قادر به استفاده هم‌زمان از این دو نیستند. در React Native شما نمی‌توانید انیمیشن های CSS را پیاده سازی کنید. علاوه بر آن ساز و کار کدنویسی برای جا به جایی میان دو صفحه از یک برنامه در این دو با هم تفاوت دارند. React native(ری اکت نیتیو) یکی دیگر از فریمورک های جاوااسکرپتی محبوب است که در سال 2015 توسط facebook منتشر شد.

نسخه‌های لینوکسی نیز ارائه شده‌اند؛ اما برای نصب آن‌ها به کار بیشتری نیاز دارید. این نوع معماری در کنار مزایایی که ارائه می‌دهد، با چالش‌های مهمی نیز همراه است. برای مثال، استفاده مداوم از پل ها در داخل برنامه ممکن است عملکرد آن را به میزان قابل توجهی کاهش دهد. بنابراین اگر می‌خواهید اپلیکیشنی بسازید که شامل رویدادهای زیادی، داده‌های زیاد و… است، استفاده از فریمورک React Native ممکن است بهترین گزینه پیش روی شما نباشد. کلاس PropertyFinderApp همینطور که مشاهده کردید React.Component رو توسعه میده (extends), که این بلاک پایه ی React UI هست. کامپوننت ها شامل خواص غیرقابل تغییر, متغیرهای قابل تغییر و ارائه یک تابع برای رندر کردن هستند.


برنامه نویسی جنگو