Facebook JavaScript Engine (Hermes) Meningkatkan React Native di Android
Diterbitkan: 2019-11-18Memperkenalkan alat Facebook JavaScript baru untuk perangkat Android dapat meningkatkan waktu pengaktifan, menurunkan penggunaan RAM, dan menghasilkan ukuran aplikasi yang lebih kecil. Saat ini, alat tersebut merupakan fitur opt-in di React Native. Mayoritas reaksi Facebook Produk versi terbaru Android Asli sudah mulai menggunakan alat JavaScript ini.
- Informasi lebih lanjut tentang mesin JavaScript Facebook untuk perangkat Android
- Fitur mesin JavaScript Android baru
- Cara mendapatkan Hermes
- Reaksi
- Keputusan arsitektural 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 mesin JavaScript Facebook untuk perangkat Android
Alat JavaScript Facebook untuk perangkat Android dibuat untuk meningkatkan fungsi aplikasi Android besar. Ukuran aplikasi telepon terus meningkat yang sangat mampu membawa masalah, seperti saat Anda mengunduh aplikasi Facebook di gadget yang tidak memiliki cukup ruang atau kemampuan pemrosesan yang hebat. Ini juga merupakan alasan utama mengapa Facebook dan perusahaan lain telah mengembangkan versi Android “ringan” untuk aplikasi mereka.
Sekarang dimungkinkan 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. 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 meningkatkan 3 fitur utama. Mereka:
- TTI (waktu untuk berinteraksi): Ini adalah waktu yang diperlukan untuk meluncurkan aplikasi hingga aplikasi dimuat sepenuhnya.
- Ukuran unduhan.
- Pemanfaatan memori.
Direkomendasikan untuk Anda: React Native vs Flutter vs PWA: Battle of Trending Mobile App Frameworks.
Fitur mesin JavaScript Android baru
- Pekerjaan akan dilakukan pada waktu pembuatan alih-alih mem-parsing dan menyusun JavaScript di gadget saat seseorang sedang menunggu.
- Kompilasi tepat waktu memungkinkan pengoptimalan yang lebih ditingkatkan. Kegiatan serupa dapat dilihat dalam sebuah program dan digandakan. String kode JavaScript akan disatukan dengan cara tersimpan yang baik tanpa overhead runtime.
- Ukuran APK Android yang kecil memungkinkan untuk menginstal aplikasi Facebook atau aplikasi lain di perangkat dengan memori lebih sedikit.
- Bytecode dapat dipetakan oleh memori dan dimuat dari memori flash sesuai kebutuhan.
- Area alamat virtual ditugaskan dalam potongan kapan pun diperlukan. Hal 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 di aplikasi React Native telah dihapus.
Cara mendapatkan Hermes
Mesin JavaScript Facebook untuk perangkat Android tersedia untuk diunduh. Anda tidak dapat mengunduh dari Facebook, untuk saat ini tersedia di GitHub. Panduan cara menggunakannya tersedia di situs React Native.
Reaksi
Tetapi React Native memiliki beberapa kekurangan yang membuat 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 merancang jembatan untuk menyambungkan ruang antara struktur dan kode asli. Ini juga alasan mengapa Airbnb memutuskan untuk berhenti.
Tetapi JavaScript Facebook untuk mesin perangkat Android mungkin menjadi sarana Facebook untuk menghidupkan React Native dan meyakinkan lebih banyak orang untuk menerimanya.
Mengingat JavaScript Facebook untuk mesin perangkat Android hanya berfokus pada aplikasi, Facebook mengungkapkan bahwa mereka tidak berencana untuk mengintegrasikannya dengan server atau mesin pencari.

JavaScript Facebook untuk mesin 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: Model untuk pembelajaran mendalam.
- Spectrum: Sebuah proyek yang dimaksudkan untuk membuat proses pengunggahan gambar menjadi efisien.
Anda mungkin menyukai: Pengantar Pemrograman: Ringkasan Node JS, Laravel, React, Ruby, Vue & Python.
Keputusan arsitektural utama mesin JavaScript Facebook untuk perangkat Android
Keterbatasan gadget seluler seperti flash lambat dan jumlah RAM kecil membuat Facebook membuat beberapa keputusan arsitektural. Di bawah ini adalah hal-hal yang mereka terapkan:
1. Pra-kompilasi kode byte
Untuk menghindarinya, mesin JavaScript perangkat android aplikasi Facebook menggunakan kompiler sebelumnya yang berjalan di bawah proses pembuatan aplikasi. Ini menghasilkan lebih banyak waktu dihabiskan dalam optimasi bytecode. Ini menyiratkan bahwa kode byte kecil dan lebih bermanfaat.
Mengoptimalkan seluruh program dapat berlangsung. Ini termasuk de-duplikasi operasi dan mengemas tabel string.
Kode byte dibangun sedemikian rupa sehingga selama runtime, akan dipetakan pada memori dan ditafsirkan tanpa harus melalui seluruh file. Memori flash meningkatkan latensi pada sebagian besar gadget seluler berkualitas menengah dan rendah. Jadi ini memuat kode byte dari flash bila diperlukan dan pengoptimalan kode byte untuk ukuran membawa peningkatan TTI yang hebat.
Selain itu, karena memori dipetakan hanya untuk dibaca dan didukung oleh file, OS yang tidak bertukar mungkin masih menghapus halaman tersebut di bawah tekanan memori. Ini akan meminimalkan proses matinya memori di 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
Aplikasi Facebook untuk perangkat Android Mesin JavaScript tidak memiliki alat JIT yang menyiratkan bahwa itu tidak bekerja dengan baik sebagian besar di tolok ukur yang bergantung pada CPU. Keputusan itu bersifat global. Tolok ukur secara keseluruhan tidak mewakili beban kerja aplikasi.
Facebook bahkan melakukan berbagai pengujian dengan JIT dan mereka yakin bahwa tidak akan pernah mudah untuk mencapai kecepatan tinggi tanpa memperburuk metrik utama mereka. JTI harus melakukan persiapan terlebih dahulu setiap kali peluncuran aplikasi yang mempersulit peningkatan TTI, bahkan dapat merugikan 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 juru bahasa sebagai trade-off terbaik untuk JavaScript Facebook untuk mesin perangkat Android.
3. Teknik pengumpulan sampah
Selama tes Facebook Android awal, ditemukan bahwa ruang alamat virtual mungkin terbatas pada aplikasi besar pada gadget 32-bit.
Untuk mengurangi memori dan ruang alamat virtual yang digunakan mesin, Facebook merancang pemulung dengan fitur-fitur di bawah ini.
- Mengalokasikan sesuai permintaan: Ruang alamat virtual diberikan dalam potongan bila diperlukan.
- Noncontiguous: Ruang alamat virtual harus berada dalam satu rentang memori untuk menghilangkan batas sumber daya.
- Memindahkan: Memindahkan objek menyiratkan bahwa memori dapat terfragmentasi sementara gumpalan yang tidak perlu dibawa kembali ke OS.
Anda mungkin juga menyukai: Sudut vs Bereaksi: Kerangka Kerja Mana yang Harus Dipilih pada 2019.
Kesimpulan
Proyek JavaScript Facebook untuk perangkat Android adalah salah satu dari banyak proyek yang sedang dikerjakan oleh tim Facebook. Tim juga menantikan untuk menciptakan memori dan cara menganalisis waktu. Ini akan memudahkan pakar Android untuk meningkatkan 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 ada.
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 serta menyukai cara kerjanya. Ia juga menyusun ulasan pakar terbaik untuk sektor otomotif di autoexpertguides.com.