Ciri-ciri bahasa aturcara
7.6 Ciri-ciri bahasa aturcara
Bhs pengturcrn boleh dikelskn berdsrkn ciri-ciri bhs tersebut seperti impertif, berorientsikn objek, fungsi, logik, selri, berselerk dn skrip. etip ciri- ciri ini mempunyi kebikn dn kelemhn. Beberp contoh bhs turcr dlh seperti berikut.
bhs
thun FA
kegunn
1956 Lisp
penghitungn sinti k
kecergsn butn
1974 CBL
C pembngunn sistem
1960 isul Bsic
pernign
1990 C++
indow
1984 Jv
pembngunn sistem
1995 ython
pembngunn sistem
1990 Go
kegunn m
2010 Impertif bermksud rhn, suruhn tu perinth. leh itu, bhs impertif d-
internet
lh bhs di mn setip rhn untuk menyelesikn mslh dinytkn dengn je- ls. Arhn-rhn ini kn dilksnkn lngkh demi lngkh. Contoh yng setr ilh resepi mskn. Dlm bhs ini, kedh yng digunkn dlh ’but ini, kemu- din but itu’. Contoh bhs impertif dlh seperti C, Ad, C++, scl, odul 2, FA, CBL, Algol 68, L/1, imul, uring, beron dn BAIC. Kdng kl i disebut jug sebgi bhs prosedur. Ide ss dlm bhs impertif dlh, peng- gun perlu menytkn setip lngkh yng diperlukn dlm menyelesikn mslh.
ebgi contoh,kit dimint mencetk semu nombor gnjil ntr 1 dn 20, mk kod dlm bhs impertif dlh;
for(i=1;i<=20;i++) if (i % 2 != 0) printf("ganjil %d\n",i);
Bhs berorientsikn objek dicipt untuk membngunkn sistem yng besr dn kompleks. Kebiknny dlh kemudhn dlm pengurusn sistem, kemmpun un- tuk mengubh sistem secr tertur dn penggunn semul komponen dlm sistem yng bru.
Ide ss ilh untuk fokus kepd objek dlm sesutu sistem, bukn kepd fungsi yng berlku dlm stu sistem. Konsep penting dlm bhs berorientsikn objek dlh kels, objek, enkpsulsi, wrisn, polimorphism dn iktn dinmik.
tu kels menerngkn stu objek, di mn objek ini mengndungi dt tentng objek dn suruhn yng boleh diproses oleh objek. ebgi contoh, penggun ingin memodelkn stu restorn. Berikut dlh contoh bhs bersskn 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'
Klu kit teliti, kod ini menerngkn tentng tig objek; Pekerja, TukangMasak dn Pelayan . bjek Pekerja mempunyi dt tentng nm, gji dn suruhn bgimn mengir kenikn gji. bjek TukangMasak dn Pelayan mempunyi dt tentng kerj yng dilkukn seperti ”msk luk” dn ”melyn pelnggn”.
Konsep wrisn membolehkn penggun menghsilkn stu objek bru bersskn objek yng sedi d. ebgi contoh, objek TukangMasak dlh wrisn dri objek Pekerja . Ini bermkn, objek TukangMasak mempunyi dt dn suruhn yng sm dengn 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 kebikn bhs bersskn objek ilh objek boleh digun semul dlm tur cr yng lin. Ini memudhkn dn memperceptkn pembngunn pliksi. Bhs bersskn objek mul diperkenlkn pd thun 1970 dlm bhs imul, diikuti oleh bhs mlllk dn C++. Contoh-contoh bhs objek dlh C++, mlltlk, Jv dn bjective-C, bject-riented scl, Delphi, Bet, Hyperlk, Limbo, ython dn Eifel. Bhs jenis ini muli mendpt perhtin besr pd dekd 80n dn 90n.
Bhs bersskn logik fokus kepd penytn mslh, bukn bgimn untuk menyelesikn mslh. istem dlh bertnggungjwb untuk menyelesikn ms- lh yng dinytkn. Bhs ini bersskn logik, i itu bersskn fkt dn perturn.
7.6. CIRI-CIRI BAHASA ATURCARA 147 Fkt dn perturn dinytkn dlm bentuk penytn if-then. ebgi contoh, peng-
gun boleh nytkn fkt dn perturn seperti berikut; if X ayah Y dan Y ayah Z, then X adalah datuk Z.
Dlm menulis tur cr logik, penggun menggunkn logik Horn, i itu stu pe- nytn yng menggunkn if-then. emu fkt dn perturn kn dinytkn dlm bentuk logik Horn. elnjutny, penggun kn menytkn mslh yng ingin dise- lesikn. istem kn cub menyelesikn mslh tersebut bersskn fkt dn per- turn yng telh diberikn. ebgi contoh, kit boleh mklumt berikut bersskn 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)
elnjut kit nytkn fkt berikut; pelakon{ali}
kaya(ali) Akhir sekli, kit boleh mennykn kepd sistem soln berikut, yng bermksud
adalah ali gembira? ; ?-gembira(ali)
istem kn memberikn jwbn y tu tidk, berdsrkn mklumt yng dibe- rikn sebelum ini. Contoh bhs logik dlh rolog. Bhs bersskn fungsi meneknkn kepd apa yng perlu dihitung, tidk ke- pd bagaimana untuk menghitung. Atur cr dlh dlm bentuk fungsi, i itu stu fungsi yng hmpir setr dengn fungsi mtemtik. Bhs fungsi berdsrkn kepd penilin terhdp ungkpn yng mengndungi fungsi. Kod yng ditulis dlm bh- s fungsi lzimny singkt dn pdt. ebgi contoh, untuk mendpt nombor gnjil ntr 1 dn 20, tur cr bersskn fungsi dlh seperti berikut;
[x|x<-[1..20];x mod 2 = 1] Contoh bhs fungsi dlh seperti Lisp, F, cheme, Common Lisp, Hope, tn-
drd L, irnd, Hskell, Hugs, Lucid, F. Bhs skrip dlh bhs terjemh yng lzimny dihsilkn untuk stu tujun yng tertentu. I boleh digunkn untuk membngunkn prototip secr cept dn pnts. Bhs ini bersift mudh lih ntr berbgi jenis pelntr komputer. is- tem yng dibngunkn dlm bhs skrip dlh lebih perlhn. Contoh bhs skrip dlh ython, ruby dn H.
148 BAB 7. BAHASA PENGATURCARAAN