Dasar pemrograman C#
C#(C Sharp) merupakan bahasa pemrograman yang di buat oleh Microsoft untuk mendukung platform .Net. C# di perkenalkan Microsoft pertama kali pada tahun 2001 berbarengan dengan platformnya .Net. Bahasa C# hampir sama dengan Javascript, Java, dan pendahulunya C/C++. C# juga merupakan bahasa yang berorientasi objek.
Struktur C#
Mari kita lihat struktur dari C#:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;namespace StrukturCsharp
{
class Program
{
static void Main(string[] args)
{
}
}
}
usingmerupakan sebuah statement untuk memanggil bagian dari framework .Net mana yang nantinya akan dipakai untuk program kita.namespaceberguna untuk mengorganisir code kita dengan memberkan nama agar supaya tertata dengan baik dan akan mempermudah nantinya.Classmerupakan statement untuk mengelopokan code berdasarkan nama kelas.- Di dalam kelas terdapat fungsi/metode utama dengan nama
main. Fungsi ini akan di panggil otomatis saat program di eksekusi.
Alur Program
1. Conditional
if ( condition ) {
// code yang akan di eksekusi
// ketika sebuah kondisi terpenuhi
}
else if ( condition2 ) {
// code yang akan di eksekusi
// ketika sebuah kondisi terpenuhi
}
else {
// code akan di eksekusi
// jika ke dua kondisi di atas tidak terpenuhi
}2. Switch
switch ( value ) {
case value1:
// code akan di eksekusi jika value
// dalam switch sama dengan value1
break;
case valueN:
// code akan di eksekusi jika value
// dalam switch sama dengan valueN
break;
default:
// code akan di eksekusi jika tidak ada
// value dalam case yang sama
break;
}Berbeda dengan bahasa pemrograman lainnya, dalam bahasa C# setiap casedan default harus mempunyai statement break; .
3. Operator dan Expression
- Arithmetic operators
Operator aritmatika yang terdapat di bahasa C# adalah:
+ ► Penambahan (addition)
- ► Pengurangan (subtraction)
/ ► Pembagian (division)
* ► Perkalian (multiplication)
% ► Modulus- Assignment operator
// example
int result = x + ysimbol = digunakan untuk penetapan variable. Semua variable yang ada di sebelah kanan simbol akan di olah lalu di tempatkan di variable sebelah kanan.
- Comparison operators
// Equality check
a == b // apakah a sama dengan b?
a != b // apakah a tidak sama dengan b?// Test Perbandingan
a > b // apakah a lebih dari b?
a < b // apakah a kurang dari b?
a >= b // apakah a lebih atau sama dengan b?
a <= b // apakah a kurang atau sama dengan b?
- Logical operators
// AND (&&)
if ( a == b && c == d ) {...// OR (||)
if ( a == b || c == d ) {...// NOT (!)
if (!someBooleanValue ) {...
- Increment/Decrement operators
// Increment operators (penambahan)
a = a + 1;
a += 1;
a++; //postfix
++a; //prefix// Decrement operators (pengurangan)
// Increment operators (penambahan)
a = a -1;
a -= 1;
a--; //postfix
--a; //prefix// example
int a = 10;
Console.WriteLine("Nilai dari a adalah: {0}", ++a) // output 11
Console.WriteLine("Nilai dari a adalah: {0}", a++) // output 10
- Type Testing operators
void myFunction (object obj) {
if (obj is Employee) {
Employee emp = obj as Employee; // null jika tidak bisa
string name = emp.FirstName;
...
}
}Operatoris akan menghasilkan true jika sebuah object objsama dengan object Employee .
Operator as akan mengkonvert object obj menjadi object Employee (jika memungkinkan)
- The Ternary operator
Ternary operator adalah versi compact dari if — else statement. Simbol operator ternary adalah ? dan :.
// example
(condition) ? true : false- Operator Precedence:
Operator Precendence adalah operator yang di dahulukan.
- Multiplicative
* / % - Additive
+ - - Comparison dan Type Testing
< > <= >= is as - Equality
== != - Conditional AND
&& - Conitional OR
|| - Ternary
?: - Assignment
= *= /= %= += -=
4. Constant dan Enumeration
const (Constant) adalah variable yang nilainya tidak akan berubah selama program berjalan.
const int FREEZING = 32;
if (someVar == FREEZING) {
// code here
}enum(Enumeration) adalah kumpulan variable yang memiliki nilai konstant. Enumeration bisa menjadi alternatif dari konstant. Jika variable enumeration tidak di beri nilai, maka C# akan memberikan nilai default yaitu 0.
enum Temperatures : int {
COLD,
FREEZING = -32,
LUKEWARM = 65,
ROOMTEMP = 72,
HOT = 105,
BOILING = 212
}static void Main ( string[] args )
{
int myTemp = 30;
if (myTemp > Temperatures.FREEZING){
//some code
}
}
5. Loop
while-loop berfungsi untuk mengulang sejumlah baris kode jika kondisi yang di tetapkan terus terpenuhi. do-while-loop adalah akan mengeksekusi kodenya sekali selanjutnya melakukan pengecekan jika kondisi tersebut masih terpenuhi.
// While
while ( condition is met ) {
// Code here
}// Do while
do {
// code akan di eksekusi sekali
// selanjutnya tergantung kondisi
} while (condition is met)
for-loop berfungsi untuk mengulang sejumlah baris kode berdasarkan nilai yang di tentukan. sedangkan foreach digunakan untuk array atau enumeration.
for (setup; test; increment) {
// code here
}foreach ( element in a set ) {
// code here
}
7. Function
Fungsi digunakan untuk membagi kode-kode berdasarkan fungsi — fungsinya agar lebih mudah.
void myFunction ( int x; byte y) {
// code here
}