스크립트
00:00:00Shopify telah menjadi pendukung besar React Native selama setengah dekade, tetapi minggu ini mereka baru saja mengumumkan
00:00:05bahwa mereka kembali ke native, dan jika Anda memahami alasannya, Anda mungkin juga ingin beralih. Klaim terbesar
00:00:10dari platform seperti React Native adalah Anda dapat membangun aplikasi sekali dan merilisnya ke Android
00:00:15maupun iOS. Cukup satu basis kode, satu bahasa, dan pemeliharaannya jauh lebih sedikit. Shopify tadinya sangat mendukung
00:00:21gagasan ini. Mereka mengelola paket-paket React Native yang kabarnya diunduh lebih dari 2 juta kali setiap minggu,
00:00:26dan belum lama ini pada tahun 2025, mereka menerbitkan artikel yang memperbarui dukungan mereka untuk teknologi tersebut. Namun,
00:00:32satu tahun berlalu dan tiba-tiba pendirian mereka berubah drastis. Semua repositori sumber terbuka itu kini
00:00:37ditinggalkan, dan perusahaan telah beralih sepenuhnya kembali ke native. Alasan utamanya adalah kemajuan AI. Dengan
00:00:44model-model terbaru dan teknologi internal yang canggih, beban untuk membangun dua aplikasi terpisah tidak lagi
00:00:49berlaku. Anda cukup mengarahkan model ke aplikasi iOS Anda lalu bilang, "Tolong buatkan ini di Android," dan itu berhasil. Jadi,
00:00:55hari ini kita akan mengulas secara persis bagaimana Shopify membangun aplikasi secara native, dan saya sepenuhnya setuju
00:01:00dengan mereka dalam hal ini. Meskipun saya sendiri telah menggunakan React Native hampir selama dekade terakhir, saya juga
00:01:06telah beralih kembali ke native dan merasa sangat puas. Jadi semoga dalam video ini saya bisa meyakinkan
00:01:12Anda untuk melakukan hal yang sama. Pekan lalu, Shopify menerbitkan artikel yang menyatakan bahwa native kini adalah masa depan seluler
00:01:23Shopify, dan artikel itu penuh dengan wawasan berharga. Mereka membahas tentang mencegah hasil AI berkualitas buruk dengan membangun sistem bernama
00:01:29Helix untuk membagi pekerjaan agen menjadi bagian-bagian lebih kecil, serta cara menangani siklus umpan balik yang cepat agar agen dapat melakukan pengujian
00:01:36dengan cepat. Setelah membangun secara native selama beberapa bulan terakhir ini, hal itu secara mendasar telah mengubah alur kerja saya
00:01:42sendiri. Mari kita ulas semuanya, namun pertama-tama, mengapa harus beralih? Karena seperti yang mereka katakan sendiri,
00:01:48pada tahun 2025 saya menulis bahwa masa depan React Native sangat cerah dan Shopify berencana untuk terus berinvestasi
00:01:54di dalamnya. Namun sejak saat itu, model pengodean menjadi jauh lebih baik, dan untuk aplikasi serta tim kami,
00:01:59membangun fitur yang sama di Swift dan Kotlin tidak lagi memakan biaya tinggi seperti dulu. Jadi manfaat
00:02:05React Native untuk membangun sekali bagi kedua platform tidak lagi relevan berkat AI. Pertama-tama, mereka membangun
00:02:11sistem bernama Helix ini untuk mengatasi kekurangan model-model saat ini. Mereka bilang sangat menggiurkan untuk langsung mengarahkan LLM ke
00:02:17basis kode React Native dan mencoba membuat fitur yang sama di native dalam satu langkah, tetapi itu tidak berhasil.
00:02:23Bahkan jika Anda memintanya mengumpulkan informasi sebanyak mungkin, membaginya menjadi spesifikasi dan berkas tugas,
00:02:29lalu mengimplementasikannya, Anda berakhir dengan sekumpulan besar kode yang sulit dipelihara dan tidak bisa dirilis. Helix justru
00:02:34mengantisipasi bahwa upaya pertama tidak akan sempurna dan membangun siklus di mana upaya yang tidak sempurna itu
00:02:41tidak bisa berlanjut sampai menjadi hasil yang baik. Pengembang terlebih dahulu mengarahkan Helix ke suatu layar, lalu sistem membaca
00:02:46kode React Native dan mengusulkan urutan checkpoint, yaitu potongan-potongan pekerjaan kecil terurut yang
00:02:52dapat ditinjau dalam hitungan menit. Kemudian, checkpoint demi checkpoint dibangun, dan masing-masing harus membuktikan perilakunya dengan pengujian,
00:03:00mencocokkan aplikasi yang berjalan dalam tinjauan visual, lolos dua kali tinjauan kode secara ketat, dan mendapat persetujuan manusia
00:03:05sebelum di-commit dan tahap berikutnya dimulai. Umpan balik dari setiap tinjauan ini akan diingat,
00:03:11sehingga siklus berjalan lebih otonom seiring berjalannya migrasi. Pendekatan ini secara efektif menghilangkan hasil kode yang buruk.
00:03:18Namun, meskipun semua ini sudah diterapkan, masih ada masalah besar yang tersisa karena mengompilasi dan menguji untuk native
00:03:23itu lambat. Agen dapat membuat perubahan dalam hitungan detik, tetapi butuh beberapa menit bagi mereka untuk menguji hasilnya.
00:03:29Hal ini membuat proses iterasi menjadi sangat lambat dan manual. Tidak begitu berpengaruh seberapa bagus modelnya jika
00:03:34ia tidak dapat menguji pekerjaannya dengan cepat, yang mana sangat sulit dilakukan di seluler. Shopify memecahkan hal ini dalam dua
00:03:40cara khusus. Pertama, logika bisnis harus dipisahkan sepenuhnya dari antarmuka pengguna (UI). Ini berarti logika dapat berjalan
00:03:46tanpa tampilan (headless) di komputer desktop dan tersedia bagi agen untuk dijalankan melalui CLI, yang memungkinkan mereka beriterasi dalam
00:03:52hitungan milidetik, bukan menit, tanpa melibatkan simulator. Dari konteks pengembangan web, ini seperti
00:03:58menyimpan semua status aplikasi Anda dalam JSON lalu memicu aksi untuk memperbarui penyimpanan JSON tersebut. UI hanyalah
00:04:04representasi dari status tersebut, jadi tidak perlu memproses pohon aksesibilitas, memeriksa
00:04:10layar, atau mencari dan mengklik elemen apa pun. Semuanya dapat dijalankan tanpa UI sama sekali, dan dalam kasus-kasus
00:04:16di mana Anda benar-benar perlu merender UI, Anda masih bisa menjalankan semua interaksi dari CLI,
00:04:22sehingga semuanya tetap cepat. Ini adalah agen yang menguji aplikasi secara real-time, dan rekaman ini tidak dipercepat sama sekali.
00:04:28Saya telah menyusun demo sederhana yang melakukan hal serupa, yang melalui CLI dapat membuka YouTube dan
00:04:32subskrib ke Better Stack. Namun Anda bahkan tidak perlu agen untuk melakukan itu, Anda bisa langsung subskrib
00:04:36menggunakan tombol di bawah video ini. Tanpa pengaturan seperti ini, Anda perlu menggunakan
00:04:41XCUITest milik Apple, tetapi ini berjalan di luar proses, mencari elemen dengan menelusuri hierarki aksesibilitas,
00:04:46mensusun ketukan jari, lalu mengueri ulang pohon untuk memverifikasi, yang sebaliknya sangat lambat dan sering gagal. Jadi
00:04:53dengan mengikuti teknik-teknik ini, aplikasi Shop telah dirilis sepenuhnya secara native. Itu adalah aplikasi dengan 3 juta
00:04:59unduhan bulanan. Catatannya di sini tentu saja bahwa Shopify adalah perusahaan yang sangat besar. Anda sendiri tetap harus
00:05:06memelihara dua aplikasi, tetapi saya ingin katakan inilah yang memungkinkan dengan model-model saat ini. Selama beberapa
00:05:11bulan dan tahun ke depan, ini akan menjadi semakin mudah, dan saya rasa hal itu mulai mengikis nilai dari React Native
00:05:17lebih jauh lagi. Shopify mengelola beberapa paket sumber terbuka utama termasuk FlashList dengan 2 juta
00:05:23unduhan mingguan, React Native Skia, dan Restyle. Semua paket ini sekarang diserahkan kepada
00:05:30pengelola pihak ketiga, jadi sepertinya Shopify benar-benar lepas tangan dari React Native.
00:05:36Airbnb juga tercatat meninggalkan React Native bertahun-tahun lalu karena memelihara iOS, Android, dan sebuah bridge
00:05:43terasa seperti tiga platform, bukan satu. Selama bertahun-tahun saya sangat menyukai pengembangan di React Native dan menghabiskan sebagian besar karier saya
00:05:50di bidang itu, tetapi saya merasa ini adalah awal dari akhir bagi teknologi lintas platform. Seiring berimprovisasinya agen AI,
00:05:56mengapa Anda tidak ingin mengoptimalkan performa dan fungsionalitas native platform yang lebih baik seperti CloudKit
00:06:02dan SwiftUI? Tentu saja Anda bisa berinteraksi dengan sistem-sistem ini melalui React Native, tetapi performanya
00:06:08tidak akan pernah sebaik itu. Beri tahu pendapat Anda di kolom komentar, subskrib jika Anda belum melakukannya,
00:06:13kami terus merilis konten teknologi dan AI secara rutin, dan sampai jumpa di lain waktu.
커뮤니티 글
아직 글이 없습니다. 이 영상에 대한 첫 번째 글을 작성해 보세요!
이 영상에 대해 글쓰기