Menguasai Namespace C#: Organisasi, Cakupan, dan Praktik Terbaik
Menguasai Namespace C#: Organisasi, Cakupan, dan Praktik Terbaik
Pelajari bagaimana namespace menjaga kode C# tetap rapi, mencegah bentrok nama, dan memungkinkan proyek yang dapat diskalakan.
Namespace adalah tulang punggung organisasi kode C#. Bayangkan mereka sebagai folder yang mengelompokkan kelas, antarmuka, struktur, dan delegasi terkait, membantu Anda menjaga basis kode besar tetap terkelola dan mengurangi bentrok nama.
Anggota tipikal dari sebuah namespace meliputi:
- Namespace bersarang
- Kelas
- Antarmuka
- Struktur
- Delegasi
Sementara namespace bersifat opsional, menggunakannya adalah praktik terbaik untuk kejelasan dan kemudahan pemeliharaan.
Bayangkan desktop penuh dengan file yang berserakan di satu folder—pencarian akan menjadi acak. Namespace mencerminkan struktur direktori itu dalam kode, mengelompokkan tipe terkait bersama-sama.
Mereka juga memecahkan bentrok nama: dua kelas bernama Logger dapat coexist dalam namespace yang terpisah tanpa bentrok.
Mendefinisikan Namespace
Deklarasikan namespace dengan kata kunci namespace:
namespace MyNamespace { // Isi namespace }
Contoh:
namespace MyNamespace { class MyClass { public void MyMethod() { System.Console.WriteLine("Membuat namespace saya"); } } }
Ini mendefinisikan MyNamespace yang berisi MyClass, yang metodenya mencetak pesan.
Mengakses Anggota Namespace
Gunakan operator titik untuk mereferensi anggota:
NamaNamespace.NamaAnggota
Contoh pembuatan instance:
MyNamespace.MyClass myClass = new MyNamespace.MyClass();
Dalam program berikut, kelas MyNamespace dipanggil dari MyProgram:
using System; namespace MyNamespace { public class SampleClass { public static void MyMethod() { Console.WriteLine("Membuat namespace saya"); } } } namespace MyProgram { public class MyClass { public static void Main() { MyNamespace.SampleClass.MyMethod(); } } }
Menjalankan ini menghasilkan:
Membuat namespace saya
Menggunakan Kata Kunci using
Alih-alih memenuhi syarat setiap tipe sepenuhnya, impor namespace di bagian atas:
using System;
Lalu Anda dapat menulis:
Console.WriteLine("Hello World!");
Alih-alih System.Console.WriteLine.
Namespace Bersarang
Namespace dapat berisi namespace lain, menciptakan hierarki:
namespace MyNamespace { namespace Nested { // Isi } }
Akses anggota bersarang dengan operator titik:
MyNamespace.Nested.NamaKelas
Contoh:
using System; namespace MyNamespace { namespace Nested { public class SampleClass { public static void MyMethod() { Console.WriteLine("Contoh Namespace Bersarang"); } } } } namespace MyProgram { public class MyClass { public static void Main() { MyNamespace.Nested.SampleClass.MyMethod(); } } }
Output:
Contoh Namespace Bersarang
Namespace bersarang membantu Anda menyusun solusi besar menjadi bagian logis, mencerminkan tata letak sistem file dalam kode.