Facebook JavaScript Engine (Hermes) Meningkatkan React Native di Android

Diterbitkan: 2019-11-18
Facebook telah menciptakan mesin JavaScript yang luar biasa bernama Hermes untuk meningkatkan operasi aplikasi React Native pada gadget Android. Mesin perangkat Facebook untuk Android bagus untuk memulai dengan cepat, memanfaatkan bytecode yang padat dan mengoptimalkan sebelumnya.

Memperkenalkan alat JavaScript Facebook untuk perangkat Android yang baru dapat meningkatkan waktu mulai, menurunkan penggunaan RAM, dan menghasilkan ukuran aplikasi yang lebih kecil. Saat ini, alat tersebut merupakan fitur opt-in di React Native. Mayoritas Facebook bereaksi produk versi terbaru Android asli sudah mulai menggunakan alat JavaScript ini.

Daftar Isi menunjukkan
  • Informasi lebih lanjut tentang Facebook untuk perangkat Android Mesin JavaScript
  • Fitur mesin JavaScript Android baru
  • Cara mendapatkan Hermes
    • Reaksi
  • Keputusan arsitektur utama mesin JavaScript Facebook untuk perangkat Android
    • 1. Pra-kompilasi kode byte
    • 2. Tidak ada JIT
    • 3. Teknik pengumpulan sampah
  • Kesimpulan

Informasi lebih lanjut tentang Facebook untuk perangkat Android Mesin JavaScript

AI-artificial-intelligence-script-script-design-development

JavaScript Facebook untuk alat perangkat Android dibuat untuk meningkatkan fungsi aplikasi Android besar. Aplikasi telepon terus bertambah dalam ukuran yang sangat mampu membawa masalah, seperti ketika Anda mengunduh aplikasi Facebook di gadget yang kekurangan ruang atau kemampuan pemrosesan yang hebat. Ini juga merupakan alasan utama mengapa Facebook dan perusahaan lain mengembangkan versi Android “lite” untuk aplikasi mereka.

Sekarang mungkin bagi pembuat aplikasi Android untuk meningkatkan fungsi aplikasi apa pun melalui bantuan alat JavaScript. Alat ini menurunkan ukuran unduhan dan meningkatkan fungsi startup. Itulah yang ingin dilakukan pembaruan Facebook untuk aplikasinya menggunakan JavaScript Facebook untuk mesin perangkat Android.

Tim Facebook menganalisis informasi kinerja dan menemukan bahwa alat JavaScript Facebook untuk perangkat Android sangat penting dalam ukuran unduhan dan fungsi startup secara umum. Setelah mengetahui hal ini, mereka merasa perlu mengoptimalkan kinerja JavaScript secara normal di lingkungan perangkat portabel yang sangat tertekan. Lingkungan desktop, di sisi lain, baik-baik saja dan versi desktop Facebook untuk Android berfungsi dengan sangat baik.

Alat JavaScript Facebook untuk perangkat Android membantu dalam meningkatkan 3 fitur utama. Mereka:

  1. TTI (waktu untuk berinteraksi): Ini adalah waktu yang dibutuhkan untuk meluncurkan aplikasi hingga aplikasi dimuat sepenuhnya.
  2. Ukuran unduhan.
  3. Pemanfaatan memori.
 Direkomendasikan untuk Anda: React Native vs Flutter vs PWA: Battle of Trending Mobile App Frameworks.

Fitur mesin JavaScript Android baru

pengembangan-pemasaran-aplikasi-seluler

  • Pekerjaan akan dilakukan pada waktu pembuatan alih-alih menguraikan dan menyusun JavaScript di gadget saat seseorang sedang menunggu.
  • Kompilasi tepat waktu memungkinkan pengoptimalan yang lebih ditingkatkan. Kegiatan serupa dapat dilihat dalam program dan tidak digandakan. String kode JavaScript akan disatukan dalam penyimpanan yang baik tanpa overhead runtime.
  • Ukuran kecil APK Android memungkinkan untuk menginstal aplikasi Facebook atau aplikasi lain di perangkat dengan memori lebih sedikit.
  • Bytecode dapat dipetakan oleh memori dan dimuat dari memori flash semakin banyak sesuai kebutuhan.
  • Area alamat virtual ditetapkan dalam potongan kapan pun diperlukan. Ini mencegah kebutuhan untuk menentukan ukuran tumpukan dan juga meminimalkan overhead.
  • Menerapkan standar JavaScript menggunakan Hermes menargetkan ECMAScript2015 yang juga disebut sebagai ES6. Fitur JavaScript yang tidak sering diterapkan dalam aplikasi React Native telah dihapus.
Selain itu, aplikasi Facebook untuk perangkat Samsung juga membuka sumber untuk integrasi Hermes dengan React Native. Artinya, pengembang Android akan langsung bisa memanfaatkan Hermes.

Cara mendapatkan Hermes

Tanyakan pada diri sendiri tiga pertanyaan untuk menilai hasil

Mesin JavaScript Facebook untuk perangkat Android tersedia untuk diunduh. Anda tidak dapat mengunduh dari Facebook, untuk saat ini tersedia di GitHub. Panduan tentang cara menggunakannya tersedia di situs React Native.

Reaksi

React-JavaScript-Library Penting untuk dicatat bahwa JavaScript Facebook untuk mesin perangkat Android hanya berfungsi dengan aplikasi Android yang telah dirancang dengan React Native (struktur aplikasi yang dibuat oleh Facebook). Nilai jual utama dari struktur ini adalah bahwa kode berjalan dengan cara asli di sebagian besar platform.

Tetapi React Native memiliki beberapa kekurangan, itulah sebabnya kebanyakan orang tidak menyukainya. Misalnya: Aplikasi game online dan fungsi aplikasi Android lainnya memerlukan kode asli seperti saat mereka perlu mencadangkan integrasi antara kamera dan sensor. Selain itu, pengembang Android selalu perlu mendesain jembatan untuk menyambungkan spasi antara struktur dan kode asli. Ini juga alasan mengapa Airbnb memutuskan untuk berhenti.

Tetapi mesin JavaScript Facebook untuk perangkat Android mungkin menjadi sarana Facebook untuk menghidupkan lebih banyak React Native dan meyakinkan lebih banyak orang untuk menerimanya.

Mengingat mesin JavaScript Facebook untuk perangkat Android hanya berfokus pada aplikasi, Facebook mengungkapkan bahwa mereka tidak berencana untuk mengintegrasikannya dengan server atau mesin pencari.

Mesin JavaScript Facebook untuk perangkat Android adalah proyek sumber terbuka terbaru yang berasal dari Facebook. Lebih banyak proyek Android saat ini meliputi:

  • Pythia: Kerangka kerja untuk pembelajaran mendalam.
  • DLRM: Sebuah model untuk pembelajaran yang mendalam.
  • Spectrum: Sebuah proyek yang dimaksudkan untuk membuat proses mengunggah gambar secara efisien.
 Anda mungkin menyukai: Pengantar Pemrograman: Sekilas tentang Node JS, Laravel, React, Ruby, Vue & Python.

Keputusan arsitektur utama mesin JavaScript Facebook untuk perangkat Android

Android

Keterbatasan gadget seluler seperti flash yang lambat dan jumlah RAM yang kecil membuat Facebook membuat beberapa keputusan arsitektural. Di bawah ini adalah hal-hal yang mereka terapkan:

1. Pra-kompilasi kode byte

Facebook JavaScript Engine Meningkatkan React Native di Android - Poin 1 Mesin JavaScript Facebook untuk perangkat Android akan secara otomatis mengurai sumber JavaScript saat memuat. Ini akan membuat kode byte. Aktivitas ini akan menunda dimulainya eksekusi JavaScript

Untuk menghindari itu, mesin JavaScript perangkat Android aplikasi Facebook menggunakan kompiler sebelumnya yang berjalan di bawah proses pembuatan aplikasi. Ini menghasilkan lebih banyak waktu yang dihabiskan dalam pengoptimalan bytecode. Ini menyiratkan bahwa kode byte kecil dan lebih berguna.

Optimalisasi seluruh program dapat berlangsung. Ini termasuk de-duplikasi operasi dan pengepakan tabel string.

Kode byte dibangun sedemikian rupa sehingga selama runtime, akan dipetakan pada memori dan diinterpretasikan tanpa harus melalui seluruh file. Memori flash meningkatkan latensi pada sebagian besar gadget seluler menengah dan berkualitas buruk. Jadi ini memuat kode byte dari flash saat diperlukan dan optimalisasi kode byte untuk ukuran membawa peningkatan TTI yang hebat.

Selain itu, karena memori yang dipetakan hanya dibaca dan didukung oleh file, OS yang tidak bertukar masih dapat menghapus halaman tersebut di bawah tekanan memori. Ini akan meminimalkan proses kehabisan memori pada gadget yang memiliki memori lebih sedikit.

Kode byte yang dikompresi sedikit lebih besar dari kode JavaScript yang juga dikompresi. Ini karena kode mesin JavaScript Facebook untuk perangkat Android berukuran kecil. Mesin JavaScript Facebook untuk perangkat Android menurunkan ukuran aplikasi Android.

2. Tidak ada JIT

Facebook JavaScript Engine Meningkatkan React Native di Android - Poin 2 Untuk membuat eksekusi lebih cepat, banyak mesin JavaScript yang umum digunakan mungkin mengkompilasi kode yang ditafsirkan dengan buruk ke kode mesin menggunakan alat JIT (tepat waktu).

Aplikasi Facebook untuk perangkat android Mesin JavaScript tidak memiliki alat JIT yang menyiratkan bahwa itu tidak berkinerja baik sebagian besar dalam tolok ukur yang mengandalkan CPU. Keputusan itu bersifat global. Tolok ukur secara keseluruhan tidak mewakili beban kerja aplikasi.

Facebook bahkan melakukan berbagai tes dengan JIT dan mereka yakin bahwa tidak akan pernah mudah untuk mencapai kecepatan tinggi tanpa memperburuk metrik utama mereka. JTI harus mempersiapkan terlebih dahulu setiap kali aplikasi diluncurkan yang menyulitkan untuk meningkatkan TTI, bahkan dapat membahayakan TTI. Selain itu, JIT berkontribusi pada ukuran kode asli dan konsumsi memori. Ini merusak metrik utama Facebook. Inilah sebabnya mengapa Facebook Android memutuskan untuk mengabaikannya dan malah memperhatikan kinerja penerjemah sebagai trade-off terbaik untuk JavaScript Facebook untuk mesin perangkat Android.

3. Teknik pengumpulan sampah

Facebook JavaScript Engine Meningkatkan React Native di Android - Poin 3 Penggunaan memori yang baik sangat penting dalam gadget seluler Android. Gadget berkualitas rendah memiliki lebih sedikit memori, pertukaran sistem operasi tidak dimungkinkan dan OS mematikan aplikasi yang menggunakan banyak ruang memori. Setelah mematikan aplikasi, restart lambat diperlukan dan fungsi latar belakang terpengaruh.

Selama pengujian awal Facebook Android, ditemukan bahwa ruang alamat virtual mungkin terbatas pada aplikasi besar pada gadget 32-bit.

Untuk mengurangi memori dan ruang alamat virtual yang digunakan oleh mesin, Facebook merancang pengumpul sampah dengan fitur-fitur di bawah ini.

  • Mengalokasikan sesuai permintaan: Ruang alamat virtual ditetapkan dalam potongan bila diperlukan.
  • Noncontiguous: Ruang alamat virtual harus berada dalam satu rentang memori untuk menghilangkan batasan sumber daya.
  • Memindahkan: Memindahkan objek menyiratkan bahwa memori mungkin terfragmentasi sementara gumpalan yang tidak perlu dibawa kembali ke OS.
 Anda mungkin juga menyukai: Angular vs React: Kerangka mana yang harus dipilih pada tahun 2019.

Kesimpulan

Facebook JavaScript Engine Meningkatkan React Native di Android - kesimpulan

Proyek JavaScript Facebook untuk perangkat Android adalah salah satu dari banyak proyek yang sedang dikerjakan oleh tim Facebook. Tim juga berharap dapat menciptakan memori dan cara menganalisis waktu. Ini akan memudahkan pakar Android untuk menyempurnakan aplikasi mereka. Uji JavaScript Facebook untuk mesin perangkat Android dan lihat fungsinya. Bagikan pengalaman Anda dengan kami dan Anda juga dapat mengajukan pertanyaan kepada kami jika Anda memilikinya.

 Artikel ini ditulis oleh Thomas Miller. Dia adalah pakar teknologi Android yang suka memberi tahu orang-orang tentang teknologi terbaru. Thomas juga menyukai ide JavaScript Facebook untuk mesin perangkat Android dan telah menggunakannya dan menyukai cara kerjanya. Dia juga mengumpulkan ulasan ahli terbaik untuk sektor otomotif di autoexpertguides.com.