Setiap minggu kita mendapat pertanyaan: "Kapan Ivy akan siap?" Saatnya untuk memberi tahu Anda apa yang terjadi dengan versi 8.0, serta berbagi dengan Anda rencana untuk mengingat dan melepaskan mesin Ivy.
Dalam versi kedelapan, dirilis pada kuartal kedua tahun ini, kami ingin memperkenalkan kemungkinan penyertaan opsional dari versi awal Ivy (Ivy Preview).

Apa yang Baru di Versi 8.0
Sementara sebagian besar tim kami telah melangkah maju dalam pengembangan, kami siap untuk menyajikan beberapa pembaruan untuk versi 8.0, di mana kami bekerja sangat keras. Perlu dicatat bahwa beberapa fitur dalam versi final mungkin berbeda dari yang dijelaskan di bawah ini.
- Pemuatan JavaScript modern yang dibedakan.
CLI sekarang akan membuat bundel standar JavaScript usang (ES5) dan modern (ES2015 +) sebagai bagian dari proses pembuatan, yang akan dimuat di sisi klien tergantung pada browser, sehingga mengurangi kecepatan dan waktu pengunduhan hingga interaksi pertama di browser modern. Fungsionalitas ini dikembangkan bersama dengan Manfred Steyer dan didasarkan pada proyeknya ngx-build-modern . - Kemampuan untuk menghubungkan Pratinjau Ivy.
Evaluasi bagaimana aplikasi Anda akan bekerja dengan Ivy dan beri tahu kami tayangan Anda sehingga kami dapat membuat penyesuaian yang diperlukan untuk versi final. - Kompatibilitas penuh dengan versi sebelumnya dari router Angular.
Kami telah menambahkan mode kompatibilitas ke belakang, yang akan menyederhanakan proses memperbarui proyek besar. Akan lebih mudah bagi pengembang untuk memutakhirkan ke Angular dengan memperbolehkan pemuatan bagian aplikasi AngularJS yang tertunda menggunakan $ route API. - Bundel Pekerja Web yang ditingkatkan.
Pekerja web adalah cara yang bagus untuk menulis kode yang berjalan di utas terpisah, yang mempercepat pekerjaan dan meningkatkan paralelisme aplikasi. Atas permintaan banyak pengembang, antarmuka baris perintah akan mendukung bundling webworker. - Mengirim data penggunaan (opsional).
Kami akan menambahkan telemetri ke antarmuka baris perintah untuk lebih memahami kebutuhan pengembang. Dengan persetujuan Anda, kami akan mengumpulkan data anonim seperti perintah yang Anda gunakan atau kecepatan build. Semakin banyak informasi yang kami miliki tentang bagaimana pengembang menggunakan Angular, semakin baik kami dapat membuat produk kami. - Pembaruan ketergantungan.
Seperti biasa, kami akan memperbarui dependensi, khususnya TypeScript, RxJS, dan Node, agar dapat mengikuti sisa ekosistem JavaScript.
Seperti apa perkembangan Ivy selanjutnya?
Di versi 8.0, kami ingin memperkenalkan kemampuan untuk mengaktifkan Ivy Preview. Jika Anda baru mengenal Ivy, lihat presentasi Kara tentang Ivy di Google I / O 2018 .
Pada versi awal akan ada kemampuan untuk beralih antara Ivy dan Mesin Tampilan standar. Informasi lebih lanjut tentang ini akan ditemukan di versi beta masa depan. Jika aplikasi dikompilasi oleh kompiler Ivy, maka setiap dependensi dari Angular atau komponen pihak ketiga lainnya akan tetap berfungsi, berkat menjalankan kompilator kompatibilitas. Menggunakan versi awal, Anda dapat mendeteksi kesalahan saat menghubungkan dependensi dan membantu kami memperbaiki kompiler.
Apa yang diharapkan dari Ivy Preview:
- Kode yang dihasilkan mudah dibaca dan di-debug saat runtime
- Mengurangi waktu rekondisi
- Ukuran bundel yang dioptimalkan (pengurangan ukuran bundel sudah terlihat pada aplikasi nyata, namun, beberapa perbaikan lebih lanjut direncanakan di bagian ini)
- Pemeriksaan tipe templat lanjutan
- Kompatibilitas penuh dengan versi sebelumnya
Ivy belum siap untuk mencakup semua kasus penggunaan. Beberapa fitur, seperti i18n di Angular Universal, kemungkinan besar tidak akan didukung dalam pratinjau. Secara khusus, Layanan Bahasa Angular tidak akan berfungsi dengan Ivy Preview.
Tujuan dari versi awal adalah untuk mentransfer aplikasi yang sudah ada ke mesin Ivy tanpa perlu menulis ulang. Ada juga banyak API khusus Ivy yang akan kami tambahkan ke API publik kami nanti sebagai bagian dari Angular Labs dan rilis mendatang.
Kapan semuanya akan siap?
Pada bulan April 2019, kami berencana untuk memperkenalkan kandidat rilis, dan sebulan kemudian - rilis versi publik 8.0.0, tetapi kami tidak dapat memberikan jaminan yang tegas tentang ketentuan tersebut. Dalam versi 8.0.0, Pratinjau Ivy dirancang untuk menguji tesis kompatibilitas penuh dengan versi Angular sebelumnya. Ini juga akan memungkinkan kami untuk mengembangkan alat migrasi otomatis yang mungkin diperlukan di masa depan.
Kami ingin memaksakan dimasukkannya Ivy untuk semua orang di versi utama berikutnya, dijadwalkan untuk rilis musim gugur ini, karena kami bertujuan untuk mencapai kompatibilitas penuh dengan versi sebelumnya dan mendukung aplikasi yang ada.
Pengenalan fungsionalitas penuh Ivy di versi kesembilan akan membuka banyak peluang bagi pengembang, dan ini adalah kabar baik. Kami akan segera membagikan rencana kami untuk pengenalan fitur baru, API, fitur penggunaan Ivy dan pengembangannya.
Ikuti posting blog kami, twitter , dan datang ke konferensi ng-conf untuk mengetahui lebih lanjut tentang rencana kami.