Merancang Aplikasi Web Modern dengan ASP.NET Core dan Azure

Book cover image of the Architect Modern Web Applications guide.

EDISI v6.0 - Diperbarui ke ASP.NET Core 6.0

Lihat log perubahan untuk menemukan pembaruan buku dan kontribusi komunitas.

DITERBITKAN OLEH

Tim produk Divisi Pengembang Microsoft, .NET, dan Visual Studio

Divisi Microsoft Corporation

One Microsoft Way

Redmond, Washington 98052-6399

Hak Cipta © 2022 oleh Microsoft Corporation

Hak cipta dilindungi undang-undang. Tidak ada bagian dari isi buku ini yang boleh direproduksi atau ditransmisikan dalam bentuk apa pun atau dengan cara apa pun tanpa izin tertulis dari penerbit.

Buku ini disediakan "apa adanya" dan mengekspresikan pandangan serta pendapat penulis. Pandangan, opini, dan informasi yang diungkapkan dalam buku ini, termasuk URL dan referensi situs web Internet lainnya, dapat berubah tanpa pemberitahuan sebelumnya.

Beberapa contoh yang digambarkan di sini hanya untuk ilustrasi saja dan sifatnya fiktif. Tidak ada asosiasi atau hubungan nyata yang disengaja atau harus disimpulkan.

Microsoft dan merek dagang yang tercantum https://www.microsoft.com di halaman web "Merek Dagang" adalah merek dagang dari grup perusahaan Microsoft.

Mac dan macOS adalah merek dagang Apple Inc.

Logo paus Docker adalah merek dagang terdaftar dari Docker, Inc. Digunakan dengan izin.

Seluruh tanda dan logo lainnya adalah milik dari masing-masing pemiliknya.

Penulis:

Steve "ardalis" Smith - Arsitek Perangkat Lunak dan Pelatih - Ardalis.com

Editor:

Maira Wenzel

  • E-book ini tersedia juga dalam format PDF (hanya versi bahasa Inggris) Unduh

  • Klon/Fork aplikasi referensi eShopOnWeb di GitHub

Pengantar

.NET 6 dan ASP.NET Core menawarkan beberapa keunggulan dibandingkan dengan pengembangan .NET tradisional. Anda harus menggunakan .NET 6 untuk aplikasi server Anda jika beberapa atau semua hal-hal berikut ini penting untuk keberhasilan aplikasi Anda:

  • Dukungan lintas platform.

  • Penggunaan layanan mikro.

  • Penggunaan kontainer Docker.

  • Persyaratan performa dan skalabilitas tinggi.

  • Penerapan versi .NET secara berdampingan berdasarkan aplikasi pada server yang sama.

Aplikasi .NET 4.x tradisional mampu dan mendukung banyak persyaratan ini, tetapi ASP.NET Core dan .NET 6 telah dioptimalkan untuk menawarkan dukungan yang ditingkatkan untuk skenario di atas.

Semakin banyak organisasi memilih untuk meng-hosting aplikasi web mereka di cloud menggunakan layanan seperti Microsoft Azure. Anda harus mempertimbangkan untuk meng-hosting aplikasi Anda di cloud jika hal berikut ini penting untuk aplikasi atau organisasi Anda:

  • Mengurangi investasi di biaya pusat data (perangkat keras, perangkat lunak, ruang, utilitas, manajemen server, dll.)

  • Harga fleksibel (bayar berdasarkan penggunaan, bukan berdasarkan kapasitas idle).

  • Keandalan ekstrem.

  • Mobilitas aplikasi yang ditingkatkan; ubah dengan mudah dari tempat aplikasi Anda disebarkan.

  • Kapasitas yang fleksibel; meningkatkan atau menurunkan skala berdasarkan kebutuhan aktual.

Membangun aplikasi web dengan ASP.NET Core, yang dihosting di Azure, menawarkan banyak keunggulan kompetitif dibandingkan dengan alternatif tradisional. ASP.NET Core dioptimalkan untuk praktik pengembangan aplikasi web modern serta skenario hosting cloud. Dalam panduan ini, Anda akan mempelajari cara merancang aplikasi ASP.NET Core anda guna memanfaatkan kemampuan ini dengan sebisa mungkin.

Versi

Panduan ini telah direvisi untuk mencakup versi .NET 6.0 bersama dengan banyak pembaruan tambahan yang terkait dengan "gelombang" teknologi yang sama (yaitu, Azure dan teknologi pihak ketiga tambahan) yang bertepatan waktu dengan perilisan .NET 6.0. Itu alasannya versi bukunya juga telah diperbarui ke versi 6.0.

Tujuan

Panduan ini menyediakan panduan menyeluruh mengenai membangun aplikasi web monolitik menggunakan ASP.NET Core dan Azure. Pada konteks ini, "monolitik" mengacu pada fakta bahwa aplikasi ini disebarkan sebagai satu unit, bukan sebagai kumpulan layanan dan aplikasi yang berinteraksi. Dalam beberapa konteks, istilah monolit bisa bersifat peyorasi, tetapi dalam sebagian besar situasi, satu aplikasi jauh lebih mudah untuk membangun, menyebarkan, dan men-debug daripada aplikasi yang terdiri dari banyak layanan yang berbeda, sambil tetap mencapai persyaratan bisnis.

Panduan ini melengkapi ".NET Microservices. Arsitektur untuk Containerized .NET Applications", yang lebih berfokus di Docker, layanan mikro, dan penyebaran kontainer untuk menghosting aplikasi perusahaan.

Layanan Mikro .NET. Arsitektur untuk aplikasi .NET dalam Kontainer

Siapa yang harus menggunakan panduan ini

Pengguna panduan ini sebagian besar adalah pengembang, prospek pengembangan, dan arsitek yang tertarik untuk membangun aplikasi web modern menggunakan teknologi dan layanan Microsoft di cloud.

Pengguna sekundernya adalah pembuat keputusan teknis yang sudah akrab ASP.NET atau Azure dan mencari informasi tentang apakah masuk akal untuk meningkatkan ke ASP.NET Core untuk proyek baru atau yang sudah ada.

Cara menggunakan panduan ini

Panduan ini telah diringkas menjadi dokumen yang relatif kecil yang berfokus pada pembuatan aplikasi web dengan teknologi .NET modern dan Azure. Dengan demikian, panduan ini dapat dibaca secara keseluruhan untuk memberikan dasar pemahaman aplikasi tersebut dan pertimbangan teknisnya. Panduan ini, bersama dengan aplikasi sampelnya, juga bisa berfungsi sebagai titik awal atau referensi. Gunakan aplikasi sampel terkait sebagai templat untuk aplikasi Anda sendiri, atau untuk melihat bagaimana Anda bisa mengatur bagian komponen aplikasi Anda. Lihat kembali prinsip-prinsip panduan dan cakupan opsi arsitektur dan teknologi serta pertimbangan keputusan ketika Anda menimbang pilihan ini untuk aplikasi Anda sendiri.

Jangan ragu untuk meneruskan panduan ini ke tim Anda untuk membantu memastikan pemahaman umum soal pertimbangan dan peluang ini. Memiliki semua orang yang bekerja dari seperangkat terminologi dan prinsip yang mendasari membantu memastikan penerapan pola dan praktik arsitektur yang konsisten.

Referensi