Jadi sekarang setelah kita mempelajari semua
alternatif ini, pertanyaan yang jelas adalah, pendekatan mana yang harus Anda gunakan untuk aplikasi Anda?
Sekarang saya pikir sepanjang kursus, Anda melihat bahwa menggunakan expo secara umum adalah pengalaman pengembangan
yang luar biasa, semuanya super cepat, mudah untuk menguji perubahan baik pada simulator maupun perangkat nyata.
Anda tidak perlu membangun secara lokal,
karena itu Anda juga dapat membangun dan menguji untuk dan pada iOS, pada sistem Windows dan Linux yang tidak mungkin tanpa
alur kerja yang dikelola dan
itu semua sangat keren.
Tetapi ketika kita membandingkan expo dengan setup non-expo dan dengan non-expo, maksud saya baik membuatnya dengan React
Native CLI atau menggunakan alur kerja bare expo, maka tentu saja
kita harus membandingkan semua hal.
Jadi seperti yang disebutkan dengan expo, dengan alur kerja yang dikelola, mudah digunakan, mudah dikembangkan, non-expo
berarti lebih banyak pengaturan manual dan sebagainya.
Sekarang Anda juga akan memiliki waktu yang mudah untuk menggunakan aplikasi karena Anda juga akan melihat di bagian penerapan
dan Anda bahkan dapat membangun dan menggunakan untuk iOS jika Anda menggunakan mesin Windows atau Linux,
sesuatu yang tidak mungkin dilakukan tanpa alur kerja yang dikelola.
Jadi di sana, Anda memiliki beberapa batasan di sana dan penyebaran karena Anda akan lihat juga membutuhkan
lebih banyak pekerjaan manual, seperti alur kerja non-pameran secara umum. Ketika di dunia alur kerja yang dikelola expo, kami juga memiliki
banyak modul asli, jadi
semua API expo ini yang selalu mudah digunakan, hanya sebuah expo yang diinstal, tidak memerlukan pengaturan apa pun sehingga itu benar-benar
luar
biasa dan Anda mendapat cukup semua yang Anda inginkan di aplikasi asli ada
- kamera, lokasi, sistem file, semuanya ada di sana.
Jika Anda kadang-kadang membutuhkan sesuatu yang tidak didukung atau Anda perlu menulis kode asli
Anda sendiri yang ingin Anda sambungkan ke React Native, paket Anda sendiri atau apa pun itu, maka non-expo adalah solusinya.
Jadi di sana Anda dapat menggunakan kode asli apa pun, tetapi tentu saja, Anda perlu mengaturnya secara manual dan itu
mungkin mudah dengan tautan Bereaksi Asli seperti yang Anda lihat atau bahkan beberapa perpustakaan tautan otomatis, tetapi Anda mungkin juga memiliki perpustakaan
yang membutuhkan lebih banyak usaha.
Selain itu, perlu dicatat bahwa tentu saja perpustakaan pihak ketiga perlu dipertahankan untuk tetap up to date
dengan React Native dan versi yang lebih baru dari React Native tetapi juga mereka perlu tetap up to
date dengan Android dan
iOS, benar, karena platform ini juga mengembangkan dan memperkenalkan fitur baru atau mencela fitur lama.
API pameran cukup dijamin untuk dipertahankan karena tim pameran aktif, sedang mengerjakannya
dan seluruh ekosistem yang bekerja bersama.
Itu mungkin tidak benar untuk semua paket
pihak ketiga, jadi keamanan ekstra yang Anda dapatkan dengan paket expo ini jelas sangat bagus.
Itu dikatakan seperti yang Anda lihat dengan alur kerja kosong, Anda tentu saja dapat juga menambahkan API tertentu tetapi
tidak semua expo ke aplikasi
yang tidak dikelola, itu mungkin tetapi membutuhkan sedikit lebih banyak pekerjaan. Sekarang tentu saja alur kerja yang dikelola memiliki kelemahan, ini adalah pembungkus
di sekitar aplikasi Anda dan tentu saja berdampak pada ukuran dan kinerja, kemungkinan besar
tidak dengan cara yang akan Anda rasakan atau lihat tetapi perlu dicatat, ada pembungkus ekstra tipis dan Anda tidak memiliki itu
dalam alur kerja kosong atau ketika hanya bekerja dengan CLI Native React dan tentu saja
seperti yang disebutkan, Anda dibatasi pada modul asli bawaan.
Ada banyak dari mereka dan mungkin semua yang Anda butuhkan tetapi
jika Anda membutuhkan sesuatu yang tidak dibangun ke dalam
expo, jadi API yang tidak didukung oleh expo, maka tidak ada cara untuk
membuatnya berfungsi, maka Anda perlu untuk mengeluarkan karena hanya
non-expo dan maksud saya aplikasi alur kerja yang tidak dikelola mendukung semua paket pihak ketiga dan semua modul asli yang
mungkin ingin Anda gunakan.
Jadi karena itu saran saya adalah bahwa untuk sebagian besar aplikasi, mungkin hampir semua
aplikasi, Anda bekerja dengan expo karena pengalaman pengembangan yang hebat dan fleksibilitas besar yang Anda miliki di sana.
Karena Anda selalu dapat mengeluarkan, tidak ada banyak ruginya, Anda selalu dapat kembali ke aplikasi yang dikelola non-expo jika
Anda ingin
seperti yang Anda lihat, dimulai dengan aplikasi non-expo, jadi dengan aplikasi
telanjang atau bahkan dengan hanya aplikasi React Native CLI adalah ide yang baik
jika Anda tahu bahwa Anda akan membutuhkan banyak fungsi asli yang tidak didukung oleh expo atau jika Anda
sedang membangun aplikasi kinerja tinggi di mana setiap kilobyte dari hal pembungkus tambahan, maka tentu saja Anda
mungkin mulai dengan aplikasi seperti itu tetapi jika tidak, saya benar-benar tidak melihat alasan kuat mengapa tidak menggunakan
expo dan terutama
jika Anda tidak bekerja di tim besar, di perusahaan atau semacamnya, bisa membuat
aplikasi iOS di Windows juga benar-benar hal yang baik, jadi itu sendiri juga
merupakan alasan yang baik untuk tinggal di dunia yang dikelola. Jadi itu adalah dua sen saya pada itu, karena Anda
dapat mengeluarkan, itu tidak
seperti Anda harus tetap dengan satu solusi
jika Anda mulai dengan itu, hanya kembali dari telanjang atau React Native CLI hanya pengaturan untuk alur kerja yang
dikelola sedikit lebih rumit karena di sana, Anda perlu membuat proyek terkelola expo baru, menyalin
kode Anda dan jika Anda memang menggunakan pustaka pihak ketiga yang bukan dari expo, Anda tidak akan dapat menggunakannya
lagi.
Jadi beralih kembali mungkin sulit,
beralih dari pameran berhasil ke pameran tidak terkelola, itu cukup mudah dengan ejecting.