اشتباهات به کار گیری از React Native
حفاظت نکردن از کل APIها
React Native از تک تک APIهای جان دار برای نرم افزارهای Native مدد نمینماید. این فریمورک APIهای موردنیاز را دفاع مینماید ولی گاهی ممکن میباشد API یا این که کارکرد بخصوصی را که شما به آن نیاز دارید مدد نکند. به کار گیری از این کوششها از روش ماژولهای محلی اجرا میشود که درباره ی پایینی طراحی اپلیکیشن در مشهد مشاهده میکنیم.
ماژولهای محلی
از آنجایی که مجموع APIها و کارکردها در React Native قرار ندارد، به همین استدلال وضعیت ماژولهای محلی ارائه گردیدهاست. این ماژول ها نصیبهایی می باشند که در گویش Native مندرج اند و آنگاه وارد کدهای React Native گردیده اند. به لحاظ راهکار مطلوب و معقولی میاید، البته برای به کار گیری از این ماژول ها، گسترش دهنده نیاز داراست که از گویشهای Native نیز درکی داشته باشد به همین ادله میباشد که بعضا اشخاص از به کارگیری React Native دوری مینمایند. اما در کنار این، اینگونه ماژولهایی می تواند روی کدها نیز اثر بگذارد چرا که ماژولهای مرتبط با Android با IOS مختلف میباشد.
پیاده سازی
Andriod و IOS پیاده سازی و ظواهر متفاوتی داراهستند که هرمورد برای خویش دارنده راهنما و نحوه های متفاوتی میباشند. المانهای گرافیکی در React Native در پلتفرمهای متعدد تبدیل می شود ولی این جایگزین کردنها در برخی مواقع ممکن میباشد بی ثبات باشد. به همین عامل بخش اعظمی از تایم ها نیاز دارید که نحوههای متفاوتی را برای شغل کردن با المانهای پیاده سازی در بر بگیرید.
نیاز به گسترش دهندگان native
باتوجه به اینکه شما تنها با جاوااسکریپت کد میزنید اما بعضی اوقات به توسعه و گسترش دهنده های native نیاز پیدا میکنید.فکر کنید که برخی اوقات لازمه که در نرم افزار محاسبات هنگفت جاری ساختن دهید،در چنین مورد ها به نرمافزار نویس native نیاز دارید.همینطور برخی اوقات موقع به کار گیری از SDK های متفاوت مثل Google Analytics برای گوشی شما می بایست طرز فعالیت داخلی کتابخونه رو بفهمید تا بتونید این کتابخونه رو با React Native ترکیب فرمائید.
اخلاق و رفتار مختلف برخی از کامپوننت ها در پلتفرم های گوناگون
در نرمافزار نویسی های cross-platform در حالی که اکثر کامپوننت ها خلق و خوی یکسان دارا هستند اما برخی اوقات در پلتفرم های متعدد رفتارهای متفاوتی دارا هستند.همینطور در React Native برخی کامپوننت ها صرفا منحصربهفرد یک پلتفرم میباشد و شما مجبورید از کتابخونه های جانبی برای یک پلتفرم منحصر به کارگیری نمایید.
کامپوننت های اصلی منحصر به فرد پلتفرم Ios:
DatePickerIOS
NavigatorIOS
PickerIOS
ProgressViewIOS
SegmentedControlIOS
SnapshotViewIOS
ActionSheetIOS
AdSupportIOS
AlertIOS
ImagePickerIOS
VibrationIOS
کامپوننت های اساسی منحصربهفرد پلتفرم Android:
DrawerLayoutAndroid
ProgressBarAndroid
ToolbarAndroid
ViewPagerAndroid
BackAndroid
DatePickerAndroid
PermissionsAndroid
TimePickerAndroid
ToastAndroid
محدودیت های انتزاع لایه
به خواسته ساختوساز امکان های بیشتر، یک انتزاع لایه در بالاترین سطح React Native ساخت می شود.درحالتی که که هر مشکلی در انتزاع لایه بوجود بیاد، اشکلات غیرمنتظره در نرم افزار شما بوجود میاد.تشخیص چنین اشتباه ها بسیار سخت و زمان بر میباشد.داشتن یک انتزاع لایه منجر تعلق به کتابخونه های جانبی برای بروزنگه داشتن فریمورک میگردد.یکی از دیگر از اشتباهات انتزاع لایه اینکه شما می بایست برای اجرای طرح های سفارشی از لهجه های native مثل Java, Objective-C، Swift استعمال نمائید.این عمل معمولا برنامه نویسان رو خسته میکند و مزایای این فریمورک رو کاهش می دهد.
Document برای جانبداری React Native
اگرچه بسط دهندگان React Native یک جامعه بالغ داراهستند البته مستندات دراین مورد به اندازه کفاف نمی دهد و مستندات وبسایت React Native هم برای استارت و درتوان میانگین مطلوب میباشد .این فرمان سبب میگردد که برنامه نویسان برای بهبود و سئو تلاش برنامشون در گیر نقص شوند.ولی خوشبختانه پیشرفت دهنده های React Native ماجرا اشتباهات و راهکار هاشون رو به اشتراک میزارند.
تعلق به کتابخانه های جانبی
React Native فوق العاده میباشد و کامپوننت های بسیار قدرتمند در دل خودش دارااست.ولی در موردها خاص نیاز است که نظارت و پژوهش فرمائید که به کارگیری از کامپوننت های خویش React Native برای عمل شما مناسبه و به اندازه کافی کارکشته میباشد یا این که خیر.
تحت عنوان مثال Tab Bar. شما میتونید از Tab Bar خویش React Native برای IOS استعمال فرمایید البته برای اندروید شما نیاز به کتابخونه جانبی دارید.زمانی این رخداد بیفته شما بایستی دنبال یک کتابخونه باشید و پس از کشف کردن یک کتابخونه بایستی تحقیق نمایید کهاین کتابخونه مطلوب عمل شما میباشد یا این که خیر که خودش کاری وقت گیره.
کتابخانه های جانبی دیرین
در ارتباط تعلق به کتابخونه های جانبی در نصیب پیشین کلام کردیم ولی چیز جدیدی که می بایست بدونید اینکه با بروزرسانی React Naive گاها مشکلاتی برای این کتابخونه ها رخداد میفته.بسته به امان جامعه توسعه و گسترش دهنده کتابخونه، میتونید انتظار داشته باشید که کتابخونه رو بروزرسانی نمایند یا این که با اشتباهات بروزرسانی دست و پنجه قابل انعطاف فرمایید.
تامین نکردن از پردازش برابر
React Native از تعدادی پردازشی یا این که پردازش برابر هواخواهی نمیکند. React Native از تک پردازشی با به کارگیری از جاوااسکریپت به کار گیری میکند. تلاش نرم افزار کاهش پیدا میکند اگه شما بخواین تعدادی پروسه رو همزمان جاری ساختن فرمائید.به عنوان مثال اگه شما بخواین نرم افزار چت زنده و گشت وگذار ویدئویی در نرمافزار داشته باشید.این فعالیت رو نمی تونید با React Native جاری ساختن بدید.
انواع زدایی استایل ها در React Native
مدل های انواع زدایی استایل در React Native برای پیشرفت دهنده های اینترنت تازه کار ممکنه یه خرده ناگوار باشه.زیرا نمیتونند مانند اینترنت با به کار گیری از موقعیت developer مرورگرها به گونه های زدایی بپردازند.ولی خوشبختانه در ورژن های نو React Native شما میتونید با به کار گیری از امکان hot reloading گونه های زدایی رو شل خیس اعمال بدید.
بروزرسانی بسیار زیاد React Native
بروز رسانی های بیشتراز حد React Native سبب میشه تا توسعه و گسترش دهنده ها سرگردان بشن و وسوسه بشن که پروژه خودشون رو به جدیدترین ورژن بروزرسانی نمایند.برخی اوقات به روز های نو دارنده مشکلاتی میباشد که ناچار میشید از ورژن های کهن مجدد به کار گیری نمائید یا این که بعضا از بخش های کدتون رو تغییر تحول بدید.
جنبههای بلند دوران
همواره یک شک و تردید از نگرانی برای امان بلند دوران از React Native وجود دارااست. فیسبوک هر روز قادر است تصمیم بگیرد که دیگر از این فریمورک جانبداری نکند، این وضعیت حالت را برای گزینش دشوار مینماید.