Bahasa pemrograman C# (dibaca C Sharp), yang dikembangkan oleh Microsoft, adalah salah satu fondasi utama dalam pengembangan perangkat lunak modern. Kekuatan utamanya terletak pada platform .NET, yang memungkinkan developer membangun berbagai jenis aplikasi, mulai dari aplikasi desktop Windows, layanan web berbasis cloud, hingga game menggunakan Unity. Memahami contoh aplikasi C# adalah kunci untuk menguasai sintaksis dan paradigma pemrograman berorientasi objek (OOP) yang kuat.
Aplikasi konsol adalah titik awal terbaik. Meskipun sederhana, ini menunjukkan bagaimana struktur dasar program C# bekerja, termasuk inisialisasi kelas dan metode Main, yang merupakan pintu masuk eksekusi program. Berikut adalah contoh dasar yang meminta nama pengguna:
using System;
namespace AplikasiDasar
{
class Program
{
static void Main(string[] args)
{
// 1. Output ke Konsol
Console.WriteLine("Selamat Datang di Contoh Aplikasi C#!");
// 2. Input dari Pengguna
Console.Write("Masukkan nama Anda: ");
string nama = Console.ReadLine();
// 3. Pemrosesan dan Output Lanjutan
if (!string.IsNullOrEmpty(nama))
{
Console.WriteLine($"Halo, {nama}. Mari kita mulai belajar C#.");
}
else
{
Console.WriteLine("Nama tidak boleh kosong!");
}
}
}
}
Dalam contoh ini, kita menggunakan namespace System, berinteraksi melalui Console.WriteLine, dan menangani input string menggunakan Console.ReadLine(). Ini adalah dasar interaksi I/O (Input/Output).
Kekuatan C# sangat terasa ketika Anda mengimplementasikan konsep OOP. Mari kita buat kelas sederhana untuk merepresentasikan sebuah 'Produk' dan kemudian membuat objek dari kelas tersebut. Ini menunjukkan enkapsulasi dan konstruktor.
public class Produk
{
// Properti (Fields)
public string NamaProduk { get; set; }
public decimal Harga { get; private set; }
public int Stok { get; set; }
// Konstruktor
public Produk(string nama, decimal hargaAwal, int stokAwal)
{
NamaProduk = nama;
Harga = hargaAwal;
Stok = stokAwal;
}
// Metode
public void TampilkanDetail()
{
Console.WriteLine($"--- Detail Produk ---");
Console.WriteLine($"Nama: {NamaProduk}");
Console.WriteLine($"Harga: {Harga:C}"); // Format mata uang
Console.WriteLine($"Stok Tersedia: {Stok}");
}
}
// Implementasi di Main:
// Produk laptop = new Produk("Laptop Gaming X1", 15000000m, 10);
// laptop.TampilkanDetail();
Penggunaan kata kunci public dan private mengatur aksesibilitas, sementara get; set; pada properti menyediakan kontrol yang lebih baik dibandingkan field publik langsung. Penggunaan akhiran m pada harga (15000000m) menandakan tipe data decimal, yang krusial untuk perhitungan finansial yang akurat.
Aplikasi nyata hampir selalu melibatkan koleksi data. Di C#, List<T> adalah struktur data yang sangat umum digunakan. Berikut adalah contoh bagaimana kita bisa menyimpan beberapa objek Produk dan mengolahnya menggunakan perulangan foreach.
using System.Collections.Generic;
// ... Asumsi kelas Produk sudah didefinisikan di atas ...
public static void KelolaInventaris()
{
List<Produk> inventaris = new List<Produk>
{
new Produk("Mouse Wireless", 250000m, 50),
new Produk("Keyboard Mekanik", 750000m, 30)
};
Console.WriteLine("\n== Inventaris Saat Ini ==");
foreach (var item in inventaris)
{
item.TampilkanDetail();
Console.WriteLine("-------------------------");
}
// Contoh: Menambahkan item baru
inventaris.Add(new Produk("Monitor 27 Inch", 3200000m, 15));
}
Struktur ini sangat fleksibel. Dengan menambahkan using System.Collections.Generic;, kita membuka akses ke struktur data dinamis seperti List. Iterasi menggunakan foreach membuat kode pembacaan koleksi menjadi sangat bersih dan aman dari kesalahan indeks, menjadikannya pilihan utama dalam banyak contoh aplikasi C# modern.
Contoh aplikasi C# mulai dari konsol sederhana hingga implementasi OOP dengan koleksi data menunjukkan fondasi yang kuat dalam ekosistem .NET. C# mendorong praktik pemrograman yang terstruktur, aman, dan mudah dipelihara. Bagi pemula, menguasai interaksi konsol dan konsep kelas adalah langkah awal yang krusial sebelum beralih ke pengembangan GUI (seperti WPF/WinForms) atau aplikasi web (ASP.NET Core).