Ciri-ciri bahasa aturcara

7.6 Ciri-ciri bahasa aturcara

Bhs pengturcrn boleh dikelskn berdsrkn ciri-ciri bhs tersebut seperti impertif, berorientsikn objek, fungsi, logik, selri, berselerk dn skrip. etip ciri- ciri ini mempunyi kebikn dn kelemhn. Beberp contoh bhs turcr dlh seperti berikut.

bhs

thun FA

kegunn

1956 Lisp

penghitungn sinti k

kecergsn butn

1974 CBL

C pembngunn sistem

1960 isul Bsic

pernign

1990 C++

indow

1984 Jv

pembngunn sistem

1995 ython

pembngunn sistem

1990 Go

kegunn m

2010 Impertif bermksud rhn, suruhn tu perinth. leh itu, bhs impertif d-

internet

lh bhs di mn setip rhn untuk menyelesikn mslh dinytkn dengn je- ls. Arhn-rhn ini kn dilksnkn lngkh demi lngkh. Contoh yng setr ilh resepi mskn. Dlm bhs ini, kedh yng digunkn dlh ’but ini, kemu- din but itu’. Contoh bhs impertif dlh seperti C, Ad, C++, scl, odul 2, FA, CBL, Algol 68, L/1, imul, uring, beron dn BAIC. Kdng kl i disebut jug sebgi bhs prosedur. Ide ss dlm bhs impertif dlh, peng- gun perlu menytkn setip lngkh yng diperlukn dlm menyelesikn mslh.

ebgi contoh,kit dimint mencetk semu nombor gnjil ntr 1 dn 20, mk kod dlm bhs impertif dlh;

for(i=1;i<=20;i++) if (i % 2 != 0) printf("ganjil %d\n",i);

Bhs berorientsikn objek dicipt untuk membngunkn sistem yng besr dn kompleks. Kebiknny dlh kemudhn dlm pengurusn sistem, kemmpun un- tuk mengubh sistem secr tertur dn penggunn semul komponen dlm sistem yng bru.

Ide ss ilh untuk fokus kepd objek dlm sesutu sistem, bukn kepd fungsi yng berlku dlm stu sistem. Konsep penting dlm bhs berorientsikn objek dlh kels, objek, enkpsulsi, wrisn, polimorphism dn iktn dinmik.

tu kels menerngkn stu objek, di mn objek ini mengndungi dt tentng objek dn suruhn yng boleh diproses oleh objek. ebgi contoh, penggun ingin memodelkn stu restorn. Berikut dlh contoh bhs bersskn objek.

class Pekerja: def __init__(self,nama,gaji=0): self.nama = nama self.gaji = gaji

def kenaikanGaji(self,peratus): self.gaji = self.gaji + (self.salary*peratus)

146 BAB 7. BAHASA PENGATURCARAAN def kerja(self):

print self.nama, `buat kerja' def __repr__(self): return `Pekerja: name:%s gaji=%s' % (self.nama,self.gaji)

class TukangMasak(Pekerja): def __init__(self,name): Pekerja.__init__(self,nama,500) def kerja(self): print self.nama,'masak lauk'

class Pelayan(Pekerja) def __init__(self,nama) Pekerja.__init__(self,nama,400) def kerja(self) print self.name,'melayan pelanggan'

Klu kit teliti, kod ini menerngkn tentng tig objek; Pekerja, TukangMasak dn Pelayan . bjek Pekerja mempunyi dt tentng nm, gji dn suruhn bgimn mengir kenikn gji. bjek TukangMasak dn Pelayan mempunyi dt tentng kerj yng dilkukn seperti ”msk luk” dn ”melyn pelnggn”.

Konsep wrisn membolehkn penggun menghsilkn stu objek bru bersskn objek yng sedi d. ebgi contoh, objek TukangMasak dlh wrisn dri objek Pekerja . Ini bermkn, objek TukangMasak mempunyi dt dn suruhn yng sm dengn objek Pekerja.

objek tukang masak pekerja

terdapat 3 objek, merupakan warisan

nama

pekerja, tukang masak, pelayan kepada objek pekerja

gaji

buat kerja pelyan

tukang masak nama gaji

nama

objek mempunyai melayan

gaji

data dan suruhan pelanggan

masak lauk

setiap objek mempunyai kaedah didalamnya (enkapsulasi)

tu kebikn bhs bersskn objek ilh objek boleh digun semul dlm tur cr yng lin. Ini memudhkn dn memperceptkn pembngunn pliksi. Bhs bersskn objek mul diperkenlkn pd thun 1970 dlm bhs imul, diikuti oleh bhs mlllk dn C++. Contoh-contoh bhs objek dlh C++, mlltlk, Jv dn bjective-C, bject-riented scl, Delphi, Bet, Hyperlk, Limbo, ython dn Eifel. Bhs jenis ini muli mendpt perhtin besr pd dekd 80n dn 90n.

Bhs bersskn logik fokus kepd penytn mslh, bukn bgimn untuk menyelesikn mslh. istem dlh bertnggungjwb untuk menyelesikn ms- lh yng dinytkn. Bhs ini bersskn logik, i itu bersskn fkt dn perturn.

7.6. CIRI-CIRI BAHASA ATURCARA 147 Fkt dn perturn dinytkn dlm bentuk penytn if-then. ebgi contoh, peng-

gun boleh nytkn fkt dn perturn seperti berikut; if X ayah Y dan Y ayah Z, then X adalah datuk Z.

Dlm menulis tur cr logik, penggun menggunkn logik Horn, i itu stu pe- nytn yng menggunkn if-then. emu fkt dn perturn kn dinytkn dlm bentuk logik Horn. elnjutny, penggun kn menytkn mslh yng ingin dise- lesikn. istem kn cub menyelesikn mslh tersebut bersskn fkt dn per- turn yng telh diberikn. ebgi contoh, kit boleh mklumt berikut bersskn logik Horn;

gembira(x)<-kaya(x),terkenal(x) gembira(x)<-muda(x),dalam_percintaan(x) gembira(x)<-tua(x),bijaksana(x) terkenal(x)<-pelakon(x) terkenal(x)<-penyanyi(x)

elnjut kit nytkn fkt berikut; pelakon{ali}

kaya(ali) Akhir sekli, kit boleh mennykn kepd sistem soln berikut, yng bermksud

adalah ali gembira? ; ?-gembira(ali)

istem kn memberikn jwbn y tu tidk, berdsrkn mklumt yng dibe- rikn sebelum ini. Contoh bhs logik dlh rolog. Bhs bersskn fungsi meneknkn kepd apa yng perlu dihitung, tidk ke- pd bagaimana untuk menghitung. Atur cr dlh dlm bentuk fungsi, i itu stu fungsi yng hmpir setr dengn fungsi mtemtik. Bhs fungsi berdsrkn kepd penilin terhdp ungkpn yng mengndungi fungsi. Kod yng ditulis dlm bh- s fungsi lzimny singkt dn pdt. ebgi contoh, untuk mendpt nombor gnjil ntr 1 dn 20, tur cr bersskn fungsi dlh seperti berikut;

[x|x<-[1..20];x mod 2 = 1] Contoh bhs fungsi dlh seperti Lisp, F, cheme, Common Lisp, Hope, tn-

drd L, irnd, Hskell, Hugs, Lucid, F. Bhs skrip dlh bhs terjemh yng lzimny dihsilkn untuk stu tujun yng tertentu. I boleh digunkn untuk membngunkn prototip secr cept dn pnts. Bhs ini bersift mudh lih ntr berbgi jenis pelntr komputer. is- tem yng dibngunkn dlm bhs skrip dlh lebih perlhn. Contoh bhs skrip dlh ython, ruby dn H.

148 BAB 7. BAHASA PENGATURCARAAN