Programim i Orientuar në Objekte

Print

Olsi Shehu, Msc

Kodi
CMP 114
Emri
Programim i Orientuar në Objekte
Semestri
2
Leksione
3.00
Seminare
0.00
Laboratore
1.00
Kredite
3.50
ECTS
5.00
Përshkrimi

Kursi “Programimi i Orientuar në Objekte” ofron njohuri të përgjithshme mbi konceptimin dhe implementimin e programimit të orientuar në objekte. Programimi i Orientuar në Objekte (P.O.O.) është një nga teknikat më kryesore dhe më të rëndësishme e cila është e inkorporuar gati në të gjitha gjuhët e programimit të nivelit të lartë. Në këtë kontekst, me anë të këtij kursi studentët do jenë të aftë të kuptojnë rëndësinë dhe ndikimin që ka P.O.O. në krijimin e aplikacioneve dhe programeve modulare. Ky kurs do të trajtojë fillimisht një përsëritje të shkurtër të funksioneve dhe më pas do të trajtojë me detaje konceptet bazë të P.O.O, metodat dhe mjetet e implementimit të tij si enumeracionet, strukturat, klasat, pointerat dhe referencat. Gjithashtu, do të trajtojë skedarët dhe veprimet me to në përgjithësi.

Objektivat

Java
Tema
1
Hyrje në Programimin e Orientuar në Objekte Kjo temë trajton një përmbledhje e përgjithshme mbi programimin me objekte. Konceptet kryesore të Programimit të Orinetuar në Objekte, përsëritja dhe plotësimi i njohurive mbi funksionet, Funksionet inline dhe makro, Funksionet e mbingarkuara dhe si dhe Modele funksionesh të ndryshme do të jenë pjesë të rëndësishme të kësaj teme. (Fq. 101 – 123, Literatura e rekomanduar)
2
Enumeracionet Kjo temë trajton përcaktimin dhe shfrytëzimin e enumeracionit (grupit), implementimin e strukturave kushtëzuese nëpërmjet vlerave të numëruara, përcaktimin dhe deklarimin njëkohësisht të disa variablave të numëruara të tipit të njëjtë, shoqërimin direkt të vlerave, veprime të ndryshme më vlerat e numëruara, përdorimin e enumeracioneve në strukturat ciklike, krijimin e disa enumeracioneve njëkohësisht dhe përdorimin e tyre në nënprograme. (Fq. 4 – 32)
3
Strukturat Kjo temë trajton përkufizimin e strukturave dhe deklarimin e objekteve përkatëse, inicializimin direkt me vlera të variablave të përfshira në komponentët e strukturave gjatë dhe pas deklarimit të objekteve përkatëse, qasjen tek komponentët e strukturave, përdorimin e operacionit të shoqërimit dhe operatorëve relacionalë si dhe deklarimin dhe shfrytëzimin e disa strukturave njëkohësisht. (Fq. 33-69)
4
Strukturat Kjo temë trajton strukturat e ndërthurura, përkufizimin dhe shfrytëzimin e funksioneve të përfshira në komponentet e strukturave, përkufizimin e funksioneve jashtë strukturave, strukturat si parametra të funksioneve, shfrytëzimin e fushave brenda strukturave, deklarimin dhe shfrytëzimin e fushave të objekteve si dhe shembuj ilustrues për të gjitha temat e parashtruara më sipër. (Fq. 70 – 132)
5
Klasat Kjo temë trajton përkufizimin e klasave dhe deklarimin e objekteve të tyre, qasjen tek komponentët e klasës, formën e përgjithshme e klasave, përkufizimin e funksioneve jashtë klasës, format e ndryshme të inicializimit të objekteve, shfrytëzimin dhe llogaritjet me variablave publikë dhe privatë të klasave, shfrytëzimin e funksioneve pa parametra formalë dhe me parametra referent, llogaritjet në program dhe përmes funksioneve të klasës si dhe shfaqjen e rezultateve tek variablat e programit dhe tek variablat e klasës. (Fq. 133 – 163)
6
Klasat Kjo temë trajton shfrytëzimin e funksioneve brenda klasës, funksionet në komponentët publikë dhe privatë, konstrutkotët me dhe pa parametra formalë, llogaritjet brenda tyre, përdorimin e disa konstruktorëve njëkohësisht, thirrja në bazë të numrit të parametrave dhe në bazë të tipit të parametrave si dhe destruktorët. (Fq. 164 – 190)
7
Klasat Kjo temë trajton trashëgiminë, përkufizimin e funksioneve jashtë klasës dhe përdorimin e antarëve Protected, trashëgiminë e shumëfishtë, veprime të ndryshme me klasat, përdorimin e fushave me dhe nëpërmjet klasave si dhe dukshmërinë e klasave dhe të objekteve. (Fq. 191 – 217)
8
Provim Gjysëm Final
9
Pointerat Kjo temë trajton Pointerat dhe mënyrat e shfrytëzimit të tyre. Kjo temë trajton me detaje deklarimin e pointerave, adresat e variablave, vlerën në adresën e variablit, shoqërimin e vlerave të konstanteve dhe ndryshoreve, operatorët inversë, llogaritjet përmes pointerave, operimin me vlerat e pointerave, rritjen dhe zvogëlimin e vlerave si dhe shoqërimin dhe krahasimin e vlerave. (Fq. 217 – 241)
10
Pointerat Kjo temë trajton pointerat gjatë operimit me fusha (vektorë, matrica), veprime të ndryshme me to, pointerat në stringje, pointerat si parametra të funksioneve, pointerat në funksione, struktura si dhe përdorimin e tyre në variabla dhe funksione të objekte të klasave. (Fq. 241 – 295)
11
Referencat Kjo temë trajton referencat e zakonshme, konstantet referente, parametrat formalë referent, parametrat referentë si rezultate, vektorët dhe matricat referente, kufizimet për variablat referente, parametrat referentë brenda strukturave, variablat referentë brenda klasave si dhe objektet referente (Fq. 296 – 316)
12
Skedarët Kjo temë trajton skedarët me qasje sekuenciale, shkrimin në skedar, memorien e ndërmjetme, leximin nga skedari, kontrollimin e hapjes së skedarave, deklarimi i objektit para hapjes, qasjen, shkruarjen dhe leximin tek skedarët në strutkurat ciklike, shfrytëzimin e manipulatorëve, flamujtë e gjendjes si dhe shkrimin dhe leximin në një program, shfrytëzimin e objekteve, tekstet dhe numrat në skedarë, shfrytëzimin e pointerave, leximin e rreshtave si dhe rihapjet e skedarëve në gjendje të ndryshme. (Fq. 316 – 359)
13
Skedarët Kjo temë trajton leximin e pozicionit aktual në skedar, qasjen dhe lëvizjen në skedar, leximin nga skedarët, vlerat e variablave, vektorëve, matricave dhe vlerat e llogaritura në skedar, qasjen dhe shfrytëzimin e të dhënave nga skedarët, objektet dhe qasjen e tyre tek skedarët si dhe disa skedarë të hapur njëkohësisht. (Fq. 360 – 404)
14
Probleme Praktike Kjo temë trajton disa probleme praktike gjatë programimit të orientuar në objekte si numrat e rastit, llogaritjet kohore, ngjyrën e tekstit, dukshmërinë e variablave, pointerat, referencat, direktivat preprocesorike, disa përjashtime si dhe problematikat në lidhje lexim/shkrimin në skedarë. (Fq. 212 – 266, Literatura e rekomanduar)
15
Përsëritje
16
Final Exam
1
Studentët do të jenë të aftë të kuptojnë evolimin e P.O.O. në gjuhët e programimit moderne.
2
Studentët do të kenë njohuri mbi konceptet kryesore të P.O.O.
3
Studentët do të përvetësojnë metodat dhe teknikat kryesore të P.O.O.
4
Studentët do të jenë të aftë të implementojnë metodat dhe teknikat kryesore të P.O.O.
5
Studentët do të jenë të gatshëm për t’u bërë pjesë e diskutimeve të frytshme në fushën e evolimit të metodave dhe teknikave kryesore të P.O.O.
6
Studentët do të jenë të pajisur me metodat dhe teknikat e mjaftueshme të P.O.O. për të vijuar me lëndët e tjera pasardhëse.
Sasia Përqindja Përqindja totale
Gjysmë finale
1 30% 30%
Kuize
0 0% 0%
Projekte
2 10% 20%
Detyra
0 0% 0%
Laboratorët
0 0% 0%
Pjesëmarrja në mësim
0 0% 0%
Përqindja totale e vlerësimit
50%
Përqindja e provimit përfundimtar
50%
Përqindja totale
100%
Sasia Kohëzgjatja (orë) Gjithsej (orë)
Kohëzgjatja e kursit (përfshirë javët e provimit)
16 4 64
Orë studimi jashtë klasës
14 3 42
Detyrat
2 3 6
Gjysmë finale
1 2 2
Provimi përfundimtar
1 2 2
Të tjera
0 0 0
Ngarkesa totale e punës
116
Ngarkesa totale e punës / 25 (orë)
4.64
ECTS
5.00