Total Tayangan Halaman

Jumat, 04 Februari 2011

PERTEMUAN 8 dan 9

RANGKUMAN MATERI KULIAH PERTEMUAN VIII DAN IX
BAHASA PEMROGRAMAN
PERANGKAT LUNAK BAHASA PEMROGRAMAN

Bahasa pemrograman adalah software bahasa komputer yang digunakan dengan cara merancang atau membuat program sesuai dengan struktur dan metode yang dimiliki oleh bahasa program itu sendiri. Komputer mengerjakan transformasi data berdasarkan kumpulan printah program yang telah dibuat oleh program. Kumpulan perintah ini harus dimengerti oleh komputer berstruktur terntentu (syntax), dan bermakna. Bahasa pemrograman merupakan notasi untuk memberikan secara tepat program komputer. Berbeda dengan bahasa, misalkan Bahasa Indonesia dan Inggris yang merupakan bahasa alamiah (natural language), sintaksis dan semantik bahasapemrograman komputer ditentukan secara jelas dan terstruktur, sehingg bahasa pemrograman juga disebut sebagai bahasa formal (formal language).

Generasi Bahasa Pemrograman
Menurut tingkatannya, bahasa pemrograman dibagi menjadi 3 tingkatan, yaitu:
1. Bahasa pemrograman tingkat rendah (low level language), merupakan bahasa pemrograman generasi pertama, bahasa pemrograman jenis ini sangat sulit dimengerti karena instruksinya menggunakan bahasa mesin. Biasanya yang mengerti hanyalah pembuatnya saja karena isinya programnya berupa kode-kode mesin.
2. Bahasa pemrograman tingkat menengah (middle level language), merupakan bahasa pemrograman dimana pengguna instruksi sudah mendekati bahasa sehari-hari, walaupun begitu masih sulit untuk dimengerti karena banyak menggunakan singkatan-singkatan seperti “STO” artinya simpan (STORE) dan “MOV” artinya pindahkan (MOVE). Yang tergolong dalam bahasa ini adalah assembler.
3. Bahasa pemrograman tingkat tinggi (high level language) merupakan bahasa yang mempunyai ciri lebih terstruktur, mudah dimengerti karena menggunakan bahasa sehari-hari, contoh bahasa level ini adalah: Delphi, Pascal, ORACLE, MS-SQL, Perl, Phyton, Basic,Visual Studio (Visual Basic, Visual FoxPro), Informix, C, C++, ADA, Java, PHP, ASP, XML, dan lain-lain. Bahasa seperti Java, PHP, ASP, XML biasanya digunakan untuk pemrograman pada internet, dan masih banyak lagi yang terus berkembang yang saat ini biasanya dengan ekstensi .net (baca: dot net) seperti Visual Basic.NET dan Delphi. Net yang merupakan bahasa pemrograman yang dikembangkan pada aran berbasis internet
Sejauh ini bahasa pemrograman dikelompokkan menjadi lima generasi. Setiap generasi bahasa pemrograman memiliki karakteristik tersendiri. Semakin maju generasinya maka orientasi bahasa pemrograman ini akan semakin dekat ke manusia.
Gambar di atas menunjukkan terjadinya kecenderungan pergeseran orientasi dalam bahasa -bahasa pemrograman, dari pendekatan yang berorientasi kepada mesin menuju ke pendekatan yang berorientasi pada manusia.
BAHASA PEMROGRAMAN GENERASI I
Bahasa pemrograman generasi pertama berorientasi pada mesin. Program disusun dengan
menggunakan bahasa mesin. Tentu saja program generasi ini sangat sulit untuk dipahami oleh orang awam dan sangat membosankan bagi pemrogram. Pemrogram harus benar-benar
menguasai operasi komputer secara teknis. Namun bahasa generasi ini memberikan eksekusi
program yang sangat cepat. Selain itu, bahasa mesin sangat bergantung pada mesin (machine dependent), artinya, bahasa mesin antara satu mesin dengan mesin lainnya akan berbeda.
BAHASA PEMROGRAMAN GENERASI II
Bahasa pemrograman generasi kedua menggunakan bahasa rakitan (assembly). Sebagai
pengganti kode-kode biner, digunakanlah kependekan dari kata-kata. Misalkan “MOV” untuk
menyatakan “MOVE” dan JNZ yang berarti “jump non-zero”. Setiap instruksi dalam bahasa
rakitan sebenarnya identik dengan satu instruksi dalam bahasa mesin. Bahasa ini sedikit lebih mudah dipahami daripada bahasa mesin. Bahasa ini sedikit lebih mudah dipahami daripada bahasa mesin mengingat perintah dalam bentuk kata-kata yang dipendekkan lebih mudah daripada mengingat deretan angka biner.
Berikut adalah contoh instruksi yang ditulis dalam bahasa rakitan akan menjadi seperti berikut:
Tampak bahwa penggunaan notasi seperti MOV AH, 02 jauh lebih mudah diingat atau dipahami
daripada penulisan instruksi dalam bahasa mesin: B402 atau 1011 0100 0000 0010.

Kode dalam Bahasa Rakitan
BAHASA PEMROGRAMAN GENERASI III
Bahasa pemrograman generasi ketiga menggunakan pendekatan prosedural. Sebagai bahasa
prosedural, pemrogram perlu menuliskan instruksi-instruksi yang rinci agar komputer
melaksanakan tugasnya. Program ditulis dengan menggunakan kata-kata yang biasa dipakai
manusia, seperti WRITE untuk menampilkan sesuatu di layar dan READ untuk membaca data dari keyboard.
Bahasa generasi ketiga seringkali disebut sebagai high level language disebabkan bahasa ini
menggunakan kata-kata yang biasa digunakan manusia. Beberapa contoh bahasa pemrograman
yang masuk dalam kategori generasi ketiga yaitu ADA, ALGOL, C, BASIC, COBOL, FORTRAN, dan PASCAL.
BAHASA PEMROGRAMAN GENERASI IV
Bahasa pemrograman generasi keempat dirancang untuk mengurangi waktu pemrograman dalam membuat program sehingga diharapkan produktifitas pemrogram jadi meningkat dan program dapat dibuat dalam waktu yang lebih singkat. Alhasil, bahasa pemrograman generasi keempat yang dikenal dengan sebutan 4GL dapat dipakai oleh pemakai yang kurang mengetahui hal-hal teknis tentang pemrograman tanpa bantuan pemrogram profesional. Sebagai contoh pemrogram dapat membuat program dengan Microsoft Access di lingkungan PC dengan mudah.
Bahasa pemrograman generasi keempat biasa disebut sebagai high level language atau bahasa berorientasi pada masalah (problem oriented language) karena memungkinkan pemakai menyelesaikan masalah dengan sedikit penulisan kode dibandingkan pada bahasa prosedural.
Bahasa pemrograman generasi keempat menggunakan pendekatan non-prosedural. Untuk
mendapatkan suatu hasil, seorang pemakai tidak perlu memberitahukan secara detail tentang bagaimana mendapatkannya. Gambar di bawah ini memberikan contoh yang menunjukkan perbedaan bahasa prosedural dan non-prosedural dalam memperoleh data tentang seorang mahasiswa.

Bahasa Prosedural dan Non Prosedural

BAHASA PEMROGRAMAN GENERASI V
Bahasa pemrograman generasi kelima merupakan kelompok bahasa-bahasa pemrograman yang ditujukan untuk menangani kecerdasan buatan (artificial intelligence). Kecerdasan buatan adalah disiplin dalam ilmu komputer yang mempelajari cara komputer meniru kecerdasan manusia.
Berbagai aplikasi kecerdasan manusia adalah sebagai berikut:
1. Pemrosesan bahasa alami (natural language processing), yakni mengatur komputer agar bisa berkomunikasi dengan manusia melalui bahasa manusia (Indonesia, Inggris, Spanyol, Prancis, dan sebagainya).
2. Pengedalian robotika dan sensor mata.
3. Aplikasi sistem pakar (expert system) yang meniru seorang pakar di bidang tertentu sehingga bisa menghasilkan nasehat atau pemikiran yang setara dengan seorang pakar.
Dengan menggunakan bahasa generasi kelima dimungkinkan untuk melakukan perintah dengan cara percakapan seperti berikut:
“Tampilkan semua nama siswa yang KKM-nya di atas70 dan urutkan berdasarkan IP secara
descending”
PROLOG dan LISP merupakan dua contoh bahasa pemrograman yang ditujukan untuk
menangani kecerdasan buatan

PEMOGRAMAN DELPHI
Delphi merupakan suatu bahasa pemrograman visual dan berorientasi obyek. Tidak hanya Delphi, di pasaran juga terdapat Visual Basic (VB), Visual C++, FoxPro, dan KyLix. Struktur dan sintak bahasa pemrograman Delphi mirip dengan bahasa Pascal. So... bagi Anda yang pernah mengenal Pascal mudah-mudahan lebih cepat menguasai Delphi.
Sesuai namanya WINDOWS, maka ciri khas aplikasi under WINDOWS adalah adanya window-window atau jendela. Dalam pemrograman visual, window-window ini disebut FORM. So... dalam belajar Delphi nanti, Anda akan berhadapan dengan banyak sekali FORM.DELPHI
Tampilan Delphi adalah seperti yang Anda lihat pada gambar di bawah ini:

Saat Anda masuk pertama kali ke dalam Delphi, Anda akan langsung diberikan suatu form kosong secara otomatis. Form ini merupakan tempat kita meletakkan obyek-obyek sekaligus mendesain tampilannya. So... untuk mendesain tampilan supaya menarik, Anda harus memiliki jiwa artistik dan seni :-)
About PROPERTI

Seperti telah dijelaskan di depan bahwa setiap obyek dalam Delphi (termasuk form) pasti memiliki properti. Properti dapat diubah-ubah sesuai keinginan. Untuk melihat properti dari suatu obyek, langkahnya:
- klik obyek yang dipilih
- properti dapat dilihat pada bagian OBJECT INSPECTOR (sebelah kiri)
Untuk mengganti properti obyek cukup mengganti value yang ada di kolom sebelah kirinya.
About EVENT

Selain properti, dalam Object Inspector juga terdapat Event dari suatu obyek. Event digunakan untuk membuat procedure yang diaktifkan (trigered) lewat sebuah event. Agak membingungkan ya?? OK, I’ll make it simple as I can.
Dalam aplikasi Windows, tentu Anda sering klak-klik tombol sana sini. Setiap kali Anda klik tombol pasti ada proses sesuatu yang terjadi bukan? itu adalah salah satu contoh penggunaan event pada obyek yang dalam hal ini obyeknya adalah tombol (button). Macam-macam event yang ada banyak sekali, pada contoh tersebut eventnya adalah “ON CLICK” karena suatu proses akan terjadi ketika kita mengCLICK tombol. Untuk mengeksplorasi macam-macam event akan kita bahas dalam studi kasus pada bab berikutnya.

Untuk memberikan event suatu obyek, caranya:
- Klik obyek yang akan diberikan event
- Klik menu tab EVENT pada OBJECT INSPECTOR
- Pilih event yang sesuai
- Double click kotak kosong di sebelah kanan event yang dipilih

Setelah itu Delphi akan memunculkan window sbb:

Window tersebut digunakan untuk menuliskan program yang akan dieksekusi ketika suatu obyek dikenai event.

Tips:

Apabila Anda tidak melihat OBJECT INSPECTOR, atau tiba-tiba OBJECT INSPECTORNYA hilang, jangan panik. Untuk menampilkannya kembali caranya Anda tekan F11 atau klik menu VIEW > OBJECT INSPECTOR

Making New Project

Aplikasi atau program yang kita buat dalam Delphi menggunakan istilah “project”. Untuk membuat project baru, langkahnya:
- Klik menu FILE
- Pilih NEW APPLICATION

Setelah itu Delphi akan menyediakan form untuk membuat project baru.

Saving Project

Dalam Delphi ada 3 buah file utama (*.dpr, *.pas dan *.dfm).

1. *.dpr adalah file proyek yang dibuat berisi program kecil untuk :
• mendefinisikan Unit yang ada dalam file proyek
• menginisialisasi data
• membangun form
• menjalankan aplikasi
2. *.pas adalah file unit-unit (pascal code file), bisa terdiri satu atau banyak file dalam satu project. File inilah tempat kita menuliskan listing program.
3. *.dfm adalah file definisi Form (special pseudo code file), bisa terdiri satu atau banyak file. Isi dari file ini adalah properti-properti dari obyek dalam suatu form. Jika formnya lebih dari satu, maka file ini juga akan lebih dari satu.

Catatan:
Setiap Form (.dfm) harus memiliki sebuah Unit (.pas), tetapi Anda dapat memiliki Unit tanpa sebuah Form (hanya kode saja).

Untuk proses penyimpanan program langkahnya:
- Pilih submenu Save Project atau Save Project As pada menu File, dan Delphi akan menanyakan nama file source code untuk unit (*.pas) dan nama file proyeknya (*.dpr).

Tips:

Jangan menyimpan file project dan unit dengan nama yang sama. Hal ini membuat proses penyimpanan gagal.


Membuka File Project

Untuk membuka file project caranya pilih menu OPEN PROJECT > pilih file project yang diinginkan.

Tips:
Ingat!! Jangan membuka file project dengan menu OPEN, karena dapat dimungkinkan Anda membuka file unit. Kalau hal ini terjadi ketika Anda masih bekerja dengan suatu project, maka file unit yang Anda buka tadi akan menjadi satu dengan project yang sedang Anda kerjakan.

Struktur Isi File Project (*.dpr), Unit (*.pas), dan Form (*.dfm)


A. File Project
Kita dapat melihat isi file project, caranya klik menu PROJECT > VIEW SOURCE. Berikut ini adalah salah satu contoh bentuk isi file project:

Sepertinya secara sekilas strukturnya mirip dengan Pascal?? Lha iya emang mirip Pascal, karena basic dari bahasa Delphi adalah Pascal. Perintah Unit1 in 'Unit1.pas' {Form1}; bermakna bahwa dalam PROJECT1 terdapat satu buah form dengan nama formnya adalah FORM1. Dalam FORM1 memiliki file unit dengan nama UNIT1.PAS. Perintah yang sama akan muncul kembali apabila terdapat form dan unit yang lebih dari satu pada PROJECT1.

Tips:
Jangan coba-coba untuk utak-atik atau mengubah file ini, karena apabila Anda tidak memahami maksudnya, bisa rusak projectnya.
B. File Unit
Berikut ini adalah salah satu contoh isi dari file unit:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls,
Forms, Dialogs;

type
TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.DFM}

<----- tempat menuliskan event-event -------->

end.

Tips:
Seperti halnya file project, hindari pengubahan atau penghapusan bagian dari isi file unit di atas kecuali bagian program untuk eventnya.

C. File Form
Berikut ini adalah contoh isi file *.dfm

object Form1: TForm1
Left = 192
Top = 107
Width = 544
Height = 375
Caption = 'Form1'
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = []
OldCreateOrder = False
PixelsPerInch = 96
TextHeight = 13

object Button1: TButton
Left = 120
Top = 16
Width = 75
Height = 25
Caption = 'Button1'
TabOrder = 0
OnClick = Button1Click
end
end

File tersebut menginformasikan tentang properti yang dimiliki oleh suatu file unit atau suatu form. Dalam file di atas tampak bahwa terdapat 2 buah obyek dalam suatu form/unitm yaitu obyek form itu sendiri dan obyek yang kedua adalah tombol (button).

Meletakkan Komponen dalam Form

Istilah komponen di atas memiliki arti yang sama dengan obyek. Seperti dijelaskan sebelumnya bahwa kita dapat meletakkan dan mengatur obyek/komponen dalam form. Komponen-komponen dalam Delphi sangat banyak sekali. Semakin tinggi versinya jumlah komponennya semakin banyak. Untuk memudahkan mengingat-ingat letak komponen, maka komponen-komponen dalam Delphi dikelompokkan dalam Component Palletes.

Ada beberapa cara menempatkan komponen ke form.
- Pilih komponen (klik komponen yang diinginkan) pada Components Palette kemudian klik pada form dimana komponen itu akan diletakkan.
- Klik ganda pada komponen yang diinginkan, maka komponen tersebut akan ditambahkan pada form
- Anda dapat menggunakan Copy dan Paste bila ingin membuat komponen yang sama yang sudah ada pada form. Caranya Shift-Klik kiri pada komponen yang ada di form, lalu pilih menu Copy (Ctrl-C) kemudian pilih menu Paste (Ctrl-V).

Menghapus Komponen

Untuk menghapus komponen yang sudah diletakkan dalam form caranya cukup mudah. Caranya sama seperti ketika Anda menghapus obyek dalam MS WORD dan konco-konconya, yaitu pilih/klik komponen yang akan dihapus, trus tekan DELETE.

Menghapus Event

Untuk menghapus event, mmm... ini caranya agak sedikit rumit.
Perhatikan file unit yang di dalamnya terdapat dua event di bawah ini.

unit Unit1;

interface

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs;

type
TForm1 = class(TForm)
Button1: TButton;
Button2: TButton;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.Button1Click(Sender: TObject);
begin
...
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
...
end;

end.
Misalkan Anda ingin menghapus event 1, caranya blok event 1 tersebut kemudian hapus (DELETE). Kemudian hapus pula perintah
procedure Button1Click(Sender: TObject); yang terletak pada bagian TYPE.
Selanjutnya apabila Anda me-run program, Anda akan dikonfirmasi oleh Delphi dengan pertanyaan “bla..bla..bla..... Remove the reference?”, Jawab saja dengan YES.

Delphi diimplementasikan.

A. Studi Kasus I – Bekerja dengan Form
Dalam studi kasus ini, kalian diminta membuat program sederhana khususnya untuk event – handling. Desain program adalah seperti dibawah ini.



Ubahlah properti setiap komponen yang ada seperti di bawah ini:
Komponen Properti Value
Form1 Caption Contoh Event Handling
Height 101
Name Frmkasus1
Width 234
Label1 Caption (kosongkan)
Name Lblstatus
Button1 Caption Tombol I
Name Btnpertama
Button2 Caption Tombol II
Name Btnkedua

Skenario:
Apabila Button1 ditekan/diklik, maka Label1 akan menampilkan teks ‘Anda menekan tombol pertama’ dan warna form berubah menjadi merah, sedangkan apabila Button2 diklik, maka Label1 akan menampilkan teks ‘Anda menekan tombol kedua’ dan warna form berubah menjadi hijau.

Membuat event:
Kita akan memberi event pada Button1, caranya klik sekali pada Button1, buka events pada Object Inspector, double klik di sebelah kanan OnCLICK dan lengkapi procedure sehingga menjadi seperti di bawah ini:

procedure TFrmkasus1.BtnpertamaClick(Sender: TObject);
begin
Lblstatus.Caption := 'Anda menekan tombol pertama';
Frmkasus1.Color := clred;
end;
Perintah Lblstatus.Caption := 'Anda menekan tombol pertama'; artinya adalah memberi value suatu string pada properti caption dari komponen dengan nama Lblstatus (label1). Sedangkan perintah FrmKasus1.Color := clred; bermakna bahwa properti color dari komponen FrmKasus1 (form1) diubah menjadi clred(merah).

Dari keterangan di atas, dapat disimpulkan bahwa kalian dapat mengubah properti suatu komponen dengan menggunakan code perintah seperti di atas (tidak menggunakan Object Inspector).

Dengan cara yang hampir sama, lakukan untuk Button2.
Setelah selesai kalian bisa RUN dengan mengklik menu RUN > pilih RUN atau tekan F8.

Untuk keluar dari mode RUN (kembali ke mode EDIT), klik menu RUN > PROGRAM RESET atau tekan CTRL+F2. Dibawah ini adalah tampilan ketika dalam mode RUN.