AngularJS telah menjadi rangka kerja JavaScript sumber terbuka yang paling popular dalam dunia pembangunan aplikasi web. Sejak penubuhannya, kejayaannya telah didorong oleh pertumbuhan ekonomi yang mengagumkan dan sokongan serta penerimaan daripada kumpulan - termasuk pemaju individu, perniagaan dan komuniti.
Angular telah menjadi rangka kerja MVW sebelah pelanggan (Model-View-Whatever) untuk membina aplikasi satu halaman yang kompleks. Ia memainkan peranan penting dalam kedua-dua ujian aplikasi dan penulisan aplikasi sambil memudahkan proses pembangunan.
Versi semasa Angular ialah 1.3, yang stabil dan digunakan oleh Google (penyelenggara rangka kerja) untuk menyokong banyak aplikasi (dianggarkan terdapat lebih daripada 1,600 aplikasi di Google menjalankan Angular 1.2 atau 1.3). Angular 2.0 diumumkan secara rasmi dengan persidangan Nigeria pada Oktober lalu, dan versi itu tidak akan menjadi kemas kini utama yang kompleks.
Mengapa Angular 2.0 dilancarkan?
Sebelum membincangkan Angular 2.0 dengan lebih lanjut (anggaran tarikh keluaran lewat 2015), mari kita pertimbangkan secara ringkas falsafah di sebalik versi baharu itu. Pembangunan Angular 2.0 bermula dengan menyelesaikan masalah berikut:
Mudah alih: Versi baharu akan menumpukan pada pembangunan aplikasi mudah alih. Rasionalnya ialah lebih mudah untuk mengendalikan bahagian desktop, dan apabila cabaran melibatkan mudah alih (prestasi, masa muat), memfokuskan pada aspek ini akan menyelesaikan masalah.
Modularisasi: Modul individu akan dialih keluar daripada teras Angular untuk prestasi yang lebih baik. Ini bermakna anda boleh memilih bahagian yang anda perlukan.
Pemodenan: Angular 2.0 akan menyasarkan pelayar moden ES6 dan "evergreen" (yang dikemas kini secara automatik kepada versi terkini). Ini bermakna pembangun boleh menumpukan pada kod yang berkaitan dengan domain perniagaan.
Apakah kontroversi?
Tiada sebutan mengenai laluan ke penghijrahan ke versi 2.0 pada mesyuarat Nigeria. Ia juga menegaskan bahawa melompat ke versi 2.0 akan memecahkan aplikasi versi 1.3 asal dan tidak akan ada keserasian ke belakang. Sejak itu komuniti pembangun telah dipenuhi dengan ketidakpastian dan spekulasi, dan beberapa pembangun telah mula mempersoalkan sama ada ia berbaloi untuk memulakan projek Angular 1.3 baharu.
Apakah perubahannya?
AtScript
AtScript ialah set induk ES6 dan digunakan untuk membangunkan Angular 2.0. Ia diproses oleh pengkompil Traceur (bersama-sama dengan ES6) untuk menjana kod ES5 dan menggunakan sintaks jenis TypeScript untuk menjana penegasan masa pelaksanaan, menggantikan pemeriksaan masa kompilasi. Walau bagaimanapun, AtScript tidak wajib dan anda masih boleh menggunakan kod JavaScript/ES5 tulen dan bukannya AtScript untuk menulis aplikasi Angular.
Tingkatkan kemasukan kebergantungan (DI)
Idea asas model suntikan kebergantungan (suntikan Ketergantungan) ialah kelas klien Klien tidak perlu memulakan pembolehubah ahli IServer yang bergantung padanya sendiri, tetapi menggunakan objek bebas untuk mencipta kelas pelaksanaan yang sesuai bagi IServer dan berikannya kepada pembolehubah ahli Klien. Ia amat berfaedah untuk pembangunan modul dan pengasingan komponen. Angular 2.0 akan menyelesaikan aspek Angular 1.X ini. Menambahkan ciri yang tiada seperti penyuntik kanak-kanak dan kawalan seumur hidup/skop.
Anotasi
AtScript menyediakan alatan untuk mengaitkan metadata dan kefungsian. Ini membantu dalam membina kejadian objek yang memberikan maklumat yang diperlukan kepada perpustakaan DI (memeriksa metadata yang berkaitan apabila memanggil fungsi atau mencipta tika kelas). Ia juga memudahkan untuk memuatkan data parameter dengan menyediakan anotasi.
Suntikan Kanak-kanak
Penyuntik kanak-kanak mewarisi semua perkhidmatan prestasi kelas induknya. Bergantung pada keperluan, jenis objek yang berbeza boleh dipanggil dan skop yang berbeza dilindungi secara automatik.
Skop contoh
Pustaka DI yang dipertingkatkan akan menampilkan skop contoh, yang menjadi lebih berkuasa apabila menggunakan Penyuntik Kanak-kanak dan pengecam skop sendiri.
Templat dan pengikatan data
Apabila membangunkan aplikasi, templat dan pengikatan data akan seiring.
Pemuatan dinamik
Ini ialah ciri yang tiada daripada versi Angular semasa, tetapi akan muncul dalam Angular 2.0. Ini akan membolehkan pembangun menambah arahan atau pengawal baharu semasa dalam perjalanan.
Templat
Dalam Angular 2.0, proses penyusunan templat akan menjadi tak segerak. Memandangkan kod adalah berdasarkan spesifikasi modul ES6, pemuat modul akan memuatkan kebergantungan dengan hanya merujuk kepada definisi komponen.
Perintah
Akan ada tiga arahan dalam Angular 2.0:
Arahan Komponen - Ini akan mencipta komponen boleh guna semula melalui logik terkapsul dalam JavaScript, HTML atau lembaran gaya CSS pilihan.
Arahan hiasan - Arahan ini akan digunakan untuk menghiasi elemen (seperti menambah petua alat atau menggunakan ng-show/ng-hide untuk menunjukkan/menyembunyikan elemen).
Arahan templat - ini akan menukar HTML kepada templat boleh guna semula. Instalasi dan pembenaman templat ke dalam DOM boleh dikawal sepenuhnya oleh arahan. Contohnya termasuk ng-if dan ng-repeat.
Pelan penghalaan
Penghalaan Sudut awal direka untuk mengendalikan beberapa situasi mudah. Walau bagaimanapun, apabila rangka kerja berkembang, semakin banyak ciri ditambah. Penghalaan sudah boleh dilanjutkan dalam Angular 2.0 dan akan merangkumi ciri asas berikut:
Konfigurasi penghalaan berasaskan json yang mudah;
Kontrak pilihan atas konfigurasi;
penghuraikan URL;
Menyokong rentetan pertanyaan;
Gunakan status tolak atau Hashchange
Model navigasi (menjana UI navigasi);
Tajuk dokumen dikemas kini;
404 pemprosesan penghalaan;
Sekarang, mari kita lihat ciri penghalaan yang membawa Angular 2.0 ke tahap yang baharu:
Sub-laluan akan mengubah setiap komponen aplikasi menjadi aplikasi yang lebih kecil dengan menyediakan laluan mereka sendiri, yang akan membantu merangkum set ciri keseluruhan aplikasi.
Pengaktifan skrin
Ini akan membantu pembangun mengawal kitaran hayat navigasi dengan lebih baik melalui set panggilan balik boleh*: bolehAktifkan - benarkan/sekat navigasi ke pengawal baharu;
aktifkan - balas navigasi yang berjaya ke pengawal baharu;
bolehNyahaktifkan - Benarkan/sekat navigasi dari pengawal lama;
Panggil balik ini akan membolehkan pembangun mengembalikan nilai Boolean atau arahan (untuk kawalan peringkat rendah).
Semua logik ini dibina menggunakan struktur saluran paip, menjadikannya sangat mudah untuk menambah langkah anda sendiri pada saluran paip atau mengalih keluar bahan lalai. Selain itu, sifat tak segeraknya akan membolehkan pembangun menggunakan permintaan pelayan untuk mengesahkan atau memuatkan data untuk pengawal, walaupun ini masih dirancang.
Log
Angular 2.0 akan menyertakan perkhidmatan pengelogan yang dipanggil diary.js - ciri yang sangat berguna untuk mengukur masa anda dihabiskan dalam aplikasi anda.
Skop
$scope akan dialih keluar daripada Angular 2.0 dan digantikan dengan kelas ES6.
Kesimpulan
Apabila tarikh keluaran semakin hampir, keterujaan dan buzz di sekitar Angular 2.0 akan bertambah hebat. Adakah melanggar perubahan adalah perkara yang baik? Kami tidak mempunyai cara untuk mengetahuinya, tetapi lawan difahamkan gementar memandangkan kekurangan rancangan untuk berpindah. Keterujaan datang serta merta. Tetapi kerana ia akan datang, apa yang boleh kita lakukan ialah menyambutnya secara aktif.
Kandungan di atas memperkenalkan anda kepada ciri baharu AngularJS 2.0 Saya harap ia akan membantu anda!