• No results found

Shkenca Kompjuterike I - Ligjerata 1.docx

N/A
N/A
Protected

Academic year: 2021

Share "Shkenca Kompjuterike I - Ligjerata 1.docx"

Copied!
18
0
0

Loading.... (view fulltext now)

Full text

(1)

SHKENCA KOMPJUTERIKE 1

SHKENCA KOMPJUTERIKE 1

(SHK1)

(SHK1)

Fatos Maxhuni

Fatos Maxhuni ([email protected])([email protected]) Fakulteti i Shkencës Kompjuterike dhe Inxhinierisë Fakulteti i Shkencës Kompjuterike dhe Inxhinierisë

Hyrje në SHK1

Hyrje në SHK1

•Cili është qëllimi i kësaj lënde ?Cili është qëllimi i kësaj lënde ?

-- Do të Do të jetë fillimi i një jetë fillimi i një edukimi tuedukimi tuaj si Prograj si Programeramer(Inxhinier (Inxhinier të softutë softuerit)erit) •

•Cila është rëndësia e kësaj lënde ?Cila është rëndësia e kësaj lënde ?

-- Nga kjo lëndë do të fitoni dijeninë si të përdorni gjuhNga kjo lëndë do të fitoni dijeninë si të përdorni gjuhën programën programuese Javauese Java për të ndërtuar softuer

(2)

Llojet softuerëve (Programeve)

Llojet softuerëve (Programeve)

• Kompjuterët janë pajisje të fuqishme harduerike që nuk mund të bëjnë asgjëKompjuterët janë pajisje të fuqishme harduerike që nuk mund të bëjnë asgjë pa pjesën softuerike

pa pjesën softuerike •

• Në përgjithësi ekzistojnë tri lloje të Në përgjithësi ekzistojnë tri lloje të softuerëvesoftuerëve::

-- SistemeSistemet t operatoperativeive

-- PrograProgramet met aplikataplikativeive

-- VeglVeglat pat për zhër zhvillim villim të softë softuerittuerit(SDK)(SDK) •

• Si zhvillues të softuerit mund të ndodhë të shkruani njërën apo që të tri llojetSi zhvillues të softuerit mund të ndodhë të shkruani njërën apo që të tri llojet e softuerëve të lartpërmendur

e softuerëve të lartpërmendur

Programet e Sistemeve Operative (O/S)

Programet e Sistemeve Operative (O/S)

•O/S programet e kontrollojO/S programet e kontrollojnë harduerin dhe i në harduerin dhe i mundësojnë programmundësojnë programeveeve aplikative të

aplikative të ekzekutohekzekutohenen •

•O/S kryesisht janë të ndërtuara që O/S kryesisht janë të ndërtuara që të ekzekutohen në platforma të veçantatë ekzekutohen në platforma të veçanta hardu

harduerike, p.sh. erike, p.sh. në x86në x86apo MACapo MAC •

•Kryesisht këto janKryesisht këto janë programet më kompë programet më komplekse dhe më të vështira për t’ulekse dhe më të vështira për t’u

ndërtuar dhe testuar ndërtuar dhe testuar •

(3)

Programet Aplikative

Programet Aplikative

•Këto programe kryejnë punë të rëndësishme për shfrytëzuesitKëto programe kryejnë punë të rëndësishme për shfrytëzuesit •

• Aplikacionet kryesisht  Aplikacionet kryesisht janë të ndjanë të ndërtuara që të ekzeërtuara që të ekzekutohen në kutohen në sistemesisteme

operative

operative të veçantatë veçantadhe platforma të veçdhe platforma të veçanta harduerikeanta harduerike •

•Shfrytëzuesit kryesisht duhet të ofrojnë informata të Shfrytëzuesit kryesisht duhet të ofrojnë informata të hollësishme përhollësishme për funksionalitetin që programi duhet ta ketë, në

funksionalitetin që programi duhet ta ketë, në mënyrë që programerët tëmënyrë që programerët të ndërtojnë aplikacionin specifik që përmbushë kërkesat e shfrytëzuesit ndërtojnë aplikacionin specifik që përmbushë kërkesat e shfrytëzuesit •

•PP.sh. Word, PowerPoint, N.sh. Word, PowerPoint, Netscape, etscape, etjetj

 Veglat për zhvillim të soft

 Veglat për zhvillim të softuerëve

uerëve

• Veglat  Veglat për zhvillim të për zhvillim të softuerëve (ansoftuerëve (ang. Software Deg. Software Development Kit -velopment Kit -SDK) janëSDK) janë programe specifike që i mundësojnë zhvilluesve të programeve të shkruajnë programe specifike që i mundësojnë zhvilluesve të programeve të shkruajnë programe k

programe kompjuterike dhe t’i ompjuterike dhe t’i testojnë atotestojnë ato

•Zhvilluesit me pZhvilluesit me përvojë kryesisht përvojë kryesisht përdorin “Integrated ërdorin “Integrated DevelopmentDevelopment

Environment

Environment – – IDE”IDE”, por m, por mund të përdoren und të përdoren edhe editorë edhe editorë të thjeshtë për të thjeshtë për tëtë

kompajluar/ekzekutuar (interpretuar) programin kompajluar/ekzekutuar (interpretuar) programin •

•P.sh.P.sh.

-- IDE: Dr Java IDE, NetbIDE: Dr Java IDE, Netbeans IDE, Eclipeans IDE, Eclipse, etjse, etj

(4)

Llojet e “

Llojet e “Us

User

er

In

Inte

terf

rface

ace” 

” 

-ëve

-ëve

•Janë Janë dy lloje domdy lloje dominuese inuese të “të “useruserinterfinterfaceace” ” -ëve:-ëve:

--CoCommmmananddLinLinee InInteterfrfacacee (C(CLILI))

-- GrGrapaphihicacall UsUsererInInteterfrfacacee (G(GUI)UI) •

•Si zhvillues të softuerit ju duhet të jeni në gjendje të shkruani programe përSi zhvillues të softuerit ju duhet të jeni në gjendje të shkruani programe për dy llojet e “

dy llojet e “useruserinteinterfarfacece” ” -ëve-ëve

Llojet e “

Llojet e “Us

User

er

In

Inte

terf

rface

ace” 

” 

-ëve

-ëve

•ComCommanmanddLinLineeInInterterfafacece(C(CLILI))

-- Në monitor parNë monitor paraqitet kërkesa që shaqitet kërkesa që shfrytëzuesi të fut ndonjë frytëzuesi të fut ndonjë të dhënë.të dhënë.

-- ShfrytShfrytëzuesi i fut të dhënat e kërkuarëzuesi i fut të dhënat e kërkuara, ndërsa progra, ndërsa programi e procesonami e proceson inputi

inputinne shfrye shfrytëzuetëzuesit.sit.

-- Ky është një lloj i vjetër i “Ky është një lloj i vjetër i “useruserinteinterfarfacece” ” -ëve ende i përdorur në disa-ëve ende i përdorur në disa

aplikacione dhe sisteme operative aplikacione dhe sisteme operative

-- Nuk ëshNuk është i përshtatë i përshtatshëm ptshëm për shfrytër shfrytëzim (anëzim (ang. not Userg. not UserFriendFriendly)ly)

(5)

Llojet e “

Llojet e “Use

Use

r

r

Int

Int

erf

erface

ace” 

” 

-ëve

-ëve

• GraGraphiphicalcalUseUserr IntIntererfacfacee (GU(GUI)I)

-- Në monitNë monitor paraqior paraqitet dritartet dritarja me tekst dhe komja me tekst dhe komponenponentete grafigrafike duke ike duke i ofruar shfrytëzuesit opsione të ndryshme

ofruar shfrytëzuesit opsione të ndryshme

-- Shfrytëzuesi përdor “Shfrytëzuesi përdor “mousemouse” ” -in dhe tastierën, të bënë zgjidhje nga-in dhe tastierën, të bënë zgjidhje nga opsion

opsionet e oet e ofruarfruara si da si dhe përhe për të shtë shkruarkruar teksttekst

-- TTani përdorani përdoret më shuet më shumë përmë për shkak se koshkak se komponenmponentët për procesitët për procesimm kompj

kompjuterik kushuterik kushtojnë tanitojnë tanimë lirëmë lirë

-- Është më i Është më i përshtapërshtatshëm pëtshëm për shfryr shfrytëzim (angtëzim (ang. User. User FrienFriendly)dly)

-- PP.sh. Microsoft .sh. Microsoft Windows, Microsoft OfWindows, Microsoft Office, etj.fice, etj.

 Veglat për z

 Veglat për zhvillim të softue

hvillim të softuerëve

rëve

(6)

Përd

Përdorimi

orimi i e

i e

ditori

ditorit

t

të thje

thjeshtë

shtë dhe

dhe Sun

Sun

JDK 

JDK 

•Shkruhet Java kodi në ndonjë editorShkruhet Java kodi në ndonjë editor. File-i . File-i ruhet me të njëjtin emër si ruhet me të njëjtin emër si emri iemri i

klasës

klasës dhe me extdhe me extensionension.. java  java . P. P.sh nëse e kemi klasën HelloW.sh nëse e kemi klasën HelloWorldorldatëherëatëherë

ruhet në file-in me emër HelloWorld.java ruhet në file-in me emër HelloWorld.java •

•Në DOS:Në DOS:

--C:\>C:\>javjavac HelloWac HelloWorld.orld.javjavaa(krij(krijoheohet një file-i it një file-i i ri me ri me praprapashpashtesëtesë.class, në.class, në këtë rast HelloWorld.class 

këtë rast HelloWorld.class ))

--C:\>java C:\>java HelloWoHelloWorldrld (interpret(interpretohet proohet programi) dhgrami) dhe dërgohet outpe dërgohet output-i nëut-i në konsolë

konsolë

-- C:\>exit C:\>exit (del pre(del prej DOS-j DOS-it)it)

 Veglat për zhvillim të soft

 Veglat për zhvillim të softuerëve

uerëve

(7)

Hapat e zhvillimit të softuerit

Hapat e zhvillimit të softuerit

•Modeli klasModeli klasik “Watik “Waterferfall”all”

Edito dhe ruaj Edito dhe ruaj kodin burimor kodin burimor Ndërto kodin e Ndërto kodin e programit programit Ekzekuto programin Ekzekuto programin dhe shih rezultatin dhe shih rezultatin Eroret Eroret Eroret Eroret

Eroret

Eroret

• Gjatë ndërtimit të një programi mund të paraqiten 3 lloje të eroreve:Gjatë ndërtimit të një programi mund të paraqiten 3 lloje të eroreve:

-- CompCompile-tiile-time me errorerror – – që paraqet gabim në sintaksën e programit dhe qëqë paraqet gabim në sintaksën e programit dhe që vërehet

vërehet gjatë kohës së gjatë kohës së kompilimit dhe nukompilimit dhe nuk krijohet file-i me extensionk krijohet file-i me extension .class 

.class 

-- RunRun-ti-time erme errorror – – që paraqitet gjatë ekzekutimit/interpretimit të programit,që paraqitet gjatë ekzekutimit/interpretimit të programit, p.sh. Pjesëtimi me zero e detyron programin të ndërpritet në mënyrë p.sh. Pjesëtimi me zero e detyron programin të ndërpritet në mënyrë  jonormale

 jonormale

-- LoLogigicacall ererrororr – – që do të thotë që programi ekzekutohet normalisht mirëpoqë do të thotë që programi ekzekutohet normalisht mirëpo rezultati nuk është ai i prituri

(8)

Gjuha programuese Java dhe

Gjuha programuese Java dhe

zhvillimi i softuerit

zhvillimi i softuerit

•Gjuhët programueseGjuhët programuese •

•Struktura e programit në JavaStruktura e programit në Java •

•Zgjidhja e problemeveZgjidhja e problemeve •

•Programimi i orientuar/bazuar në objekteProgramimi i orientuar/bazuar në objekte

Gjuhët programuese

Gjuhët programuese

•Gjuhët programuese përdoren nga programerët për të Gjuhët programuese përdoren nga programerët për të shkruar programeshkruar programe

kompjuterike kompjuterike •

•Ndonjë gjuhë programuese është më e mirë për ndonjë lloj të programitNdonjë gjuhë programuese është më e mirë për ndonjë lloj të programit dhe për ndonjë lloj të “user

dhe për ndonjë lloj të “user interface” interface” -it, se -it, se tjetratjetra •

•Me siguri se keni dëgjuar për gjuhë të ndryshme programues si: Cobol,Me siguri se keni dëgjuar për gjuhë të ndryshme programues si: Cobol, Basic, C, C++, Java, C#, etj

(9)

Gjuhët programuese

Gjuhët programuese

•Një gjuhë programuNjë gjuhë programuese specifikon fjalët dhe siese specifikon fjalët dhe simbolet që mund të mbolet që mund të përdorenpërdoren

për të shkruar programe kompjuterike për të shkruar programe kompjuterike •

•Një gjuhë programuNjë gjuhë programuese përdorë rregulla të veçanta ese përdorë rregulla të veçanta që diktojnë se që diktojnë se si fjalëtsi fjalët dhe simbolet mund të kombinohen që të formohen shprehje të vlefshme dhe simbolet mund të kombinohen që të formohen shprehje të vlefshme programuese

programuese •

•Një gjuhë programuese posedon edhe sintaksën edhe semantikën e Një gjuhë programuese posedon edhe sintaksën edhe semantikën e vetvet

Sintaksa dhe semantika

Sintaksa dhe semantika

•Rregullat sintaksore tregojnRregullat sintaksore tregojnë si ë si mund të mund të kombinohen fjalët e rezervuara,kombinohen fjalët e rezervuara, simbolet dhe identifikuesit që të krijohet një program i vlefshëm.

simbolet dhe identifikuesit që të krijohet një program i vlefshëm. •

•Semantika tregon kupSemantika tregon kuptimin e timin e një shprehjeje të vlefshme (çka është një shprehjeje të vlefshme (çka është qëllimiqëllimi

dhe roli i

dhe roli i asaj shprehjeje në atë program)asaj shprehjeje në atë program) •

•Një progrNjë program që është korrekt sa i am që është korrekt sa i përket sintaksës nuk do të thotë sepërket sintaksës nuk do të thotë se

është korrekt edhe për nga semantika është korrekt edhe për nga semantika •

•Një program gjithmonë bënë atë që i themi të bënë,Një program gjithmonë bënë atë që i themi të bënë, e jo çka mendojmë t’ie jo çka mendojmë t’i

themi të bënë themi të bënë

(10)

Nivelet e gjuhëve programuese

Nivelet e gjuhëve programuese

•EkzistoEkzistojnë disajnë disa nivelnivele të e të gjuhgjuhëve programuëve programuese:ese:

-- MMaachchinineeLLananguguaagege -- AAssssememblblyy LaLannguguagagee -- FFouourtrth-h-gegeneneraratitiononlalangnguauagege -- HiHighgh-l-levevelel LaLangnguauagege •

•Çdo lloj i CPU (CentrÇdo lloj i CPU (Central Processingal Processing Unit) e ka gjuhën Unit) e ka gjuhën e vet specifike tëe vet specifike të makinë

makinës (ang. Macs (ang. MachinehineLanguaLanguage). Përbënge). Përbënë instrë instruksiouksionet dhe të dhënatnet dhe të dhënattëtë cilat ekzekutohen direkt nga CPU.

cilat ekzekutohen direkt nga CPU. •

•Gjuhët e tjera kanë rrjedhë nga nevoja që programerët më lehtë tëGjuhët e tjera kanë rrjedhë nga nevoja që programerët më lehtë të shkruajnë dhe lexojnë programet kompjuterike.

shkruajnë dhe lexojnë programet kompjuterike.

Gjuhët programuese

Gjuhët programuese

•Çdo lloj i CPU ekzekuton vetëm programet në një gjuhë të Çdo lloj i CPU ekzekuton vetëm programet në një gjuhë të caktuar tëcaktuar të

makinës (ang. Machine Language) makinës (ang. Machine Language) •

•Një program duhet të përkthehet në gjuhë të makinës para se të mund tëNjë program duhet të përkthehet në gjuhë të makinës para se të mund të ekzekutohet

ekzekutohet •

•Kompajleri (ang. CompKompajleri (ang. Compileri) është një softuer i ileri) është një softuer i veçantë i cili mundësonveçantë i cili mundëson

këtë përkthim të kodit këtë përkthim të kodit •

•Kryesisht ky përkthim është nga një gjuhë e nivelit më të lartë në njëKryesisht ky përkthim është nga një gjuhë e nivelit më të lartë në një

gjuhë specifike të makinës (ang. Machine Languag

gjuhë specifike të makinës (ang. Machine Language) për një lloe) për një lloj tëj të veçantë të CPU

veçantë të CPU •

(11)

Kompajlimi i kodit në Java

Kompajlimi i kodit në Java

•Kompajleri i Java-së bënë përkthimin e JKompajleri i Java-së bënë përkthimin e Java kodit në një rava kodit në një reprezentimeprezentim

specifik të njohur si Jav

specifik të njohur si Java bytecodea bytecodetë ruajtur në një file me prapashtesëtë ruajtur në një file me prapashtesënn .class 

.class  •

•Java bytecode nuk është gjuhë e Java bytecode nuk është gjuhë e makinës për asnjë CPU specifikemakinës për asnjë CPU specifike •

•Një soNjë softuer tftuer tjetër i njohjetër i njohur si inteur si interpretrpreter-ier-i(në r(në rastin tonastin tonë JVMë JVM-- Java Java VirtuaVirtuall

Machine) e interpreton bytecode-in Machine) e interpreton bytecode-in •

•Java njihet si gjuhë neutrale sa i përket arkitekturës së kompjuterëveJava njihet si gjuhë neutrale sa i përket arkitekturës së kompjuterëve •

•Java nuk lidhet me ndonjë Java nuk lidhet me ndonjë makinë specifikemakinë specifike •

•JVM mund të implementohet në çdo lloj të JVM mund të implementohet në çdo lloj të makinësmakinës

Struktura e programit në Java

Struktura e programit në Java

•Në gjuhën programuese Java:Në gjuhën programuese Java:

-- ProProgragrami nmi ndërdërtohtohet nget nga nja një ose ë ose më shmë shumë umë klasklasëë

-- NjNjë klë klasë kasë ka nja një apo ë apo më smë shuhumë atmë atriribubutete

-- NjNjë klë klasë asë ka nka një ajë apo mpo më shë shumumë meë metotodada

-- MetodMetoda përa përmban mban shprehshprehje të je të progrprogramit amit (ang. (ang. progrprogram sam statementatements)ts) •

•Këto terme do të hulumtohen dhe do të shpjegohen më në detal gjatëKëto terme do të hulumtohen dhe do të shpjegohen më në detal gjatë ligjëratave të ardhshme

ligjëratave të ardhshme •

•Çdo klasë e veçantë ruhet në një file me emrin e njëjtë si emri i klasës porÇdo klasë e veçantë ruhet në një file me emrin e njëjtë si emri i klasës por me prapashtesën

me prapashtesën.java .java  •

•Një Java file munNjë Java file mund të ketë më tepër se d të ketë më tepër se një klasë në te,një klasë në te,por vetëm njërapor vetëm njëra mund të ketë qasje publike dhe emërtimi i file-it bazohet në emrin e kësaj mund të ketë qasje publike dhe emërtimi i file-it bazohet në emrin e kësaj klase

klase •

•Një Java aplikacion fillon nga klasa e cila ka metodënNjë Java aplikacion fillon nga klasa e cila ka metodënmain(…)main(…) (shih(shih

shembullin

(12)

Struktura e programit në Java

Struktura e programit në Java

 //komentet

 //komentet për klasënpër klasën pu

publibliccclclasasssMyMyPrProgograramm{{

 //komentet

 //komentet për atributpër atributetet private String

private String emri = “Fatos”;emri = “Fatos”; ……

…… …… ……

 //komentet

 //komentet për metodapër metodatt pub

publiclic statstaticicvoidvoidmainmain(St(Stringring[] [] argvargv){ ){ //nj//njihet ihet edhe edhe sisi “ “the signaturethe signature” ”  …… …… …… …… } } } }

Komentet

Komentet

•KomKomentet brentet brenda kodit njihenda kodit njihen si “en si “inlineinlinedocudocumenmentatiotationn” ”  •

• Ato  Ato futen në futen në kod për kod për të dhëntë dhënë shpjegime ë shpjegime rreth korreth kodit atyre dit atyre që e lexojnqë e lexojnëë

kodin kodin •

•Nuk e afektojnë si punon programi, pasi që ato injorohen nga kompajleriNuk e afektojnë si punon programi, pasi që ato injorohen nga kompajleri •

•Ekzistojnë 3 lloje të Ekzistojnë 3 lloje të komentevekomenteve::

 // Ky

 // Ky koment koment vlen vetëm vlen vetëm për këtë rrpër këtë rreshtesht  /* Ky

 /* Ky koment koment vlen për vlen për krejt bllokun krejt bllokun dhe vlen dhe vlen deri sa të deri sa të gjendet simbgjendet simbolioli terminues

terminuesdhe mund të shkdhe mund të shkoj në disa rreshtoj në disa rreshta */a */  /**

(13)

Identifikuesit (ang. Identifiers)

Identifikuesit (ang. Identifiers)

•Identifikuesit Identifikuesit janë fjalët/simbolet që i përdor progrjanë fjalët/simbolet që i përdor programeriameri në një programnë një program.. •

•Një identifikues mund të ndërtohet nga shkronjat, numrat, shenja (_)Një identifikues mund të ndërtohet nga shkronjat, numrat, shenja (_)

(ang. under

(ang. underscore) si dhe score) si dhe nga shenja e dollarit $nga shenja e dollarit $ •

•Identifikuesi nuIdentifikuesi nuk mund të k mund të filloj me filloj me numërnumër •

•JavJava ësha është “të “casesensitivecasesensitive” që d.m.th –” që d.m.th – fjalët Total, total dhe TOTALfjalët Total, total dhe TOTAL

trajtoh

trajtohen si en si identifikues të identifikues të ndryshëmndryshëm •

•Ligj i pashkruar por i përvetësuar nga programerët që shkruajnë programeLigj i pashkruar por i përvetësuar nga programerët që shkruajnë programe

në Java, përdorin këtë formë të shkrimit së kodit: në Java, përdorin këtë formë të shkrimit së kodit:

• Për emra të klPër emra të klasave përdoret Titlecase: p.sh HelloWorasave përdoret Titlecase: p.sh HelloWorldld •

• Emrat e atributeve dhe metodave fillojnë me Emrat e atributeve dhe metodave fillojnë me shkronja të vogla: p.sh.shkronja të vogla: p.sh.

printName printName •

• Emrat e konstanteve me të madhe: p.sh. MAXIMUMEmrat e konstanteve me të madhe: p.sh. MAXIMUM

Identifikuesit

Identifikuesit

•NdonjëherNdonjëherë ne i zë ne i zgjedhim identifikuesit tanë, si në shembullin më lartgjedhim identifikuesit tanë, si në shembullin më lart MyProgram 

MyProgram  •

•NdonjëherNdonjëherë i ë i përdorim identifikuesit të cilët përdorim identifikuesit të cilët i kanë i kanë zgjedh programzgjedh programerët eerët e

tjerë, p.sh.

tjerë, p.sh.println println  •

•Shpesh përdoShpesh përdorim identifikues të cilët rim identifikues të cilët njihen si të rezervuar dhe që kanënjihen si të rezervuar dhe që kanë

kuptim të veçantë në Java, p.sh. kuptim të veçantë në Java, p.sh. int int  •

•Një identifikues i rezervuar nuk mund të përdoret për asgjë tjetër pos përNjë identifikues i rezervuar nuk mund të përdoret për asgjë tjetër pos për

çka është i definuar çka është i definuar

(14)

Fjalët e rezervuara

Fjalët e rezervuara

aabbssttrraacct t aasssseerrtt bboooolleeaann bbrreeaakk bbyyttee ccaassee ccaattcchh cchhaarr ccllaassss const*const* ccoonnttiinnuuee ddeeffaauulltt ddoouubbllee ddoo eellssee eennuumm eexxtteennddss falsefalse

ffiinnaall ffiinnaallllyy ffllooaatt ffoorr goto*goto* if if  iimmpplleemmeennttss iimmppoorrtt iinnssttaanncceeooff iinntt iinntteerrffaaccee lloonngg

nnaattiivvee nneeww nullnull ppaacckkaaggee pprriivvaattee pprrootteecctteedd ppuubblliicc rreettuurrnn sshhoorrtt ssttaattiicc ssttrriiccttffpp ssuuppeerr sswwiittcch h ssyynncchhrroonniizzeed d tthihis s tthhrroow w tthrhroowwss trtraannssiieenntt

true

true ttrryy vvooiidd vvoollaattiillee wwhhiillee

Në uebuebfaqefaqen më n më poshtë poshtë mundmundtëtëgjeni gjeni shpjeshpjegim gim për për secilisecilinn identidentifikuifikues tëes të rezer

rezervuara vuara nënëJavJava:a:

http://en.wikibooks.org/wiki/Java_Programming/Keywords http://en.wikibooks.org/wiki/Java_Programming/Keywords

Hapë

Hapësirat

sirat

(ang. whi

(ang. white

te

spaces

spaces)

)

•Hapësirat, reshtat e Hapësirat, reshtat e zbrazët,Tzbrazët,TABAB njihen si “njihen si “whwhititee spspaceace” ” 

•Këto hapësira përdoren për Këto hapësira përdoren për t’i ndarë fjalët dhe simbolet në program si dhet’i ndarë fjalët dhe simbolet në program si dhe

për ta strukturuar programin që të je

për ta strukturuar programin që të jetë më i lexueshëmtë më i lexueshëm •

•Sa i përket kompajlSa i përket kompajleriterit këto hapësirkëto hapësira injorohena injorohen •

•Sa i përket lexueshmërisë së kodit, ekzistojnë disa mënyra se si tëSa i përket lexueshmërisë së kodit, ekzistojnë disa mënyra se si të

formatohet programi në Java formatohet programi në Java •

(15)

Zgjidhja e problemeve

Zgjidhja e problemeve

•Qëllimi i një programi kompjuterik është zgjidhja e ndonjë problemi tëQëllimi i një programi kompjuterik është zgjidhja e ndonjë problemi të

veçantë veçantë •

•Zgjidhja e një problemi të veçantë konsiston nga një numër i Zgjidhja e një problemi të veçantë konsiston nga një numër i aktiviteteve:aktiviteteve:

-- DuDuhehet të kut të kuptptohohet met mirë irë prproboblemlemii

-- KoKonsnsideiderorohehen min mirë të gjirë të gjiththa altera alternanativtivatat -- Të Të didizazajnjnohohet zet zgjgjididhjhjaa -- Të Të imimplplememenentotohehet zgt zgjijidhdhjaja -- TTesestotohehet t zgzgjijidhdhjejenn •

•Këto aktivitet nuk janë liKëto aktivitet nuk janë lineare por ato mbulohen nga njëra tjetra dheneare por ato mbulohen nga njëra tjetra dhe

bashkëveprojnë bashkëveprojnë

Zgjidhja e problemeve

Zgjidhja e problemeve

•Çelësi i zgjidhjes së Çelësi i zgjidhjes së problemit është zbërthproblemit është zbërthimi i imi i problemit në pjesë më tëproblemit në pjesë më të

menaxhueshme menaxhueshme •

•Ndërtimi i një softueri nënkuNdërtimi i një softueri nënkupton zbërthimin dhe dizajniminpton zbërthimin dhe dizajnimine pjesëve tëe pjesëve të

veçanta veçanta •

•Programimi Programimi i bazuar në objekte (ang. Object-orientedi bazuar në objekte (ang. Object-orientedprogrammprogramming) ështëing) është

shumë i përshtatshëm për këtë lloj të zbërthimit shumë i përshtatshëm për këtë lloj të zbërthimit •

•Ne gjithmonë do ta zbërthejmë zgjidhjen tonë në pjesë, të njohura siNe gjithmonë do ta zbërthejmë zgjidhjen tonë në pjesë, të njohura si klasë

(16)

Programimi i bazuar në objekte

Programimi i bazuar në objekte

(a

(ang. O

ng. Obje

bject

ct

Ori

Orien

ente

ted

d

Pro

Pro

gram

gram

min

ming)

g)

•Java është gjuhë programuese e bazuar në objekteJava është gjuhë programuese e bazuar në objekte •

•Siç nënkuptohet nga ky term objekti është entiteti bazë i Siç nënkuptohet nga ky term objekti është entiteti bazë i një Javanjë Java

programi programi •

•Java objektet mund të përdoren në mënyrë efektive që të reprezentojnëJava objektet mund të përdoren në mënyrë efektive që të reprezentojnë

objektet në botën reale objektet në botën reale •

•PP.sh. Një objekt i Java-së mu.sh. Një objekt i Java-së mund të reprezentojnd të reprezentoj një llogari bankarenjë llogari bankare •

•Çdo llogari bankare menaxhon me të dhënat që kanë të bëjnë me atëÇdo llogari bankare menaxhon me të dhënat që kanë të bëjnë me atë

llogari bankare si dhe me pjesën për procesimin e këtyre të dhënave llogari bankare si dhe me pjesën për procesimin e këtyre të dhënave

Objektet

Objektet

•Një objekt ka:Një objekt ka: •

• Gjendjen e tij (ang.Gjendjen e tij (ang.state state )) – – karakteristikat përshkruesekarakteristikat përshkruese •

• Sjelljet e tij (ang.Sjelljet e tij (ang. behaviour behaviour )) – – çka mund çka mund të bëjë apo lejon të bëjë apo lejon t’i bëhett’i bëhet •

•Gjendja Gjendja e llogarisë bankare përfshinë p.sh. Emrin, Bie llogarisë bankare përfshinë p.sh. Emrin, Bilancin, etjlancin, etj •

•Sjelljet Sjelljet që kanë të bëjnë me llqë kanë të bëjnë me llogarinë bankare janë, shfletimi i gjendjes,ogarinë bankare janë, shfletimi i gjendjes,

depozitimi i mjeteve si dhe tërheqja e mjeteve depozitimi i mjeteve si dhe tërheqja e mjeteve •

•Siç shihet nga lart disaSiç shihet nga lart disa sjellje sjellje të këtij objekti ndryshojnë gjendjen e tij,të këtij objekti ndryshojnë gjendjen e tij, p.sh. deponim

p.sh. deponimi apo i apo tërheqjtërheqja e a e mjeteve ndryshmjeteve ndryshojnë bilancin e ojnë bilancin e llogarisëllogarisë bankare

(17)

Klasat

Klasat

•Një objekt definohet nga njëNjë objekt definohet nga një klasëklasë që reprezeqë reprezentontonnnjënjëkonceptkoncept të veçantëtë veçantë •

•Klasa definon modelin e çdo Klasa definon modelin e çdo instance të objektitinstance të objektit •

•Shumë objekte mund të krijohen nga një klasëShumë objekte mund të krijohen nga një klasë •

•Klasa ka Klasa ka atributet/atributet/fushat që fushat që definojnëdefinojnëgjendjen gjendjen e një objektie një objekti •

•Klasa ka metodat që definojnëKlasa ka metodat që definojnë sjelljen sjelljen e një objektie një objekti •

•Klasa që ka Klasa që ka metodënmetodënmain()main() paraqet pikën fillestare të një programi nëparaqet pikën fillestare të një programi në

Java Java •

•Java programet kryesisht përbëhen nga më shumë klasë se vetëm klasa qëJava programet kryesisht përbëhen nga më shumë klasë se vetëm klasa që

ka metodën

ka metodënmain() main() 

Objektet dhe klasat

Objektet dhe klasat

LlogariaBankare LlogariaBankare -- bilancbilanci: i: doubledouble

+ shfletoBilancin(): double + shfletoBilancin(): double +dep

+depono(doublono(doublee shuma): booleanshuma): boolean +terh

+terhjek(dojek(doubleuble shuma): booleanshuma): boolean

Klasa Klasa (koncepti)

(koncepti) Tri objekteTri objektetë klasëstë klasës

Llogari bankare e Agimit Llogari bankare e Agimit

Bilanci: 1500 Bilanci: 1500 € €

Llogari bankare e Artës Llogari bankare e Artës

Bilanci: 1755.65 Bilanci: 1755.65 € €

Llogari bankare e Rrapit Llogari bankare e Rrapit

Bilanci: 25785.05 Bilanci: 25785.05 € € Objekte të shumta të Objekte të shumta të së klasës LlogariaBankare së klasës LlogariaBankare

(18)

Trashëgimia (ang. Inheritance)

Trashëgimia (ang. Inheritance)

•Klasat mund të organizohen në hierarkiKlasat mund të organizohen në hierarki •

•Një klasë mund të derivohet/trashëgohet nga një tjetër duke përdorNjë klasë mund të derivohet/trashëgohet nga një tjetër duke përdor  “  “inheritanceinheritance” ”  LlogariaBankare LlogariaBankare LlogariaRrjedhese LlogariaRrjedhese LlogariaKursimit LlogariaKursimit

References

Related documents

ndryshme private dhe quajtur Cupcake,është emri për update të sistemit që nuk është zyrtarisht miratuar nga Google. Android është i përbërë nga disa thelbësor dhe të

Ky proces zakonisht është më i rëndësishëm në bërthamat e rënda në të cilat elektronet në shtresat e ulta janë më afër bërthamës Besueshmëria që ky proces është

Problemi më i madh i një qeverie në këtë vend është për të prurë në marrëveshje ose për të bashkuar elementët e besimeve të ndryshme me qëllim që të zhduket sa

Sistemi i bazave të të dhënave krijon disa rrugë marrje për çdo njësi të dhënash, duke i dhënë përdoruesit më shumë fleksibilitet në vendosjen dhe

 Kujdesi për rritje dhe zhvillim – ka te beje me aftesine për rritjen dhe zhvillimin personal të menaxhereve, si edhe për rritjen dhe zhvillimin e punonjësve të tyre, dhe

Ky organizëm / dmth Muzeu/ (që sot është një nga më të mëdhenjtë që ekzistojnë) pati origjina të mundimshme dhe modeste/ pa pretendime/. Më 1846 drejtori i Konservatorit

Sa më e madhe të jetë vlera e tensionit të drejtë të zbatuar në diodë, aq më e vogël është gjerësia e barrierës potenciale shtresës së kundërt, pra aq më i madh

Prania e arrave të zakonshme të rritura mirë, ajo e shtogut të zi dhe e hithrave të bollshme dhe të ajo e shtogut të zi dhe e hithrave të bollshme dhe të mëdha janë tregues