مدت زمان لازم برای اجرای یک اپلیکیشن به صورت مستقیم روی تجربه کاربری آن تاثیرگذار است. اگر مدت زمان شروع به کار اپلیکیشن طولانی شود، تمام ویژگیهای زیبا و خوبی که برای اپلیکیشن ساختهاید بی استفاده خواهد ماند. چرا که براساس آمار موجود اغلب کاربران بین ۳ تا ۵ ثانیه برای اجرای یک اپلیکیشن یا وبسایت صبر خواهند کرد. به همین دلیل نیاز است تا جای ممکن سرعت اجرای اپلیکیشنها را بالا ببرید.
حال فیسبوک نیز تصمیم گرفته تا یک رویکرد مناسبتری برای توسعه اپلیکیشنهای React Native را در نظر بگیرد که در نهایت سرعت آنها را بالاتر میبرد. فیسبوک امسال موتور جاوااسکریپتی جدیدی را معرفی کرد که مخصوص تولید اپلیکیشنهای مبتنی بر React Native ساخته شده است. این موتور Hermes نام داشته و ویژگیهای بسیار بهینه و مناسبی را روی اپلیکیشنها اعمال میکند.
Hermes به توسعهدهندگان کمک میکند تا کارایی اپلیکیشنهایی را که با ریاکت نیتیو نوشتهاند بالاتر برده و زمان شروع به کار آنها را کوتاهتر کنند. این موتور جدید همچنین روی کارایی اپلیکیشنها برای اجرا در موبایلهای قدیمی نیز تاثیرگذار بوده و یکی از اهداف اصلی خود را نیز همین مورد تعریف کرده است.
این موتور جاوااسکریپتی به صورت متن باز و رایگان عرضه شده و در حال حاضر از طریق مخزن گیتهاب نیز در دسترس است.
البته با وجود آنکه این تکنولوژی بسیار جدید است اما در حال حاضر توسط چندین اپلیکیشن مختلف استفاده میشود. اما بیایید به صورت کلی در ارتباط با امکاناتی که این ابزار برای ما فراهم میکند صحبت کنیم:
- Hermes بجای آنکه کدهای جاوااسکریپتی را روی دستگاه کاربر کامپایل کند آن را در زمان Build انجام میدهد.
- تمام رشتههایی که در یک اپلیکیشن قرار میدهید را Hermes به صورت یک پکیج درخواهد آورد. این کار باعث میشود در زمان اجرا روال سریعتری داشته باشیم.
- همچنین یکی دیگر از ویژگیهای این موتور بهینهسازی کدها و توابع جاوااسکریپتی است. از این رو نیازی به نگرانی در ارتباط با بهینه بودن کدهایتان نخواهید داشت.
- حجم APK تولید شده توسط این موتور به مراتب کوچکتر از حالت عادی است.
- بایتکد میتوانند به صورت Memory-mapped باشند و در صورت نیاز استفاده بیشتری از حافظه را ببرند.
- مدیریت قابلیتهایی مانند Garbage Collection و... حال بسیار سریعتر و بهینهتر اتفاق میافتد.
- ویژگیهای مربوط به استانداردهای جاوااسکریپتی مانند ES6 که قبلا چندان استفادهای در React Native نداشتند در این موتور حذف شدهاند.
برای فعالسازی این موتور جاوااسکریپتی در اپلیکیشنهای React Native میتوانید از این مستندات استفاده کنید.
دیدگاه و پرسش
در حال دریافت نظرات از سرور، لطفا منتظر بمانید
در حال دریافت نظرات از سرور، لطفا منتظر بمانید