Tölvumál - 01.07.1996, Blaðsíða 33

Tölvumál - 01.07.1996, Blaðsíða 33
Júlí 1996 Java Eftir Þorstein Kristinsson Inngangur Þegar ný forritunarmál koma fram á sjónarsviðið er viðbúið að maður spyrji sjálfan sig hvort það sé virkilega þörf fyrir enn eitt for- ritunarmálið. Er ekki til eitthvað annað forritunarmál sem gerir ná- kvæmlega það sama? Þetta er það sem ég spurði sjálfan mig þegar ég heyrði fyrst minnst á Java. Til að byrja með var ég mjög vantrú- aður á þetta nýja, frábæra forrit- unarmál sem allir kepptust um að lofa í hástert. Til að byrja með virt- ist þetta vera einfalt mál sem allir áttu að geta notað til að hressa upp á heimasíðurnar sínar. Þegar ég sá að forskriftin var ekki ósvipuð C++ fóru að renna á mig tvær grímur. Eftir að hafa eytt ári í að komast inn í C++ var ég varla farinn að geta gert nokkuð af viti í því og óaði mig við þeirri vinnu sem færi í að læra Java ef það væri eitthvað svipað. Raunin varð önn- ur. í byrjun þessa árs kom tæki- færið til að taka áskoruninni. Sem lokaverkefni í Tölvuháskólanum ætluðum við félagarnir að skrifa fullvaxið forrit í Java sem átti að vera hægt að keyra jafnt í Win- dows95 sem og Solaris stýrikerf- um yfir Internetið. Við eyddum drjúgum tíma í að hanna forritið og við notuðumst við hlutbundnar aðferðir. Raunar er Java mjög hlut- bundið forritunarmál enda rák- umst við á það að ýmsar óhlut- bundnar venjur er einfaldlega ekki hægt að útfæra í Java. Færslur, eða „struct“, í C++ eru ekki til, það er aðeins hægt að búa til klasa. Það kann að hljóma fáránlegt í fyrstu er í raun gott dæmi um fullkomna hlutbyndingu. Þegar maður er einu sinni búinn að læra C++ er mjög létt að skipta yfir í Java. Raunar er svo miklu þægilegra að skrifa forrit í Java að allur tíminn fer í að forrita en ekki í að berjast við umhverfið eins og maður lendir ósjaldan í, t.d. í Visual C++. Það ber þó að taka fram að þeir sem eru lítið inn í C++ og hlutbundnum hugsunarhætti munu mjög líklega lenda í vandræðum með Java. Engir bendar? Þegar Java kom fram á sjónar- sviðið var öllum gert ljóst að það yrðu engir bendar notaðir. Þetta gripu allir alvöru C++ forritarar á lofti og töldu þar með að Java væri handónýtt. En þeir höfðu rangt fyrir sér. Þó svo að tagið bendir sé hvergi sjáanlegt þá er hugmynda- fræðin öll til staðar. Það er ekki hægt að búa til tilvik af klasa nema að hafa fyrst búið til handfang á klasann. Handfangið má benda á klasann sjálfan eða einhvern þann klasa sem hann erfir frá. Hand- föngin eru mjög meðfærileg, það er hægt að senda þau sem færi- breytur, það er hægt að láta þau benda á nýja hluti, tvö handföng geta bent á sama hlutinn o.s.frv. En hvað með fylki? Er ekki nauð- synlegt að nota benda á þau? Nei, ekkert frekar. Fylkjaaðgerðir eru mjög handhægar og öll meðhöndl- un á fylkjum fylgja sömu reglum og meðhöndlun á hlutum. Fyrst er búið til handfang á fylkið og svo er búið til tilvik af því. Ef það hljómar fráhrindandandi þá er það mun einfaldara en það hljómar. Þar fyrir utan er einn mjög stór kostur við meðhöndlun á hlutum og fylkjum í Java en það er innbyggð ruslatæming. Allir hlutir og öll fylki sem enginn bendir er á, er eytt sjálfvirkt. Stýrikerfisóháð Java er stýrikerfisóháð. Það táknar að allir geta keyrt Java for- rit sama hvaða stýrikerfi er notað. Eins og er eru öll Java forrit túlkuð og dregur það nokkuð úr vinnslu- hraða þeirra. Það kemur þó ekki mikið að sök þar sem meginuppi- staða flestra Java forrita er ýmist samskipti við notendur í gegnum grafísk notendaskil eða netsam- skipti. Skipta má Java forritum í tvo flokka. Annars vegar venjuleg forrit sem geta gert allt það sem venjuleg forrit geta og hins vegar svokölluð Applet sem eru keyrð frá Html-síðum. Appletin verður að keyra frá vefrýni eins og t.d. Net- scape. Appletið keyrir í sýndarvél og getur ekki á nokkurn hátt haft bein samskipti við tölvuna sem það keyrir á. Hver sem er getur sett til- vísun á Applet á heimasíðuna sína og ómögulegt að vita fyrirfram hvað það gerir. Þess vegna hafa verið settar mjög strangar öryggis- kröfur fyrir Applet. Þeim er t.d. bannað að hafa samskipti við disk notandans og einungis er leyfilegt að hafa samskipti við þann server Tölvumál - 33

x

Tölvumál

Beinir tenglar

Ef þú vilt tengja á þennan titil, vinsamlegast notaðu þessa tengla:

Tengja á þennan titil: Tölvumál
https://timarit.is/publication/239

Tengja á þetta tölublað:

Tengja á þessa síðu:

Tengja á þessa grein:

Vinsamlegast ekki tengja beint á myndir eða PDF skjöl á Tímarit.is þar sem slíkar slóðir geta breyst án fyrirvara. Notið slóðirnar hér fyrir ofan til að tengja á vefinn.