.NET 5: Apa maksud penggabungan .NET Framework dan .NET Core

Strategi Microsoft .NET mungkin agak tidak jelas baru-baru ini, dengan dua helai pengembangan yang berbeza dalam Rangka Kerja .NET yang biasa dan Teras .NET sumber terbuka yang baru. Satu set perpustakaan biasa .NET bertujuan untuk menyatukan keduanya, memberikan satu cara kepada pemaju untuk bekerja dengan mana-mana versi .NET yang berbeza di semua platform sasaran mereka, dari Windows hingga mudah alih ke web. Tetapi itu masih bermaksud perlu memikirkan masa penggunaan NET yang mana: Core, Xamarin, Mono, atau Framework?

Memperkenalkan .NET 5, masa depan .NET

Pada Build 2019 Microsoft melancarkan rancangannya untuk masa depan .NET, mengumumkan bahawa pelepasan utama seterusnya selepas .NET Core 3 akan menjadi satu versi .NET yang disebut .NET 5. Membangun pada pertumbuhan pesat dalam .NET yang direfleksikan dan dihidupkan semula. Inti, Microsoft bertujuan untuk menjalankan banyak API dan ciri .NET Framework 4.8 yang ada di .NET 5, bersama dengan API dan perkhidmatan baru. Bukan hanya perpustakaan kelas asas yang bersatu; Microsoft mengambil kesempatan untuk menyatukan kompilator .NET yang berbeza, mengembangkan kedua-dua JIT .NET Core (just-in-time) dan model kompilasi Mono yang paling awal.

Ini bukan keputusan yang mengejutkan. Rangka Kerja .NET tidak maju secepat Core NET, ditimbang oleh kod warisan. Itu, digabungkan dengan fokus Microsoft yang semakin meningkat pada pembangunan lintas platform, memastikan bahawa langkah tegas dari Kerangka yang berusia hampir dua puluh tahun ke Core yang lebih baru tidak dapat dielakkan. Menjatuhkan Inti dari namanya juga logik. Dengan API yang ditambahkan sejak pelancaran dan sokongan untuk perpustakaan .NET Standard, .NET Core sebenarnya bukan inti pemotongan yang memfaktur lagi. Dengan .NET 5 menandakan berakhirnya pembangunan untuk .NET Framework, sudah tiba masanya untuk nama baru.

Walaupun begitu, ia tidak akan menjadi perubahan semalam. .NET Core 3 masih dihantar, dan kami tidak akan melihat .NET 5 sehingga musim gugur 2020. Tarikh kapal yang dirancang pada November 2020 memberi kami hampir 18 bulan untuk menyiapkan kod kami, dengan versi pratonton yang tersedia beberapa waktu di separuh pertama 2020.

Apa yang berlaku pada .NET Framework?

Satu perkara yang dijelaskan oleh Microsoft: .NET Core 3 akan menjadi pelepasan terakhir ke port .NET Framework API. Oleh itu, tidak ada API Kerangka tambahan di .NET 5, dan beberapa teknologi lama seperti Bentuk Web dan Yayasan Komunikasi Windows tidak akan menjadi sebahagian daripada platform baru. Sekiranya anda ingin beralih dari .NET Framework 4.8 maka anda perlu mencari teknologi alternatif, yang disokong. Pada masa ini Microsoft mengesyorkan Blazor untuk menggantikan Borang Web dan gRPC untuk menggantikan WCF. Mereka adalah alternatif yang masuk akal, memberi anda sokongan lintas platform yang tidak tersedia melalui teknologi lama, dan dengan Blazor menggunakan Perhimpunan Web atau menawarkan kawalan sisi pelayan di ASP.NET, mereka kini menyokong prestasi yang lebih baru dan lebih tinggi teknologi.

Nasihat Microsoft kepada pemaju adalah untuk mulai menggunakan .NET Core 3 untuk semua aplikasi baru, tetapi penting untuk diperhatikan bahawa ini bukan akhir aplikasi .NET Framework anda. Microsoft berkomitmen untuk menyokong jangka panjang .NET Framework, jadi jika anda mempunyai kod yang berjalan di .NET Framework 4.8, ia tidak perlu dikemas kini sehingga anda bersedia untuk melakukan peralihan. Bagaimanapun, pada masa ini alat perkakas inti penghantaran, termasuk Visual Studio, dibina menggunakan .NET Framework. Walaupun begitu, dengan keserasian kelas asas antara banyak .NET baru dan lama terima kasih kepada .NET Standard, penghijrahan tidak boleh menyakitkan dan akan memberi anda peluang untuk menjalankan kod itu di banyak tempat lagi.

Walau bagaimanapun, hanya memindahkan kod akan kehilangan peluang untuk membuat refactor dan mendesain semula aplikasi untuk cloud dan untuk perkhidmatan mikro. .NET 5 sedang dikembangkan untuk dunia IT pada masa kini, dengan cloud hybrid dan sistem diedarkan kontena yang tinggi dalam agendanya, dan bukannya dunia pelayan pelanggan yang melahirkan .NET yang asli pada akhir tahun 1990-an.

Waktu operasi lintas platform untuk dunia lintas platform

Dengan menyatukan .NET Core, .NET Standard, dan Xamarin dalam satu platform, Microsoft bertujuan untuk merebut landasan lintas platform. Kod anda (dengan beberapa kerja UI) akan dapat dijalankan pada Windows, Linux, iOS, Android dan banyak lagi, dengan sokongan untuk pelbagai kelas peranti. Menambah sokongan .NET Core 3 untuk desktop Windows, terdapat pelbagai aplikasi yang boleh dibina di dalam .NET 5, terutamanya jika anda memanfaatkan kawalan UWP di mana sahaja berkat sokongan dari alat .NET pihak ketiga dari Uno dan yang lain.

Oleh kerana pelaksanaan .NET melampaui. NET Core, masih akan ada tempat untuk perpustakaan .NET Standard. Perpustakaan biasa menjadikannya lebih mudah untuk menargetkan banyak versi .NET dari kod sumber yang sama, dan semua kod .NET 5 anda akan menggunakan. Mono atau Xamarin.

Mendapatkan kedudukan syarikat NET dengan betul

Salah satu aspek pengumuman .NET 5 adalah jadual pelepasan berkala untuk .NET. Meletakkan .NET pada irama tahunan, dengan pelepasan sokongan jangka panjang dua tahunan, akan melegakan tekanan tambahan kepada pemaju, menambahkan tahap ramalan yang sudah hilang. Mengetahui bahawa .NET 6 akan berjalan pada tahun 2021, diikuti oleh .NET 7 setahun kemudian, dan dengan sokongan selama empat tahun untuk pengeluaran sokongan jangka panjang akan menjadikannya lebih mudah untuk merancang ciri baru dan untuk kitaran hayat aplikasi. Ini akan membolehkan Microsoft dan Yayasan NET yang lain untuk menerbitkan peta jalan yang jelas mengenai apa yang diharapkan dan kapan boleh diharapkan.

Di luar ekosistem .NET, ada peluang lain di sini untuk Microsoft dan fokusnya pada langganan alat pembangun. Dengan syarat perlesenan Oracle yang berubah untuk Java, waktu operasi syarikat terbuka bebas royalti akan menjadi menarik bagi banyak pasukan pengembangan Java yang ada. Jangka masa 18 bulan untuk pelancaran .NET 5 dapat dilihat sebagai masa untuk melatih pembangun anda menggunakan bahasa dan alat baru dan merancang pelaksanaan semula aplikasi dalam perkhidmatan mikro .NET.

Menggabungkan semuanya, hasilnya adalah peta jalan .NET yang mesra syarikat dan pemaju. Microsoft dan Yayasan .NET berkomitmen untuk kemas kini berkala dan satu runtime lintas platform, sambil tetap memastikan aplikasi .NET Framework yang lama tidak ditinggalkan. Sokongan jangka panjang harus membantu pasukan pembangunan merancang kitaran hidup aplikasi, memilih apa yang hendak ditingkatkan dan kapan. Anda boleh memulakan dengan pratonton terkini .NET Core 3, siap untuk siaran 2020.