Fungsi Main
Titik masuk program
Setiap program C# wajib memiliki satu kelas yang berisi fungsi bernama Main. Pada contoh kode sebelumnya, fungsi ini didefinisikan di dalam kelas bernama Program.
Namun pada versi C# terbaru, kita tidak perlu menulis fungsi Main secara eksplisit. Kode yang langsung ditulis di bagian paling atas file secara otomatis menjadi isi badan fungsi Main.
- Eksekusi program C# dimulai dari baris kode pertama yang ada di dalam fungsi
Main. - Nama fungsi
Mainhuruf pertamanya M harus huruf kapital.
Cara penulisan paling sederhana fungsi Main:
static void Main( )
{
Pernyataan kode
}Code language: JavaScript (javascript)
Kita tidak boleh tidak memiliki fungsi Main, juga tidak boleh membuat lebih dari satu. Hanya boleh ada tepat satu fungsi Main saja.
Untuk keperluan demonstrasi, kita akan membuat proyek .NET Framework menggunakan VS2022 yang hanya bisa dijalankan di sistem Windows.

Pilih template aplikasi konsol yang ada di bawah ini.

Pada bagian versi framework, pilih versi terbaru yaitu .NET 4.8.1.
Isi bawaan file Program.cs setelah proyek dibuat adalah sebagai berikut:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace HelloDemo
{
internal class Program
{
static void Main(string[] args)
{
}
}
}
Code language: PHP (php)
Baris di bagian atas berfungsi untuk memuat beberapa namespace, sehingga kita bisa menggunakan kelas bawaan .NET yang tersedia di namespace tersebut.
Masukkan satu baris kode di dalam fungsi Main:
Console.WriteLine(“hello foxdevelop.com”);

Klik tombol segitiga hijau bernama Start yang ada di bagian atas Visual Studio untuk menjalankan program.

Saat program dijalankan, baris kode pertama di dalam Main akan dieksekusi terlebih dahulu secara bawaan.
Jika kita salin fungsi Main lalu tempel kembali, akan langsung muncul pesan error.

Penyebab error adalah satu namespace tidak boleh memiliki dua fungsi dengan nama yang sama. Mari kita buat dua namespace yang berbeda untuk mencobanya.

Sekarang tidak ada garis bergelombang merah dan kode terlihat normal, namun coba lakukan kompilasi proyek.
Klik Start

Akan muncul error kompilasi, detail kesalahan akan tampil di jendela Error List bagian bawah editor.

Jika jendela Error List tidak terlihat, kamu bisa menampilkannya melalui menu bar bagian atas.

Jendela daftar error akan memberitahu bagian mana kode yang bermasalah.

Karakter Spasi (Whitespace)
Karakter spasi adalah simbol yang tidak menghasilkan tampilan apapun di layar. Kompiler akan mengabaikan semua spasi di kode sumber; pengembang menggunakan spasi agar struktur kode rapi dan mudah dibaca.
Jenis spasi yang umum dipakai:
- Spasi biasa (Space)
- Tabulasi (Tab)
- Baris baru (New line)
- Carriage return
Contoh: Dua potongan kode di bawah tampilan visualnya sangat berbeda, tapi kompiler memperlakukannya sama persis.
// Versi terformat rapi
Main()
{
Console.WriteLine("Hi, there!");
}
// Versi padat tanpa spasi
Main(){Console.WriteLine("Hi, there!");}Code language: JavaScript (javascript)
Berikut contoh fungsi Main dengan format standar:
static void Main(string[] args)
{
Console.WriteLine("hello foxdevelop.com");
}Code language: JavaScript (javascript)
Jika kita hapus semua spasi dan jadikan satu baris penuh, program tetap bisa dikompilasi dengan normal, tidak ada perbedaan bagi kompiler.
static void Main(string[] args){Console.WriteLine("hello foxdevelop.com");}Code language: JavaScript (javascript)

Pernyataan (Statements)
Sintaks pernyataan C# mirip dengan C dan C++. Bagian ini menjelaskan aturan umum pernyataan, jenis pernyataan khusus akan dibahas nanti.
Pernyataan adalah satu baris perintah kode sumber, untuk mendefinisikan tipe data atau memerintahkan program menjalankan aksi tertentu.
Pernyataan sederhana wajib diakhiri titik koma ;. Berikut dua pernyataan berurutan: baris pertama deklarasi variabel bilangan bulat var1 bernilai 5, baris kedua cetak nilai variabel ke jendela konsol.
int var1 = 5;
System.Console.WriteLine("The value of var1 is {0},welcome to foxdevelop.com", var1);Code language: JavaScript (javascript)

Contoh Main di atas berisi dua pernyataan, contoh sebelumnya hanya satu. Baris pertama membuat variabel bilangan bulat var1 yang menampung angka 5, baris kedua mencetak teks ke konsol. Tanda {0} di teks adalah tempat penampung yang akan diganti dengan nilai var1.
Blok Kode (Blocks)
Blok kode dibentuk dari sepasang kurung kurawal yang membungkus nol atau lebih banyak pernyataan, secara sintaksis seluruh blok dianggap sebagai satu pernyataan tunggal.
Bungkus dua pernyataan dari contoh sebelumnya dengan kurung kurawal untuk membuat blok kode lengkap:
{
int var1 = 5;
System.Console.WriteLine("The value of var1 is {0},welcome to foxdevelop.com", var1);
}Code language: JavaScript (javascript)

Aturan utama blok kode:
- Jika sintaks hanya mengizinkan satu pernyataan tapi kita butuh banyak operasi, bungkus semua kode di dalam blok.
- Beberapa struktur sintaksis wajib menggunakan blok kode, tidak bisa diganti hanya satu pernyataan.
- Pernyataan sederhana perlu titik koma di akhir, tapi blok kode tidak diakhiri titik koma. Meskipun kompiler menerima tanda
;setelah kurung tutup}, ia akan dibaca sebagai pernyataan kosong dan merupakan gaya penulisan yang buruk.
Penjelasan gambar:
{
int var2 = 5; // Setiap pernyataan tunggal diakhiri titik koma
System.Console.WriteLine("The value of var1 is {0}", var1); // Setiap pernyataan tunggal diakhiri titik koma
} // Tidak pakai titik koma setelah kurung tutupCode language: JavaScript (javascript)

Semua pernyataan mandiri biasa harus diberi tanda ; di akhir.

Berikut contoh lengkap yang bisa kamu salin dan jalankan langsung:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace HelloDemo
{
internal class Program
{
static void Main(string[] args)
{
{
int var1 = 5;
System.Console.WriteLine("The value of var1 is {0},welcome to foxdevelop.com", var1);
}; ; ; ;
}
}
}
Code language: PHP (php)