Unit_1_Eka

10
Pendahuluan 1. Tujuan a. Membuat sebuah program C# b. Meng-compile dan menjalankan sebuah program C# c. Menggunakan Visual Studio Debugger d. Menambah exeception handling ke Program C# 2. Dasar Teori C# (dibaca: C sharp) merupakan sebuah bahasa pemrograman yang berorientasi objek yang dikembangkan oleh Microsoft sebagai bagian dari inisiatif kerangka .NET Framework. Bahasa pemrograman ini dibuat berbasiskan bahasa C++ yang telah dipengaruhi oleh aspek-aspek ataupun fitur bahasa yang terdapat pada bahasa-bahasa pemrograman lainnya seperti Java, Delphi, Visual Basic, dan lain-lain) dengan beberapa penyederhanaan. Secara hirarki Program C# terdiri dari Microsoft Visual Studio merupakan sebuah perangkat lunak lengkap (suite) yang dapat digunakan untuk melakukan pengembangan aplikasi, baik itu aplikasi bisnis, aplikasi personal, ataupun komponen aplikasinya, dalam bentuk aplikasi console, aplikasi Windows, ataupun aplikasi Web. Visual Studio mencakup kompiler, SDK, Integrated Development Environment (IDE), dan dokumentasi (umumnya berupa MSDN Library). Kompiler yang dimasukkan ke dalam paket Visual Studio antara lain Visual C++, Visual C#, Visual Basic, Visual Basic.NET, Visual InterDev, Visual J++, Visual J#, Visual FoxPro, dan Visual SourceSafe. Microsoft Visual Studio dapat digunakan untuk mengembangkan aplikasi

description

pbo

Transcript of Unit_1_Eka

Page 1: Unit_1_Eka

Pendahuluan

1. Tujuan

a. Membuat sebuah program C#

b. Meng-compile dan menjalankan sebuah program C#

c. Menggunakan Visual Studio Debugger

d. Menambah exeception handling ke Program C#

2. Dasar Teori

C# (dibaca: C sharp) merupakan sebuah bahasa pemrograman

yang berorientasi objek yang dikembangkan oleh Microsoft sebagai bagian

dari inisiatif kerangka .NET Framework. Bahasa pemrograman ini dibuat

berbasiskan bahasa C++ yang telah dipengaruhi oleh aspek-aspek ataupun

fitur bahasa yang terdapat pada bahasa-bahasa pemrograman lainnya

seperti Java, Delphi, Visual Basic, dan lain-lain) dengan beberapa

penyederhanaan.

Secara hirarki Program C# terdiri dari

Microsoft Visual Studio merupakan sebuah perangkat lunak

lengkap (suite) yang dapat digunakan untuk melakukan pengembangan

aplikasi, baik itu aplikasi bisnis, aplikasi personal, ataupun komponen

aplikasinya, dalam bentuk aplikasi console, aplikasi Windows, ataupun

aplikasi Web. Visual Studio mencakup kompiler, SDK, Integrated

Development Environment (IDE), dan dokumentasi (umumnya berupa

MSDN Library). Kompiler yang dimasukkan ke dalam paket Visual Studio

antara lain Visual C++, Visual C#, Visual Basic, Visual Basic.NET, Visual

InterDev, Visual J++, Visual J#, Visual FoxPro, dan Visual SourceSafe.

Microsoft Visual Studio dapat digunakan untuk mengembangkan aplikasi

Page 2: Unit_1_Eka

dalam native code (dalam bentuk bahasa mesin yang berjalan di atas

Windows) ataupun managed code (dalam bentuk Microsoft Intermediate

Language di atas .NET Framework). Selain itu, Visual Studio juga dapat

digunakan untuk mengembangkan aplikasi Silverlight, aplikasi Windows

Mobile (yang berjalan di atas .NET Compact Framework).

Debugging adalah sebuah metode yang dilakukan oleh para

pemrogram dan pengembang perangkat lunak untuk mencari dan

mengurangi bug, atau kerusakan di dalam sebuah program komputer atau

perangkat keras sehingga perangkat tersebut bekerja sesuai dengan

harapan. Debugging cenderung lebih rumit ketika beberapa subsistem

lainnya terikat dengan ketat dengannya, mengingat sebuah perubahan di

satu sisi, mungkin dapat menyebabkan munculnya bug lain di dalam

subsistem lainnya.

Exception Handling. Exception adalah event yang terjadi ketika

program menemui kesalahan pada saat instruksi program dijalankan.

Exception terdiri dari beberapa kelompok yaitu:

Exception yang merupakan subclass RunTimeException.

Exception yang bukan subclass RunTimeException (Kesalahan

Program atau deain program).

Ada beberapa cara yang digunakan untuk Exception Handling,

yaitu: Try – Catch, Multiple Catch, Try – Catch – Finally. Tapi

yang dibahas di Mudul ini adalah Tipe Try-Catch

Page 3: Unit_1_Eka

Pembahasan

1. Latihan 1: Membuat program C# sederhana

Pada Latihan ini praktikan akan membuat sebuah program sederhana

dengan menggunakan bahasa C# di Microsoft Visual Studio dengan

memilih Console Application. Syntax-nya akan dilisting seperti berikut.

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

Merupakan Library-library yang dimasukkan dalam program. Dalam

Visual Studio. Library diatas sudah secara default muncul tanpa

diketikkan.

namespace Sambutan

Mendefinisikan namespace yang bernama “Sambutan”. Pada Microsoft

Visual Studio, namanya menyesuaikan dengan nama File yang kita create

saar memilih console Application sebelumnya. Fungsi namespace adalah

untuk megelompokkan/menyimpan class.

class Program

{

static void Main(string[] args)

{

1 string NamaKu;

2 Console.WriteLine("Masukkan namamu:");

3 NamaKu = Console.ReadLine();

4 Console.WriteLine("Assalamu'alaikum {0}", NamaKu);

5 Console.ReadLine();

}

}

Page 4: Unit_1_Eka

1 Mendeklariskan variabel NamaKu bertipe string

2 Command untuk menuliskan output text “Masukkann namamu:” ke

CLI

3 Membaca Inputan dari user melalui keyboard dan memasukkannya

ke varibel NamaKu

4 Menuliskan output yang berisikan text “Assalamu’alaikum” +

“(inputan user)” yang diambil dari variabel NamaKu

5 Membaca inputan keyboard, tapi dalam hal ini digunakan agar

program tidak menutup secara otomatis

Listing program tersebut adalah untuk mendefiniskan Class bernama

‘Program’ yang berisikan fungsi Main dengan tipe void dan access

modifier static. Syntax yang berada di fungsi mainlah yang akan di-

compile untuk mendapatkan keluaran seperti berikut:

2. Latihan 2: Melakukan Proses Compile dan Menjalankan Program C#

dari Command Line.

Pada latihan ini akan dieksekusi program sebelumnya dengan cara yang

berbeda yaitu dengan menggunakan command line. Caranya adalah

dengan menjalankan Visual Studio .NET Command Prompt, lalu masuk

ke folder penyimpanan file source codedengan command cd + path,

setelah itu mengetikkan perintah csc/out:Greet.exe Program..cs. Setelah itu

muncul file yang execetuble bernama Greet.exe. Kita cukup menjalankan

file tersebut, dan program akan dieksekusi

Page 5: Unit_1_Eka

3. Latihan 3: Menggunakan Debugger

Pada latihan ini akan dilakukan proses debugging dengan tools ada

Visual Studio Debugger untuk memeriksa nilai dari variabel dari program

sebelumnya. Caranya adalah dengan memberi breakpoint berupa tanda

merah bulat pada sisi margin. Pada source code ini akan diberi breakpoint

pada baris NamaKu = Console.ReadLine(); Fungsi breakpoint ini adalah

saat program dieksekusi maka program akan berhenti berjalan pada tanda

break point, atau dalam kasus ini kita tidak akan bisa memberi inputan,

Kita dapat mengamati isi variabel NamaKu dengan Watch , terlihat isi

variabel dari NamaKu adalah Null (karena user belum memasukkan

inputan apapun). Setelah dilakukan step over, mengeksekusi baris yang

diberi break point, proses penginputan bisa berjalan, dan variabel NamaKu

akan berisi variabel sesuai inputan, dalam hal ini “eka” dengan tipe data

string.

4. Latihan 4: Menambahkan Exception Handling ke Program C#

Pada latihan ini akan dibuat program baru yang fungsinya adalah mencari

hasil pembagian 2 angka integer. Berikut Listing programnya

namespace Pembagian

{

class Program

{

static void Main(string[] args)

{

1 Console.WriteLine("Masukkan nilai integer pertama");

2 string temp = Console.ReadLine();

3 int i = Int32.Parse(temp);

4 Console.WriteLine("Masukkan nilai integer kedua");

temp = Console.ReadLine();

int j = Int32.Parse(temp);

5 int k = i / j;

Page 6: Unit_1_Eka

6 Console.WriteLine("Hasil pembagian {0} oleh {1} adalah

{2}", i, j, k);

Console.ReadLine();

}

}

1 Menampilkan output text ke CLI

2 Membaca input dari user dan memasukkannya ke variabel temp bertipe

string

3 Memparsing atau mengubah nilai dari variabel temp dari bertipe

string menjadi integer lalu memasukkannya variabel i bertipe

integer

4 Inputan ke dua, perintahnya sama dengan 1-3, tetapi memasukkannya

ke variabel j bertipe integer

5 Fungsi pembagian variabel i dibagi j dan hasilnya dimasukkan ke

variabel k

6 Fungsi menuliskan ouput pesan ke CLI berupa pesan, dimana {0}

adalah nilai 0+1=i, dan seterusnya untuk j,k

Setelah itu akan dilakukan pengujian prgram. Saat dilakukan pembagian 2

bilangan (selain 0) program akan berjalan dengan baik.

Tetapi saat dilakukan pembagian sebuah bilangan yang dibagi dengan 0,

maka program akan berhenti berjalan, dan akan muncul kotak dialog Just

In Time Debugging.

Oleh karena itu perlu ditambahakan exception handling, agar program

tidak berhenti berjalan. Pada kasus ini hanya perlu menambahkan sintaks

try-catch, jadi listing programnya akan menjadi seperti berikut (nomor 1

dan 2).

class Program

{

static void Main(string[] args)

{

1 try

Page 7: Unit_1_Eka

{

Console.WriteLine("Masukkan nilai integer pertama");

string temp = Console.ReadLine();

int i = Int32.Parse(temp);

Console.WriteLine("Masukkan nilai integer kedua");

temp = Console.ReadLine();

int j = Int32.Parse(temp);

int k = i / j;

Console.WriteLine("Hasil pembagian {0} oleh {1}

adalah {2}", i, j, k);

Console.ReadLine();

}

2 catch (Exception e)

{

3 Console.WriteLine("Eksepsi: {0}", e);

}

Console.ReadLine();

}

}

Jadi saat dilakukan pembagian dengan angka 0, jendela program tidak

akan tertutup/program berheti berjalan, tetapi akan muncul pesan Eksepsi

sesuai dengan pesan dalam fungsi catch dinomor 3,

Page 8: Unit_1_Eka

Jawaban Pertanyaan

1. Apakah fungsi static void main dalam sebuah program. Dapatkah sebuah

program tidak memiliki static void main. Bila ada program apa yang tidak

menggunakannya?

Fungsi static void main adalah memberikan nilai kembalian sebuah void (tak ada

nilai kembalian).. Static sendiri berarti method tersebut harus bersifat berdiri

sendiri dan tidak bisa diubah-ubah selama eksekusi program. Dan maini adalah

fungsi utama program ketika di jalankan yang ditandai dengan {….}. Jika tidak

menggunakan void, maka pada statement program harus memberikan nilai

kembalian berupa integer, string atau tipe lain.

2. Apakah perbedaan debug dan release pada suatu program dijalankan?

Pada debug dimungkinkan untuk “mendiagnosa” suatu program, apabila ada

logika yang salah dimungkinkan untuk diperbaiki, hal ini karena metode

optimasinya tidak dimasukkan, berbeda dengan pada mode release, aplikasi siap

dirilis, tidak dimungkinkan untuk memperbaiki program saat program berjalan,

karena metode optimasi tidak digunakan

3. Apakah makna finally dalam suatu program, apakah finnaly mutlak ada

dalam sebuah statement try catch, bila tidak kapan sebaiknya finnaly

digunakan?

Finally merupakan salah satu rangkaian blok dari exception handling. Finally

akan selalu dieksekusi walaupun terdapat eksepsi maupun tidak. Finally tidak

mutlak ada di dalam statement try catch. Finally hanya digunakan apabila ingin

mengeksekusi blok pernyataan yang harus / pasti akan selalu dieksekusi saat

menggunakan try catch.

4. Apa arti step in, step over, dan watch pada mekanisme debugging suatu

program C#?

Step In:Mengeksekusi kode 1 stetement/ waktu. Perintah ini akan mengeksekusi

baris terbaru dimana debugger itu baru saja aktif, dan akan berpindah ke baris

selanjutnya. Jika baris yang ditandai tersebut adalah sebah function call maka

Page 9: Unit_1_Eka

debugger akan berubah ke funtion. Step Over: Perintah ini hampir sama dengan

Step in, perbedaan dalam penggunannya adalah ketika sebuah statement

mempunyai panggilan ke sebuah procedure. Jika baris terbaru adalah function

call fungsi tersebut akan dievaluasi tapi tidak akan berubah ke function code.

Watch: melihat isi dan nilai sebuah variable, dan untuk mengevaluasinya apakah

nilai tersebut telah benar berisi sesuai logicnya

5. Apa perbedaan antara Write dan WriteLine, dan apa fungsi Parse pada

latihan 4?

Write : menulis teks pada sebuah baris

WriteLine : menulis teks pada baris yang baru.

Parse : mengubah suatu tipe data menjadi tipe data yang lainnya.

Kesimpulan

Ada berbagai cara untuk mengeksekusi program dalam C#, yaitu

menggunakan menu/ IDE dalam visual studio, atau dengan menggunakan

Visual Studio . NET Command Prompt

Debugger berguna untuk mencari bug dan mengevaluasi program yang

telah dibuat. Terdapat berbagai fungsi seperti Step (In,Over,Out), Watch

dalam debugger

Try berfungsi untuk menguji error dan melemparkanya jika error terjadi.

Catch digunakan untuk menagkap error yang dilemparkan block try.

Throw berfungsi untuk menentukan exception atas pilihan menu error

yang ditentukan oleh programmer. Finally untuk mengeksekusi blok

pernyataan yang selalu dieksekusi baik terdapat exception atau tidak.

Page 10: Unit_1_Eka

Daftar Pustaka

https://pccontrol.wordpress.com/dasar-c/

https://revoluthion.wordpress.com/2009/10/07/debugging-pengertian/

http://tanahtinta.blogspot.co.id/2013/04/exception-handling.html

https://msdn.microsoft.com

http://stackoverflow.com/questions/547791/why-use-finally-in-c