Menggunakan .NET
ServBay menyediakan persekitaran pembangunan yang mudah dan cekap untuk pembangun .NET di macOS. Melalui sistem pengurusan pakej ServBay, anda boleh memasang, mengurus, dan menjalankan pelbagai versi SDK .NET dengan mudah, meliputi versi moden .NET (iaitu .NET Core dan selepasnya) serta rangka kerja klasik Mono untuk memenuhi keperluan pelbagai projek anda.
Pengenalan
Sejarah Platform .NET & Sokongan macOS
.NET ialah platform pembangunan serbaguna yang dibangunkan oleh Microsoft. Mengetahui evolusi sejarah dan versinya sangat penting untuk memahami tahap sokongan pada macOS:
.NET Framework (Versi Asal): Dikeluarkan pertama kali pada tahun 2002, .NET Framework merupakan platform pembangunan utama oleh Microsoft, tetapi direka khas untuk sistem operasi Windows. Ia mengandungi Common Language Runtime (CLR) dan perpustakaan kelas besar (FCL). Lazimnya, aplikasi .NET Framework tidak dapat dijalankan secara terus di macOS.
Mono (Perintis Merentas Platform): Untuk membolehkan aplikasi .NET berjalan di platform bukan Windows seperti Linux dan macOS, komuniti (diasaskan oleh Ximian, kemudian Novell dan disokong oleh Xamarin/Microsoft) telah membangunkan Mono. Mono ialah implementasi sumber terbuka .NET Framework yang merentas platform. Ia membolehkan pembangun mencipta dan menjalankan aplikasi asal .NET Framework (terutamanya C#) di macOS dan Linux. Untuk kes di mana anda perlu menjalankan kod atau pustaka lama .NET Framework pada macOS, Mono masih sangat relevan.
.NET Core / .NET 5+ (Piawai Merentas Platform Moden): Menyedari keperluan merentas platform, Microsoft membangunkan semula .NET menerusi .NET Core; ia adalah reka bentuk moden, berprestasi tinggi, sumber terbuka dan sepenuhnya merentas platform, menyokong Windows, macOS dan Linux. Selepas versi .NET Core 3.1, ia dinamakan semula sebagai .NET bermula versi 5 (mengelak kekeliruan dengan .NET Framework 4.x). Kini, apabila kita membincangkan SDK .NET, kita merujuk kepada versi moden merentas platform ini (.NET 5, 6, 7, 8, 9, 10 dan seterusnya). Inilah platform yang disyorkan Microsoft untuk semua pembangunan aplikasi baharu, termasuk di macOS.
Bagaimana ServBay Menyokong .NET
ServBay memahami sejarah serta keperluan pelbagai pembangun, lalu menawarkan:
- Pakej SDK .NET Moden: Menyediakan pelbagai versi .NET (Core) seperti SDK .NET 2.0 hingga 10.0 supaya anda boleh membangunkan aplikasi C#, F# dan ASP.NET Core merentas platform.
- Pakej Mono: Menawarkan runtime Mono (cth. Mono 6) untuk membolehkan anda menjalankan atau membangunkan projek lama berasaskan .NET Framework atau pustaka khusus di macOS, termasuk sokongan terhad untuk ASP.NET klasik (Web Forms, System.Web MVC).
- Pemasangan Paralel: Anda boleh memasang beberapa versi SDK .NET dan Mono serentak.
- Kawalan Versi Tahap Projek: Tentukan versi SDK .NET moden untuk setiap projek menggunakan fail
.servbay.config
. - Pengurusan Dipermudah: Lihat, pasang, dan nyahpasang pelbagai versi SDK dan Mono dengan intuitif melalui antaramuka grafik ServBay.
Mengakses Pakej .NET
- Buka aplikasi ServBay.
- Pada bar navigasi sebelah kiri, klik
Pakej (Packages)
. - Dalam halaman
Pakej
, tatal ke bawah atau pilihBahasa (Languages)
->.NET
daripada senarai pecahan di sebelah kiri. - Kawasan sebelah kanan akan memaparkan senarai semua pakej SDK .NET dan Mono yang tersedia.
Memasang SDK .NET
Senarai pakej akan menunjukkan dengan jelas status setiap versi SDK .NET:
- Nama Pakej: Nama pakej, contohnya
.NET SDK 8.0
atauMono 6
. - Versi: Nombor versi khusus bagi pakej tersebut.
- Status: Memaparkan
Installed
(Telah Dipasang) atauNot Installed
(Belum Dipasang). - Kawalan: Butang operasi akan disediakan.
Untuk memasang versi SDK .NET yang belum dipasang (cth. .NET SDK 10.0
):
- Cari versi sasaran dalam senarai.
- Pastikan statusnya ialah
Not Installed
. - Klik ikon Muat Turun/Pasang (Download/Install) di sebelah kanan baris tersebut (biasanya ikon anak panah ke bawah).
- ServBay akan mula memuat turun dan memasang versi SDK terpilih. Proses ini mungkin mengambil sedikit masa bergantung kepada kelajuan sambungan internet anda dan saiz SDK.
- Setelah berjaya dipasang, status versi tersebut berubah kepada
Installed
, dan ikon kawalan bertukar menjadi ikon Nyahpasang (Uninstall) (tong sampah).
Mengurus SDK yang Telah Dipasang
- Lihat Versi Terpasang: Status
Installed
dalam senarai dengan jelas mengenalpasti semua versi SDK .NET dan Mono yang sedia ada dalam persekitaran anda. - Nyahpasang SDK: Jika anda tidak lagi memerlukan sesuatu versi SDK, klik ikon Nyahpasang (Uninstall) (tong sampah) di sebelah versi berkenaan dan sahkan tindakan anda untuk mengeluarkannya daripada sistem.
Menggunakan SDK .NET yang Dipasang
ServBay secara automatik menambah alat baris perintah dotnet
ke dalam pembolehubah PATH sistem (apabila persekitaran ServBay aktif) selepas memasang SDK .NET. Dengan ini, anda boleh terus menggunakan perintah dotnet
di Terminal macOS anda.
Contoh Perintah Biasa:
Periksa Versi SDK yang Tersedia: Buka terminal dan jalankan:
bashdotnet --list-sdks
1Ini akan memaparkan semua versi SDK .NET yang dipasang dan laluan pemasangannya yang diuruskan oleh ServBay.
Periksa Versi SDK Aktif (biasanya versi terbaru yang dipasang atau dikonfigurasi secara global):
bashdotnet --version
1Cipta Aplikasi Konsol Baharu (menggunakan SDK lalai):
bash# Cipta direktori projek bernama MyConsoleApp mkdir MyConsoleApp cd MyConsoleApp # Cipta projek konsol baharu menggunakan SDK lalai dotnet new console
1
2
3
4
5
6Jalankan Aplikasi:
bashdotnet run
1Gunakan Versi SDK Tertentu (jika perlu): Jika projek anda memerlukan versi SDK tertentu, anda boleh nyatakan dengan fail
global.json
. Di direktori akar projek, cipta failglobal.json
dengan kandungan seperti berikut:json{ "sdk": { "version": "8.0.408" // Nyatakan versi SDK yang telah dipasang dan diperlukan oleh projek } }
1
2
3
4
5Apabila anda menjalankan perintah
dotnet
dalam direktori projek ini, ia akan mengutamakan versi SDK yang dinyatakan dalamglobal.json
.
Sokongan Mono
Selain SDK .NET piawai, ServBay turut menyediakan pilihan pemasangan Mono. Mono merupakan implementasi berasaskan sumber terbuka dan merentas platform bagi .NET Framework. Jika perlu menjalankan atau membangunkan aplikasi yang bergantung pada ciri tertentu .NET Framework, anda boleh memasang dan menggunakan Mono menerusi ServBay. Proses pemasangan serta nyahpasang Mono adalah sama seperti SDK .NET.
Mono digunakan terutamanya untuk menjalankan program yang dikompilasi untuk .NET Framework (.exe) atau peralatan tertentu yang memerlukan persekitaran Mono, termasuk menjalankan aplikasi ASP.NET lama.
Periksa Versi Mono:
bashmono --version
1Jalankan Fail Boleh Laksana .NET Framework: Sebagai contoh anda mempunyai
LegacyApp.exe
yang dikompilasi untuk .NET Framework:bashmono LegacyApp.exe
1Jalankan Aplikasi ASP.NET Lama (sokongan terhad): Mono mengandungi pelayan web ringkas bernama
xsp
yang digunakan untuk menjalankan aplikasi Web Forms ASP.NET lama atau System.Web MVC dalam persekitaran pembangunan. Anda juga boleh mengintegrasikan melaluiNginx
+FastCGI
atauApache
+mod_mono
.Nota Penting:
- Kaedah ini mempunyai keserasian terhad untuk ASP.NET Framework; tidak semua aplikasi dapat berjalan sempurna, terutamanya jika aplikasi bergantung pada ciri khusus Windows.
- Prestasi biasanya lebih rendah berbanding di Windows/IIS.
- Tidak disarankan untuk pembangunan projek baharu. Pembangunan web moden harus menggunakan ASP.NET Core.
- ServBay menyediakan panduan lengkap: Cara menjalankan Laman Web ASP.NET Framework 4.x di macOS.
Jika anda perlu menjalankan aplikasi sebegini (cth. untuk ujian atau penyelenggaraan), anda mungkin akan menggunakan arahan seperti berikut (bergantung pada aplikasi dan konfigurasinya):
bash# Contoh: Mulakan pelayan xsp di direktori tertentu # cd /Applications/ServBay/www/your_legacy_aspnet_app # xsp4 --port 8080 # (xsp4 untuk .NET 4.x)
1
2
3
Integrasi Pelayan Web (ASP.NET Core)
Dengan SDK .NET yang dipasang menerusi ServBay, anda dapat membangunkan aplikasi web ASP.NET Core. Semasa melakukan penerapan/deployment, anda boleh menggunakan pelayan web terbina dalam ServBay seperti Nginx, Caddy atau Apache:
- Gunakan arahan
dotnet publish
untuk membina dan menerbitkan aplikasi ASP.NET Core anda. - Tambah Situs Web (Website) baharu dalam ServBay.
- Konfigurasikan laman web tersebut sebagai proksi terbalik (reverse proxy) untuk menghala permintaan ke port pelayan Kestrel milik aplikasi ASP.NET Core anda (cth.
http://localhost:5000
). Cara konfigurasi proksi terbalik ini bergantung kepada pelayan web yang anda pilih (Nginx, Caddy, atau Apache).
Sila rujuk dokumentasi rasmi ServBay untuk maklumat lanjut mengenai penambahan laman web dan konfigurasi proksi terbalik.
Rumusan
ServBay telah memudahkan pemasangan dan pengurusan persekitaran pembangunan .NET di macOS secara signifikan. Dengan antaramukanya yang intuitif, pembangun boleh mudah memasang, bertukar, dan menghapus pelbagai versi SDK .NET serta Mono, membolehkan anda memberikan tumpuan sepenuhnya untuk membangunkan dan menguji aplikasi C#, F#, dan ASP.NET Core.