Mencari kesalahan pada program kecil lebih mudah daripada mencari kesalahan pada program dengan ribuan baris koding. Untungnya Delphi menyediakan beberapa cara untuk menjebak kesalahan.
Try Except On
Saya sering memakai ini karena saya sering menyimpan kesalahan pada sebuah file teks agar saya bisa mengetahuinya di kemudian hari. Namun Anda dapat mengkreasikan sesuai dengan imajinas Anda. Blok program diapit oleh Try dan Except. Kemudian Anda bisa membuat program kecil untuk mengantisipasi kesalahan tersebut.
Pada contoh program dibawah ini, saya akan membuat program salah dan menuliskan pesan kesalahannya pada kotak dialog.
procedure TForm1.Button1Click(Sender: TObject);
var
Hasil, pembagi : double;
begin
try
Pembagi := 0;
Hasil := 5 / Pembagi;
ShowMessage(FloatToStr(Hasil));
Except
On E:Exception do
ShowMessage('Terdapat kesalahan dengan pesan kesalahan: ' + #13#10 + E.Message);
end;
end;
Try Finally End
Hampir mirip dengan Try Except On. Perbedaannya, Try Except On akan berhenti pada kesalahan tersebut, sedangkan Try Finally akan meneruskan pada baris sesudah kata Finally, tidak perduli salah atau tidak. Programer biasanya memakai ini untuk kesalahan yang mengakibatkan sistem jadi tidak stabil. Misalkan saya membuat obyek secara manual dan harus dihapus saat sudah tidak digunakan lagi. Kalau saya memakai Try Except, maka obyek tadi tidak dihapus dari memori karena terjadi kesalaha, tetapi lain ceritanya jika saya menggunakan try finally.
Pada contoh dibawah ini, saya membuat obyek Tstring, tetapi saya lupa membuat list-nya, sehingga error ketika menampilkan data pada index ke-0.
procedure TForm1.Button1Click(Sender: TObject);
var
Simpan : TStringList;
begin
try
Simpan := TStringList.Create;
ShowMessage(Simpan[0]);
finally
FreeAndNil(Simpan);
end;
end;
Kode diatas akan menghasilkan kotak dialog kesalahan seperti dibawah ini:
Tidak perduli program saya error, obyek Simpan akan dihapus dari memori.
0 comments:
Posting Komentar