Facebook JavaScript Engine (Hermes) Meningkatkan React Native di Android

Diterbitkan: 2019-11-18
Facebook telah menciptakan mesin JavaScript luar biasa bernama Hermes untuk meningkatkan pengoperasian aplikasi React Native di gadget Android. Mesin Facebook untuk perangkat Android bagus untuk pengaktifan cepat, memanfaatkan bytecode yang padat dan pengoptimalan sebelumnya.

Memperkenalkan 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.

Daftar Isi menunjukkan
  • 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

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

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:

  1. TTI (waktu untuk berinteraksi): Ini adalah waktu yang diperlukan 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-aplikasi-seluler

  • 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.
Selain itu, aplikasi Facebook untuk perangkat Samsung juga membuka sumber integrasi Hermes dengan React Native. Itu menyiratkan bahwa pengembang Android akan langsung dapat menggunakan Hermes.

Cara mendapatkan Hermes

Tanyakan pada diri Anda 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 cara menggunakannya tersedia di situs React Native.

Reaksi

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

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

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

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

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

Mesin JavaScript Facebook 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 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

Mesin JavaScript Facebook 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 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

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 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.