Modul C - Libre
Modul C - Libre
Pengenalan Bahasa C#
1.1.2
h. .NET Framework
.NET Framework adalah kombinasi dari layer CLR, FCL, Data, dan kelas XML, Windows, aplikasi web dan web service. Framework adalah sebuah kerangka penopang sebuah program untuk dapat berjalan pada suatu sistem operasi. Contohnya adalah yang biasa kita kenal dengan .NET framework pada sistem operasi berbasis windows dan mono framework pada sistem operasi berbasis UNIX dan Mac OS. Dan C# bukan hanya bisa dijalankan pada sistem berbasis windows namun juga ke sistem operasi lain dengan perantara fr ameworknya, analoginya seperti berikut:
Framework
.NET MONO Windows Linux MAC OS
Keyword using digunakan untuk memberitahu compiler class apa yang sedang digunakan pada aplikasi Keyword namespace digunakan untuk mendeklarasikan ruang lingkup dari class yang dibuat. Class didalam namespace dapat dipanggil dengan mencantumkan nama spacenya terlebih dahulu. Using system; pada baris pertama mempunyai arti bahwa user dapat menggunakan clas-class yang ada pada namespace System. Static menunjukan tipe method void menunjukkan bahwa method tidak mengembalikan nilai atu objek Main merupakan nama method utama program C# String merupakan tipe argumen yang akan diterima sebagai parameter dari command C#. Args merupakan merupakan array argumen yang dapat ditambahkan pada saat menggunakan command C# untuk menjalankan program C#
a. Perintah Keluaran
Console.Write (pernyataan dlm bntuk String, argument)
A , B adalah variable yang dimasukkan kedalam {0} dan {1} c. Perintah Membaca inputan
Console.Readline (); Console.ReadKey();
d. Perintah Konversi
Tipedata.Tryparse(variable yang akan dikonversi, out variable keluaran)
Contoh: int.Tryparse(input, out jumlah) Mengubah isi dari variable input yang bertipe data String ke integer, dan dikeluarkan pada variable jumlah.
Lembar Kerja
Jendela
Jendela properti
S oulution
(Menentukan Nama Class) , dan pilih tempat penyimpanan project Menu Bar = Berisi pilihan File, Edit, View, Reflector, Project, Build, Debug, Tools, Architecture, Test, Analyze, Window, Help
1.5 Latihan I
1. Apakah perbedaan antara Console.Write dengan Console.WriteLine? 2. Buatlah sebuah tampilan program seperti berikut menggunakan Console.WriteLine!
3. Apakah fungsi Console.Read(); pada program diatas? 4. Bagaimana hasil tampilan jika Console.Read(); tidak digunakan?
Tipe data dasar yang terdapat pada C# adalah: Tipe Integral Byte Sbyte Short ushort Int Uint Long ulong Float double char bool decimal String 8-bit unsigned integer 8-bit signed integer Short integer An Unsigned Short Integer Integer An Unsigned Integer Long Integer An Unsigned Long Integer Tipe Floating Point Single-precision Float Point Double-precision Float Point Tipe data lain Character Memberikan nilai True/ False Bilangan bulat Berisi karakter alfanumerik atau gabungan dari beberapa karakter
Saat kita mendeklarasikan suatu variable dengan tipe data integer atau int, data tersebut tidak akan bisa diisi dengan huruf. Kemudian pengisian data tersebut juga tidak menggunakan tanda petik dua ( ). Sama halnya dengan double, float, dan decimal, dimana pengisiannya tidak
namespace ConsoleApplication7 { classProgram { staticvoid Main(String[] args) { String nama; Console.Write("\ n Masukkan Nama Anda: "); nama = Console.ReadLine(); Console.WriteLine("\ n Selamat belajar C# {0}", nama); Console.Read(); } } }
2.2.2
Konstanta
Variable konstata adalah salah satu jenis variable memiliki nilai tetap atau tidak dapat diubah. Untuk menuliskan variable konstanta, sintaksnya adalah:
2.3.1
Operator Aritmatika
Operator aritmatika digunakan untuk perhitungan matematis seperti dalam penambahan, pengurangan, perkalian, dan pembagian
Contoh 2.3:
Ketikkan coding berikut ini:
staticvoid Main(String[] args) { String nim, nama, nabsen, ntugas, nuts, nuas; double nakhir, n_absen, n_tugas, n_uts, n_uas; Console.Write("\ n Nim : "); nim = Console.ReadLine(); Console.Write(" Nama : "); nama = Console.ReadLine(); Console.Write(" Nilai absen : "); nabsen = Console.ReadLine(); Console.Write(" Nilai Tugas : "); ntugas = Console.ReadLine(); Console.Write(" Nilai UTS : "); nuts = Console.ReadLine(); Console.Write(" Nilai UAS : "); nuas = Console.ReadLine(); n_absen = Convert.ToDouble(nabsen); n_tugas = Convert.ToDouble(ntugas); n_uts = Convert.ToDouble(nuts); n_uas = Convert.ToDouble(nuas); nakhir = (n_ absen * 10 / 100)+(n_ tugas* 20 / 100)+(n_uts* 30/ 100) + (n_uas* 40 / 100); Console.Write(" Nilai Akhir : {0}", nakhir); Console.Read(); }
Operator relasi dalam sebuah program biasa digunakan untuk membandingkan dua buah nilai, dan operator relasi akan memberikan nilai benar atau salah (true, false)
Keterangan
kurang dari kurang dari sama dengan lebih dari lebih dari sama dengan sama dengan tidak sama dengan
Contoh 2.4:
Ketikkan coding berikut ini:
staticvoid Main(String[] args) { String a, b; bool lb, lk, lbs, lks, smd, tsm; int var_a, var_b; Console.Write("\ n Masukkan Nilai a : "); a = Console.ReadLine(); Console.Write(" Masukkan Nilai b : "); b = Console.ReadLine(); var_ a = Convert.ToInt16(a); var_b = Convert.ToInt16(b); lb = var_ a > var_ b;/ / lebih besar lk = var_ a < var_ b;/ / lebih keci lbs = var_ a >= var_ b;/ / lebih besar sama dengan lks = var_ a <= var_ b;/ / lebih kecil sama dengan smd = var_ a == var_b;/ / sama dengan tsm = var_ a != var_b;/ / tidak sama dengan Console.WriteLine("\ n apakah a lebih besar dari b? {0}",lb); Console.WriteLine(" apakah a lebih kecil dari b? {0}", lk); Console.WriteLine(" apakah a lebih besar sama dengan b? {0}", lbs); Console.WriteLine(" apakah a lebih kecil sama dengan b? {0}", lks); Console.WriteLine(" apakah a sama dengan b? {0}", smd); Console.WriteLine(" apakah a tidak sama dengan b? {0}", tsm); Console.Read(); }
Simbol ! && ||
Keterangan
NOT short-circuit AND short-circuit OR
2.3.3
Operator Logika
Operator logika digunakan untuk menggabungkan dua buah ungkapan kondisi menjadi sebuah ungkapan kondisi. Oleh karena itu biasanya operator logika digunakan bersamaan dengan percabangan (IF).
2.4 Latihan II
1. Sebutkan perbedaan antara tipe data string dan boolean. 2. Buatlah sebuah program operator sederhana dengan input hanya sebanyak dua nilai (a dan b) dan memiliki tampilan seperti di bawah ini :
Operasi
3.1.1
Pernyataan If-Then-Else
Pengecekan kondisi merupakan suatu aspek terpenting dalam pemrograman. Pengecekan kondisi ini sudah ada sejak bahasa assembly. C# juga menyediakan pengecekan kondisi berupa if..then.. else. Struktur dari pernyataan. Struktur dari pernyataan kondisi dalam C# dinyatakan seperti berikut:
: A");
: B");
: C");
: D");
: E");
Pernyataan Switch Case juga merupakan satu pertanyaan terkondisi. Pernyataan switch case pada dasarnya hampir sama dengan if then else. Jika anda memerlukan satu pernyataan dengan banyak kondisi, gunkan pernyataan switch case. Struktur dari pernyataan Switch Case adalah sebagai berikut:
Contoh 3.2:
staticvoid Main(String[] args) { Console.WriteLine("Password yang anda masukkan salah, coba lagi"); Console.Write(" Masukkan Password : "); String pass = Console.ReadLine(); switch (pass) { case"P4ssw0rd": Console.Clear(); Console.WriteLine("Selamat datang di ruang administrator "); Console.WriteLine("======================================"); break; default: Console.Clear(); Console.WriteLine("Anda tidak berhak masuk kedalam sistem ini"); break; } Console.Read();}
Latihan III
1. Buatlah sebuah program dengan tampilan keluaran seperti di bawah ini
Dengan ketentuan nilai 1 dan nilai 2 berupa variabel yang di input, kemudian pilihan diinput dengan opsi yang akan dipilih dan tampilan serta jumlah akan muncul secara otomatis.
Contoh 4.1
staticvoid Main(String[] args) { for (int angka = 1; angka <= 10; angka++) { Console.WriteLine("\ n Angka Ke -" + angka.ToString()); } Console.Read(); }
Contoh 4.2
staticvoid Main(String[] args) { for (int angka = 10; angka >= 1; angka--) { Console.WriteLine("\ n Angka Ke -" + angka.ToString()); } Console.Read(); }
Contoh 4.4
staticvoid Main(String[] args) { int i = 1; do { Console.WriteLine("\ n Nilai i= " + i); i++; } while (i <= 5); Console.Read(); }
Contoh 4.5
staticvoid Main(String[] args) { String[] Stringarray = { "one", "two", "three" }; foreach (String element inStringarray) { Console.WriteLine(element + " "); } Console.Read(); }
Pengenalan OOP
CLASS
OBJEK
3. Klik kanan pada nama project anda kalu sorot add, pilih new item
5. Anda akan melihat terdapat satu kelas baru dengan nama class yang telah anda buat.
*Keterangan: Constructor adalah method khusus yang didefinisikan didalam class dan akan dipanggil secara otomatis tiap kali terjadi instantiasi object. Constructor berfungsi untuk melakukan inisialisasi nilai terhadap data-data yang terdapat pada class yang bersangkutan. Constructor dapat dibuat dapat juga tidak, jika kita tidak membuat sebuah constructor maka microsoft visual studio 2010 akan membuatkan construktor untuk programmer yang disebut dengan default constructor. Default constructor akan menginisialisasi semua data yang ada dengan nilai nol, sama halnya dengan method, constructor juga dapat memiliki parameter.
Beri nama clas dengan nama Robot.cs lalu berikan coding berikut ini.
R u n n i n g
Running
Running Program
Karena Program.cs adalah user (Class lain) Maka akan tampil sederet kesalahan yang menyatakan bahwa attribut yana bertipe privateis inaccessible due to its protection level yang artinya,, atribut-attribut tersebut tidak dapat diakses selama berlevel ter-protect. Sehingga attribut-attribut tersebut hanya bisa diakses oleh Robot.cs
Mo d ul Pe m ro g ram anC# Fund am e n tal Ubah juga kode program yang ada pada Program.cs
Dari kasus diatas attribut-attribut yang bertipe private ter-enkapsulasi (terbungkus) dalam method yang bertipe public(method getter) sehingga tetap dapat diakses oleh kelas yang lain tetapi dengan cara pengaksesan yang berbeda yang sudah diatur oleh programmer. Dalam kasus ini user (class lain) hanya dapat membaca informasi tentang jumlah tangan, jumlah kaki, jumlah rocket, dan jumlah senjata, tetapi tidak dapat mengubah jumlah dari attribute-attribute tersebut.
kelas
baru
dengan
nama
Membuat Property o Blok attribute o Klik Kanan pilih refractor o Pilih Encapsulate Field o Pilih all, ok
Property
Buatlah sebuah objek pada Program.cs kemudian ketikkan program dibawah ini
Class
Robot + Nama : String -JumlahKaki : int -JumlahTangan : int -JumlahSenjata : int -JumlahRocket : int +LihatJumlahkaki() +LihatTangan() +LihatSenjata() +Terbang()
Pewarisan/ Inheritance
6.1 Pengertian Inheritance
Inheritance/ Pewarisan adalah suatu cara pembuatan class baru dengan menggunakan kembali class yang sudah didefinisikan sebelumnya dengan menambahkan attribute dan method baru. Sehingga demikian class baru yang dibuat tetap memiliki attribute dan method yang dimiliki oleh class induknya. Pada konsep pewarisan/ inheritance terdapat beberapa istilah yang perlu diketahui yaitu: a. Sub Class, digunakan untuk menunjukkan class anak atau turunan secara hirarkis dari super class b. Super Class, digunakan untuk menunjukkan class induk secara hirarkis dari sub class (class anak)
Virus
+ nama: String +size : int +kemampuan : String +banyak : int +Menyerang() : void +MemperbanyakDiri() : void Trojan +nama : String +size : int +kemampuan : String +Menyerang () : void +MenyembunyikanFile() void +MemblokirCMD() : void
Worm
+nama : String +size : int +kemampuan : String +Menyerang() : void +MenginfeksiRegistry() void +Menghapus NTLDR() void
: :
Virus.cs
Trojan.cs W o r m . c s
R u n n i n g P r o g
D a r i b a g a n / diagram diatas programmer perlu membuat empat kelas baru yaitu kelas malware, virus, trojan, worm. Mengapa lebih mudah menggunakan inheritance? Karena setiap malware (virus/ trojan/ worm) sama sama memiliki attribut nama, size, dan kemampuan, juga memiliki method Menyerang() . Agar lebih jelasnya mari kita buat kode programnya:
Malware.cs
Virus.cs
T rojan.cs
Worm.cs
Running Program
Malware.cs
M
Virus.cs
c l a s s
R u n n i n g Program
Ketentuan soal 1. Buatlah program sesuai dengan class diagram diatas 2. Isilah method-method yang ada dengan data berikut 3. Gunakan fitur-fitur oop khususnya inheritance (overriding) Method Class Isi Beraksi Robot Robot [nama] beraksi Beraksi Robot Berkaki Robot [nama] berjalan 10 langkah Beraksi Robot Beroda Robot [nama] meluncur 1 meter Beraksi Robot Terbang Robot [nama] melayang di ketinggian 2 meter Beraksi Robot Robot [nama] menyelam sedalam 2 Penyelam meter Atursensor Robot Mengatur sensitifitas [jenissensor] Atursensor Robot Mengatur sensitifitas tekanan air pada Penyelam [jenissensor]
Polymorphism
Siswa.cs
Program.cs
Array adalah suatu struktur data yang dapat menyimpan data dengan tipe yang sama dan diakses dengan menggunakan suatu indeks yang menunjukkan suatu elemen didalam array tersebut. Dengan begitu array masih termasuk kedalam bentuk polymorphism.
P r o g r a m . c s
Running Program
Program.cs
Running Program
Running program
8.4 Collection
Pada .NET framework, tersedia beberapa class yang khusus disediakan sebagai tempat menyimpan dan mengambil kumpulan data (collection of data). Beberapa dari class tersebut adalah Array, List, Queue, dan Stack.
Running Program
8.4.2 Queue
Queue juga adalah kumpulan data yang merepresentasikan sebuah antrian. Queue juga dapat menambahkan dan mengurangi data seperti dalam list. Perbedaannya terletak pada car a ia menambah dan mengambil data. Queue selalu selalu menambahkan elemennya pada akhir dari queue dan mengambil elemennya pada awalnya queue (seperti sebuah antrian pada umumnya).
Elemen yang diambil dari sini
Queue
Running program
Stack
9.1 Sorting
Running Program
Mencari elemen yang tepat untuk diletakkan di posisi yang telah diketahui, dan meletakkannya di posisi tersebut setelah data tersebut ditemukan.
Running Program
10.1.1
Buatlah sebuah project baru dengan nama latihan abstract Tambahkan Class baru dengan nama BangunRuang.cs, kemudian ketikkan kode program berikut:
T a m b a h k an Class baru dengan nama Balok.cs, kemudian ketikkan kode program berikut:
Tambahkan Class baru dengan nama Bola.cs, kemudian ketikkan kode program berikut:
Program.cs
Running Program
10.2 Interface
Interface dari sebuah class merupakan kontrak antara kode program dari klien dengan class yang menyediakan layanan. Class yang nyata harus mengimplementasikan setiap method yang dideklarasikan. Inteface berfungsi sebagai pola/ kontrak (kumpulan method/ property) yang harus dibuat oleh class yang mengimplmentasinya. Di dalam interface kita hanya membuat prototype dari method/ property saja tanpa menggunakan access identifier. Access identifier anggota interface adalah public (secara otomatis). Agar lebih jelas, mari kita buat sebelumnya. Pertama-tama pilihlah project > Add New Item (CTRL+SHIFT+A)
Pilihlah pilihan interface, kemudian beri nama Inameable. Lalu buat juga Ihead.
10.2.1
Latihan Interface
Buatlah sebuah project baru dengan nama latihan interface Buatlah class baru dengan nama mammal.cs, dan kketikkan kode program berikut ini
Buatlah class baru dengan nama dog.cs, dan ketikkan kode program berikut ini
Running program
11
Selanjutnya mari kita praktekkan jenis-jenis toolbox yang ada. Caranya hanya dengan mengklik salah satu dari toolbox, misalnya button
Lalu arahkan kursor yang berbentuk plus pada form1, kemudian klik kiri
Solution Explorer Solution Explorer adalah bagian yang berfungsi untuk melihat item-item penyusun sebuah proyek atau solution. Sebuah proyek dapat disusun oleh berbagai macam item yaitu: o o o o o o o Form dan kodenya Class Module Class Diagram File XML File Proyek File Report
Properties Properties berguna untuk melihat nilai properti dari sebuah objek/ class, misalnya properti Name,Text, dsbg.
Selanjutnya kita akan merubah properties daari objek-objek yang ada pada form1. Coblah anda klik button1, kemudian pada properties, rubah Text dan Back Colornya. Buatlah tampilan seperti berikut ini:
Pada saat perancangan program seperti ini tombol tutup tidak dapat ditekan seperti layaknya sebuah tombol, perlu adanya eksekusi program terlebih dahulu, untuk mengeksekusi program tekan F5. Barulah tombol tutup dapat ditekan seperti layaknya tombol di kehidupan nyata.
11.2 Event
Tidak hanya makhluk hidup yang memiliki tingkah laku (behaviour) tetapi pada dasarnya salah satu alasan terciptanya teknologi adalah untuk menggantikan peran makhluk hidup khususnya manusia agar terciptanya kehidupan yang dinamis. Dengan alasan tersebutlah objek didalam form pada sebuah class patutnya memiliki tingkah laku yang nantinya akan menjadi acuan bagi proses yang akan dijalankan. Sebagai contoh setelah anda membuat tampilan pada form1 ketika program di eksekusi, kita akan menemukan tombol tutup dapat berperilaku seperti halnya tombol di dunia nyata, akan tetapi apa yang terjadi setelah tombol tersebut ditekan? (whats next?) pada kasus ini
12
GUI Lanjutan
Running program
2. Penerapan Combobox dan Radio Button Design form seperti berikut ini
3. Penerapan Checkbox dan Listbox Buatlah design form seperti berikut ini: