Anda di halaman 1dari 23

INSTITUT SAINS DAN TEKNOLOGI AL-KAMAL

[KONSEP

BAHASA PEMROGRAMAN

C#]

BAB I
PENDAHULUAN
1.1 Pengenalan Framework .NET
Framework .NET adalah suatu komponen windows yang terintegrasi yang dibuat
dengan tujuan untuk mensupport pengembangan berbagai macam jenis aplikasi serta untuk dapat
mejalankan berbagai macam aplikasi generasi mendatang termasuk pengembangan aplikasi Web
Services XML.
Framework .NET di design untuk dapat memenuhi beberapa tujuan berikut ini :
 Untuk menyediakan environment kerja yang konsisten bagi bahasa pemrograman yang
berorientasi objek (object-oriented programming - OOP) baik kode objek itu di simpan dan di
eksekusi secara lokal, atau dieksekusi secara lokal tapi didistribusikan melalui internet atau di
eksekusi secara remote.
 Untuk menyediakan environment kerja di dalam mengeksekusi kode yang dapat
meminimaliasi proses software deployment dan menghindari konflik penggunaan versi
software yang di buat.
 Untuk menyediakan environment kerja yang aman dalam hal pengeksekusian kode, termasuk
kode yang dibuat oleh pihak ketiga (third party).
 Untuk menyediakan environment kerja yang dapat mengurangi masalah pada persoalan
performa dari kode atau dari lingkungan interpreter nya.
 Membuat para developer lebih mudah mengembangkan berbagai macam jenis aplikasi yang
lebih bervariasi, seperti aplikasi berbasis windows dan aplikasi berbasis web.
 Membangun semua komunikasi yang ada di dalam standar industri untuk
 memastikan bahwa semua kode aplikasi yang berbasis Framework .NET dapat
 Berintegrasi dengan berbagai macam kode aplikasi lain.
1.2 Arsitektur Framework .NET
Ada dua komponen utama dalam Framework .NET yaitu Common Language
Runtime (CLR) dan .NET Framework Class Library.
Common Language Runtime (CLR) adalah pondasi utama dari Framework .NET. CLR
merupakan komponen yang bertanggung jawab terhadap berbagai macam hal, seperti
TEGUH DWIYANTO – 201122035 – TEKNIK INFORMATIKA - ISTA

1

INSTITUT SAINS DAN TEKNOLOGI AL-KAMAL

[KONSEP

BAHASA PEMROGRAMAN

C#]

bertanggung jawab untuk melakukan managemen memory, melakukan eksekusi kode,
melakukan verifikasi terhadap keamanan kode, menentukan hak akses dari kode,
melakukan kompilasi kode, dan berbagai layanan system lainnya. Dengan adanya
fungsi CLR ini, maka aplikasi berbasis .NET biasa juga disebut dengan managed code,
sedangkan aplikasi di luar itu biasa disebut dengan un-managed code.
CLR akan melakukan kompilasi kode-kode aplikasi kita menjadi bahasa assembly MSIL
(Microsoft Intermediate Language). Proses kompilasi ini sendiri dilakukan oleh komponen yang
bernama Just In Time (JIT). JIT hanya akan mengkompilasi metode metode yang memang
digunakan dalam aplikasi, dan hasil kompilasi ini sendiri di chace di dalam mesin dan akan
dikompile kembali jika memang ada perubahan pada kode aplikasi kita.
.NET Framework Class Library atau sering juga disebut Base Case Library (BCL)
adalah koleksi dari reusable types yang sangat terintegrasi secara melekat dengan CLR.
Class library bersifat berorientasi terhadap objek yang akan menyediakan types dari
fungsi-fungsi managed code. Hal ini tidak hanya berpengaruh kepada kemudahan
dalam hal penggunaan, tetapi juga dapat mengurangi waktu yang diperlukan pada saat
eksekusi. Dengan sifat tersebut, maka komponen pihak ketiga akan dengan mudah
diaplikasikan ke dalam aplikasi yang dibuat. Dengan adanya BCL ini, maka kita bisa
menggunakan Framework .NET untuk membuat berbagai macam aplikasi, seperti :

Aplikasi console

Aplikasi berbasis windowd (Windows Form)

Aplikasi ASP.NET (berbasis web)

Aplikasi Web Services XML

Aplikasi berbasis Windows Services

Jika kita membuat sekumpulan Class untuk membuat aplikasi berbasis windows, maka
Class-Class itu bisa kita gunakan untuk jenis aplikasi lain, seperti aplikasi berbasis web
(ASP.NET).

TEGUH DWIYANTO – 201122035 – TEKNIK INFORMATIKA - ISTA

2

10% C++.1 Feature dalam C# Sebagai bahasa pemrograman baru C# banyak mengadopsi feature dari beberapa bahasa perogrmaan terkenal dan banyak komunitasnya tetapi yang paling dominan adalah Java adapun komposisinya adalah sebagai berikut 70% Java. 5% Visual Basic.ISTA 3 . Bahasa C# juga telah di standarisasi secara internasional oleh ECMA.INSTITUT SAINS DAN TEKNOLOGI AL-KAMAL [KONSEP BAHASA PEMROGRAMAN C#] BAB II PENGENALAN BAHASA C# (DIBACA ““SEE-SHARP”) C# adalah bahasa pemrograman baru yang diciptakan oleh Microsoft yang dikembangkan dibawah kepemimpinan Anders Hejlsberg yang telah menciptakan berbagai macam bahasa pemrograman termasuk Borland Turbo C++ dan orland Delphi. Feature yang sama dengan C++ • (Operator) Overloading • Pointer arithmetic in unsafe code • Some syntactic details Adapun Feature barunya jika dikomper dengan Java adalah sebagai berikut : • Reference and output parameters • Objects on the stack (structs) • Rectangular arrays TEGUH DWIYANTO – 201122035 – TEKNIK INFORMATIKA . C# bisa digunakan untuk membangun berbagai macam jenis aplikasi. 15% baru. Seperti halnya bahasa pemrograman yang lain. seperti aplikasi berbasis windows (desktop) dan aplikasi berbasis web serta aplikasi berbasis web services. 2.. Feature yang sama dengan JAVA • Object-orientation (single inheritance) • Interfaces • Exceptions • Threads • Namespaces (like Packages) • Strong typing • Garbage Collection • Reflection • Dynamic loading Code • ….

ISTA 4 .INSTITUT SAINS DAN TEKNOLOGI AL-KAMAL [KONSEP BAHASA PEMROGRAMAN C#] • Enumerations • Unified type system • goto • Versioning • Component-based programming . Berikut daftar keywords yang ada dalam bahasa C#: abstract class as base const continue enum event explicit goto if lock long namespace bool case catch char checked decimal default delegate do double else extern false finally fixed float for foreach in int internal null object operator out private protected implicit override break byte new params interface is public readonly ref return sbyte sealed short sizeof stackalloc static struct switch this throw true using virtual void try typeof uint string ulong unchecked unsafe ushort while TEGUH DWIYANTO – 201122035 – TEKNIK INFORMATIKA .2 Key word C# C# adalah bahasa pemrograman yang menggunakan jumlah kata-kata yang tidak terlalu banyak.Events • Delegates • Indexers • Operator overloading • foreach statements • Boxing/unboxing • Attributes 2. C# hanya berisi kata-kata yang biasa disebut dengan keywords.Properties . Keywords ini digunakan untuk menjelaskan berbagai macam informasi.

3.  Penamaan fungsi tidak boleh mengandung spasi. angka atau garis bawah.  Nama suatu fungsi pada C# harus diawali dengan huruf. atau garis bawah “_” yang kemudian bisa diikuti oleh huruf.  Penulisan komentar ( tulisan yang tidak di eksekusi) dapat dibuat sebagai berikut  Komentar satu baris dengan menggunakan tanda “//”  Komenter yang lebih dari satu baris dengan di awali tanda “/*” dan diakhiri oleh “*/”  Contoh program yang paling sederhana untuk file Hallo. Kode program diawali dengan mendeklarasikan nama Class atau namespace 2.cs TEGUH DWIYANTO – 201122035 – TEKNIK INFORMATIKA .  Pada bagian akhir nama fungsi digunakan tanda kurung buka dan kurung tutup “()”. Aplikasi C# dibangun oleh satu atau beberapa fungsi yang diletakan di dalam sebuah Class dengan ketentuan sebagai berikut .INSTITUT SAINS DAN TEKNOLOGI AL-KAMAL [KONSEP BAHASA PEMROGRAMAN C#] 2.ISTA 5 .4 Penulisan Kode C# Langkah-langkah penulisan kode C# 1.3 Struktur File C# 2. Awal dan akhir suatu fungsi di mulai dengan tanda “{“ dan diakhiri dengan tanda “}”. Aplikasi dibuka dengan tanda “{“ dan pada akhir kode ditutup dengan tanda “}”.

Console. Escape Sequences Escape Sequences adalah karakter-karakter khusus yang tidak akan itampilkan. TEGUH DWIYANTO – 201122035 – TEKNIK INFORMATIKA . Cara penulisannya diawali dengan tanda \ diikuti dengan karakter khusus (dalam contoh ini adalah “n”) sehingga penulisannya menjadi \n.INSTITUT SAINS DAN TEKNOLOGI AL-KAMAL [KONSEP BAHASA PEMROGRAMAN C#] class HelloWorld { // Bagian utama program C#  ini adalah contoh komentar 1 baris public static void Main() { System. ada karakter yang digunakan sebagai tanda akhir dari suatu baris yang memerintahkan program untuk melanjutkan ke baris berikutnya. } /* ini cantoh komentar lebih dari satu baris */ } 5. Contohnya.ISTA 6 .WriteLine("Hello. World").

2 Value Types versus Reference Types TEGUH DWIYANTO – 201122035 – TEKNIK INFORMATIKA .1.1. Berikut ini penjelasan tipe data dalam C#.INSTITUT SAINS DAN TEKNOLOGI AL-KAMAL [KONSEP BAHASA PEMROGRAMAN C#] BAB III TIPE DATA DAN VARIABLE 3.1 Tipe Data (Data Type) Dalam membuat suatu aplikasi akan dijumpai berbagai jenis tipe data.ISTA 7 . Setiap tipe data memiliki fungsi yang berbeda-beda antara satu tipe data dengan yang lainnya. 3.1 Unified Type System 3.

Single float ±1.1.7E308 (64 Bit) decimal System. 3.3 Simple Types Long Form in Java Range sbyte System.. angka dan under score (_)  Nama harus diawali dengan huruf. 32767 --- 0 .Double double ±5E-324 . 263-1 Variabel Variabel dapat didefinisikan sebagai tempat untuk menyimpan data yang memiliki suatu Tipe data. TEGUH DWIYANTO – 201122035 – TEKNIK INFORMATIKA . Dengan nggunakan nama variabel ini kita akan dapat mengaskes data yang tersimpan di memori tersebut.UInt32 long System. 4294967295 -263 . kecuali kalau keyword ini diawali dengan karakter @.. ±7.. Under score juga dapat digunakan untuk mengawali nama suatu variabel tetapi ini tidak disarankan..9E28 (128 Bit) bool System. 127 --- 0 .Int32 int uint System..5E-45 .2.Char char Unicode character 3. 264-1 float System.Int64 long ulong System.ISTA 8 . false char System.Boolean boolean true.. variabel dengan nama umur tidak sama dengan Umur. ±1.1 Penamaan Variabel Aturan dalam pembuatan variable adalah sebagai berikut :  Terdiri dari huruf.INSTITUT SAINS DAN TEKNOLOGI AL-KAMAL [KONSEP BAHASA PEMROGRAMAN C#] 3.2 -128 .  C# adalah bahasa yang case sensitif. ±3..UInt16 int System. 255 -32768 .Int16 short ushort System...4E38 (32 Bit) double System.  Keyword tidak bisa digunakan sebagai nama variabel..Decimal --- ±1E-28 .UInt64 --- 0 .. variabel ini akan diwakili oleh suatu lokasi di memori komputer kita.2147483647 --- 0 . 65535 -2147483648 .SByte byte byte System.Byte short System.

2 Deklarasi Variable Ada 3 cara dalam mendeklarasikan/penulisan Variabel adalah sebagai berikut 1. jumlah=2. 3. Contoh : string nama_barang. Nama_variabel2. int jumlah.nama_barang. TypeData Nama_variabel=initial_value Initial_value dalah nilai awal yang diberikan terhadap variable tersebut ketika variable tersebut pertama kali dibaca Contoh : string nama_barang=”Buku”. nama_barang=”Buku”.ISTA 9 . 2.INSTITUT SAINS DAN TEKNOLOGI AL-KAMAL [KONSEP BAHASA PEMROGRAMAN C#] Contoh : Nama Variabel KodeBarang Nama_barang _Jumlah @int Int Harga Barang Harga#barang 1X @int Benar/Salah Benar Benar Benar : tetapi tidak disarankan Benar : keyword diawali dengan @ Salah : karena int adalah keyword Salah : menggunakan spasi Salah : menggunakan tanda # Salah : diawali oleh angka Benar : keyword diawali dengan @ 3. Apabila ada beberapa variable yang mememiliki tipe data yang sama maka dapat ditulis sebagai berikut : string kode_barang. TypeData Nama_variabel.2. Nama_variabel2. TypeData Nama_variabel1. int jumlah=2. BAB IV SELECTION Toeri : TEGUH DWIYANTO – 201122035 – TEKNIK INFORMATIKA .

Formula If (kriteria) { Statement bernilai True (sesuai dengan criteria) } Contoh: class Contoh If { public static void Main2() { Console.hasil). } Console.WriteLine("Hasil pembagian x/y = {0}".ReadLine(). int x = int. if (y!=0) { double hasil = x/y.ISTA 10 .Parse(Console.1 if If statement digunakan untuk mengeksekusi kode program jika kondisi tertentu terpenuhi. int y = int.INSTITUT SAINS DAN TEKNOLOGI AL-KAMAL [KONSEP BAHASA PEMROGRAMAN C#] Selection statement digunakan untuk menentukan bagian mana dari program yang akan dieksekusi selanjutnya. Console. C# menyediakan dua jenis selection yaitu if danswitch.ReadLine()).Write("Masukkan nilai y : "). } } TEGUH DWIYANTO – 201122035 – TEKNIK INFORMATIKA .Parse(Console. Console. 4.ReadLine()).Write("Masukkan nilai x : ").

} else TEGUH DWIYANTO – 201122035 – TEKNIK INFORMATIKA . kita juga bisa menentukan langkah apa yang mesti dilakukan kalau kondisi tersebut TIDAK terpenuhi.hasil).Parse(Console. Console.else Satu variasi dari if statement adalah if-else.WriteLine("Hasil pembagian x/y = {0}".INSTITUT SAINS DAN TEKNOLOGI AL-KAMAL 4.Write("Masukkan nilai y : "). int y = int. int x = int. Dalam statement ini.ISTA 11 .Parse(Console. Console. Formula If (kriteria) { Statement bernilai True (sesuai dengan kriteria) } else { Statement bernilai false (tidak sesuai dengan kriteria) } class ContohIfElse { public static void Main2() { Console.2 [KONSEP BAHASA PEMROGRAMAN C#] if . selain menentukan langkah apa yang harus dilakukan jika suatu kondisi terpenuhi.ReadLine()).Write("Masukkan nilai x : ").ReadLine()). if (y!=0) { double hasil = x/y.

} } 4. Dalam statement ini.INSTITUT SAINS DAN TEKNOLOGI AL-KAMAL [KONSEP BAHASA PEMROGRAMAN C#] { Console. Formula If (kriteria1) { Statement bernilai True (sesuai dengan kriteria1 } else if (kriteria2) { Statement bernilai True (sesuai dengan kriteria2 } 4.ISTA 12 . selain menentukan langkah apa yang harus dilakukan jika suatu kondisi terpenuhi.3 if else if Satu variasi dari if statement adalah if-else. kita juga bisa menentukan langkah apa yang mesti dilakukan kalau kondisi tersebut TIDAK terpenuhi.ReadLine(). } Console.WriteLine("y bernilai 0").4 Switch Logika dari statement switch secara prinsip sama dengan stement if Praktek 3 class ContohSwitch { public static void Main2() TEGUH DWIYANTO – 201122035 – TEKNIK INFORMATIKA .

break. break.ReadLine().DayOfWeek) { case DayOfWeek.Tuesday: { Console. } case DayOfWeek. } } Console. } case DayOfWeek. break.WriteLine("Sekarang hari Minggu").WriteLine("Sekarang hari Senin").Monday: { Console. break.WriteLine("Sekarang hari Selasa").INSTITUT SAINS DAN TEKNOLOGI AL-KAMAL [KONSEP BAHASA PEMROGRAMAN C#] { switch (DateTime.Sunday: { Console. } } BAB V ITERASI TEGUH DWIYANTO – 201122035 – TEKNIK INFORMATIKA .Now.WriteLine("Sekarang hari apa ya?").ISTA 13 . } default: { Console.

} Console.ISTA 14 . while (i<10) { if (i%2==0) { Console. } } 5. Formula while (kondisi iterasi) { Statement yang diulang } Contoh program using System.WriteLine("Angka genap: " + i).1 While while statement berguna untuk melakukan perulangan selama kondisi true. 5. } i += 1.ReadLine().INSTITUT SAINS DAN TEKNOLOGI AL-KAMAL [KONSEP BAHASA PEMROGRAMAN C#] Iteration statement adalah jenis perintah yang digunakan untuk menentukan bagian mana dari program yang akan dieksekusi berulang-ulang dan kondisi apa yang menentukan perulangan tersebut.2 Do while TEGUH DWIYANTO – 201122035 – TEKNIK INFORMATIKA . class ContohWhile { public static void Main () { int i = 0.

class ContohDo { public static void Main() { int i = 0. } } TEGUH DWIYANTO – 201122035 – TEKNIK INFORMATIKA . } i += 1.INSTITUT SAINS DAN TEKNOLOGI AL-KAMAL [KONSEP BAHASA PEMROGRAMAN C#] Statemen do memiliki kesamaan dengan statement while yaitu untuk melakukan perulangan Formula do { Statement yang diulang } while (kondisi iterasi) Contoh program using System. do { if (i%2==0) { Console.WriteLine("Angka genap: " + i). } while (i<10).ISTA 15 .ReadLine(). Console.

WriteLine("drive " + drives[i]). class ContohFor { public static void Main2() { string[] drives = System. misalnya array Contoh : TEGUH DWIYANTO – 201122035 – TEKNIK INFORMATIKA .INSTITUT SAINS DAN TEKNOLOGI AL-KAMAL 5. } } 5. kondisi akhir. } Console. i<drives.ISTA 16 .3 [KONSEP BAHASA PEMROGRAMAN C#] For For digunakan untuk melakukan perulangan yang didasarkan atas nilai diskrit misalnya integer Formula for (nilai awal. step pengulangan) { Statemen yang akan diulang } Contoh : using System.4 Foreach Statement Foreach digunakan utuk menelusuri collection. for (int i=0.GetLogicalDrives().Length. i++) { Console.ReadLine().Environment.

Contoh : using System. do dan switch yang pernah dibahas sebelumnya.ISTA 17 . 6.INSTITUT SAINS DAN TEKNOLOGI AL-KAMAL [KONSEP BAHASA PEMROGRAMAN C#] using System. } } BAB VI JUMP STATEMENT Jump Statement berfungsi untuk mentransfer kontrol eksekusi dari suatu bagian ke bagian yang lain.ReadLine().1 Break Statement break berfungsi untuk keluar dari statement for.Environment. foreach (string drive in drives) { Console.WriteLine("drive " + drive).GetLogicalDrives(). class ContohForeach { public static void Main2() { string[] drives = System. while. class ContohBreak { public static void Main() TEGUH DWIYANTO – 201122035 – TEKNIK INFORMATIKA . } Console.

} } 6.ReadLine().2 continue Statement continue berfungsi melanjutkan eksekusi program ke iterasi berikutnya : Contoh : using System.INSTITUT SAINS DAN TEKNOLOGI AL-KAMAL [KONSEP BAHASA PEMROGRAMAN C#] { for (int i=0. Console. i++) { if (i==5) continue.ISTA 18 . i<10. } } 6. class ContohContinue { public static void Main2() { for (int i=0. } Console. i++) { Console.WriteLine("i=" + i). } Console.ReadLine(). if (i==5) break.WriteLine("i=" + i). i<10.3 goto TEGUH DWIYANTO – 201122035 – TEKNIK INFORMATIKA .

WriteLine("FungsiB").WriteLine("Akan menjalankan return . Console. class ContohReturn { public static void FungsiB() { Console.INSTITUT SAINS DAN TEKNOLOGI AL-KAMAL [KONSEP BAHASA PEMROGRAMAN C#] statement goto berfungsi untuk melanjutkan ekseskusi ke label yang telah didefinisikan sebelumnya contoh : using System. return."). } selesai: Console. i<10. Console. } } 6. } TEGUH DWIYANTO – 201122035 – TEKNIK INFORMATIKA .WriteLine("i=" + i). class ContohGoto { public static void Main2() { for (int i=0..4 return Statement return digunakan untuk mengembalikan kontrol ekseskusi ke pemanggil.ReadLine()..ISTA 19 . using System. i++) { if (i==5) goto selesai.

INSTITUT SAINS DAN TEKNOLOGI AL-KAMAL [KONSEP BAHASA PEMROGRAMAN C#] public static void FungsiA() { Console.Write("Ketik nama Anda: ").WriteLine("Akan memanggil FungsiB"). Contoh using System. Console. class ContohThrow { public static void Main2() { try { Console.ReadLine(). FungsiB(). Console. if (nama!="risman") TEGUH DWIYANTO – 201122035 – TEKNIK INFORMATIKA .WriteLine("FungsiA").WriteLine("Melanjutkan perintah FungsiA berikutnya").5 throw statement throw digunakan untuk membangkitkan exceptionI dalam program. } public static void Main2() { FungsiA(). string nama = Console. Console. } } 6.ISTA 20 .ReadLine().

Anda termasuk orang terkenal .)").ApplicationException("Nama tidak dikenal"). Console. yaitu nama suatu method dapat dipakai berkali-kali selama method tersebut memiliki sesuatu yang unik. Static method hanya bisa diakses melalui classnya saja.ISTA 21 . } static void contohmethod(int value1. } } BAB VII METHOD Method adalah bagian dari tubuh program yang mengimplementasikan suatu action sehingga class atau object bekerja. 7. } Console.Message).Write("Selamat.WriteLine ("Exception: " + ae. Contoh class Program { static void contohmethod() { Console.INSTITUT SAINS DAN TEKNOLOGI AL-KAMAL [KONSEP BAHASA PEMROGRAMAN C#] throw new System. } catch(ApplicationException ae) { Console.ReadLine().int value2) { TEGUH DWIYANTO – 201122035 – TEKNIK INFORMATIKA .WriteLine("Method Tanpa Parameters").1 Static Methods Method dapat di overload.

ToString()). Console. v2). } static void contohmethod(ref int value) { value = value + 9.WriteLine("Nilai dari parameter1 " + value1.WriteLine("Nilai dari parameter2 " + value2.ReadLine().ToString() ). } } 7. contohmethod(v1. int v2 = 20. } static void Main(string[] args) { contohmethod().WriteLine("Nilai Parameters dengan metoda Ref " + value.2 non static method non static method adalah method yang dapat diakses melalui instance-nya contoh : class First { public virtual void one() { TEGUH DWIYANTO – 201122035 – TEKNIK INFORMATIKA .ToString() ).ISTA 22 . int r = 10. int v1 = 10.INSTITUT SAINS DAN TEKNOLOGI AL-KAMAL [KONSEP BAHASA PEMROGRAMAN C#] Console. contohmethod(ref r). Console. Console.

} } class Program { static void Main(string[] args) { First x = new First() . Second y = new Second() .WriteLine("Class First One").INSTITUT SAINS DAN TEKNOLOGI AL-KAMAL [KONSEP BAHASA PEMROGRAMAN C#] Console.one().one().ReadLine(). } } class Second : First { public override void one() { Console. x. } } TEGUH DWIYANTO – 201122035 – TEKNIK INFORMATIKA . Console.WriteLine("Class Second One"). y.ISTA 23 .