Naziv predmeta:

PROGRAMIRANJE

Godišnji fond časova:

105 časova vežbi po grupi 

Razred:

treći

Ciljevi predmeta:

1. Usvajanje osnovnih znanja iz koncepta objektom orijentisanog programiranja
2. Osposobljavanje učenika za pisanje programa u kojima se vrši kreiranje osnovnih elemenata Windows aplikacije
3. Osposobljavanje učenika za pisanje programa u kojima se koriste najvažnije komponente iz biblioteke komponenata
4. Osposobljavanje učenika za pisanje programa u kojima se formiraju klase kao složeni tipovi podataka
5. Osposobljavanje učenika za usvajanje osnova za dalje, samostalno sticanje znanja i usavršavanje.

TEMA

CILJ

ISHODI
Po završetku teme učenik će biti u stanju da:

OBAVEZNI I PREPORUČENI SADRŽAJI PO TEMAMA

NAČIN OSTVARIVANJA PROGRAMA

Osnovni koncepti objektno orijentisanog jezika

Razumevanje osnovnih koncepata objektno orjentisanog programiranja

• Definiše pojam klase
• Razume odnos klase i objekta

• Razume objekat i kako se on upisuje u memoriju
• Razume razliku između objekta klase i strukturnog tipa podataka

• Definiše pojmove objektno orijentisanog programiranja: enkapsulacija, nasleđivanje i polimorfizam u konceptu nasleđivanja

• Klasa
• Objekat
• Sastavni elementi kalse
• Enkapsulacija
• Nasleđivanje
• Polimorfizam

Na početku teme učenike upoznati sa ciljem/ciljevima i ishodima, planom rada i načinima ocenjivanja.

Oblici nastave i trajanje
Predmet se realizuje kroz sledeće oblike nastave:
• Laboratorijske vežbe 105 časova

Podela odeljenja na grupe
• Prilikom realizacije vežbi odeljenje se deli na grupe koje se maksimalno sastoje od 10 učenika

Mesto realizacije nastave • Laboratorijske vežbe se realizuju u računarskom kabinetu

Ocenjivanje

Vrednovanje ostvarenosti ishoda vršiti kroz:
1. Praćenje ostvarenosti ishoda
2. Testove znanja
3. Veštinu samostalnog pisanja koda programa

Objektni jezik i C jezik, šta je isto a šta različito

Usvajanje razlike koje izabrani programski jezik pruža u odnosu na C jezik

• Koristi podatke logičkog tipa
• Razume deklaraciju promenljivih na nivou bloka (For each in ciklus)
• Deklariše nizovne promenljive i razume razliku između dvodimenzionalnog polja i niza nizova
• Koristi foreach ciklus
• Koristi liste i metode za rad sa listama
• Deklariše funkcije (metode) uz prenos parametara po vrednosti i po referenci 
• Koristi metode sa istim imenom, a drugim parametrima
• Koristi datoteke za čitanje i upis podataka

• Logički podaci  
• Definisanje podataka na nivou bloka  
• Definisanje nizovnih promenljivih i korišćenje sistemskih metoda za rad sa nizovima   
• Liste
• Definisanje nabrojivog i strukturnog tipa
• Ključna reč static
• Kreiranje i pozivanje metoda sa prenosom parametara po vrednosti i referenci
• Preklapanje imena funkcije
• Upis i čitanje podataka iz tekstualne i binarne datoteke

Klase

Osposobljavanje za izradu programa u kojima se koriste klase

• razume razliku klase u odnosu na strukturu
• razume ulogu konstruktora i kreira konstruktor sa i bez parametara
• razume smisao enkapsulacije podataka
• razume snisao ključne reči this
• definiše statičke i instance metode klase
• kreira i testira klase u kojima je implementirano preklapanje operatora
• Piše i testira programe u kojima se demonstrira primena klase
• primenjije organizaciju klasa u dinamičke biblioteke (dll)

• Pojam klase
• Razlika između klase i strukture
• Podrazumevani konstruktor
• Konstruktor sa parametrima
• Konstruktor kopije
• Ključna reč this
• Enkapsulacija podataka
• Set metode
• Get metode
• Metode
• Preklapanje metoda u klasi
• Preklapanje (overload) operatora u klasi
Pojam parcijalne klase 
• Dinamičke biblioteke klasa

Rukovanje izuzecima

Osposobljavanje učenika za rukovanje izuzecima

• razume obradu greške (slanje, prijem, obrada) 
• razume i primenjuje "bacanje" izuzetka iz korisničke klase
• piše i testira programe u kojima se koristi rukovanje izuzecima

• Rukovanje izuzecima
• Prijavljivanje izuzetaka
• Prihvatanje (obrada) izuzetaka

Izvedene klase

Osposobljavanje učenika za upotrebu izvedene klase

• razume smisao nasleđivanja klasa
• formira konstruktore izvedenih klasa  
• piše i testira programe u kojima se koristi nasleđivanje 
• piše i testira programe u kojima se koristi polimorfizam
• razume upotrebu apstraktnih klasa
• piše i testira programe u kojima se koriste apstraktni tipovi podataka
• razume upotrebu interfejsa

• Definicija izvedene klase
• Upotreba članova izvedene klase
• Konstruktori izvedenih klasa
• Kompozicija klase
• Apstraktna klasa
• Zajednički članovi klase
• Interfejsi i nasleđivanje interfejsa

Biblioteka komponenata

Osposobljavanje za izradu projekata sa grafičkim korisničkim interfejsom

• formira projekat
• primenjuje standardne komponente iz biblioteke komponenti
• formira i pozicionira komponente
• podešava veličinu i izgled komponenti
• koristi svojstva i metode komponenti 
• uočava zajednička svojstva komponenti
• razume smisao programiranja vođenog događajima 
• uočava zajedničke i specifične događaje komponenti
• programira događaje miša
• programira događaje tastature
• primenjuje dinamičko kreiranje komponenti 

• Izrada projekta
• Forma
• Svojstva
• Metode
• Zajednička svojstva i metode komponenti
• Događaji 
• Događaji miš
• Događaji miša
• Događaj tastature
• Labela
• Dugme
• Slika (PictureBox)
• Okvir za tekst (TextBox)
• Panel
• Okvir za grupu
• Okvir za potvrdu
• Grupa radio dugmadi
• Komponenta ListBox
• Kombinovani okvir za tekst sa listom (ComboBox)
•  Komponenta Timer
• Kastovanje komponente nad kojom se desio događaj
• Dinamičko kreiranje komponenti


Okvirni broj časova po temama

Laboratorijske vežbe: 

• Osnovni koncepti objektno orijentisanog jezika (3 časa)
• Objektni jezik i C jezik (15 časova)
• Klase (18 časova)
• Rukovanje izuzecima (9 časova)
• Izvedene klase (15 časova)
• Biblioteka komponenata (45 časova)

Last modified: Thursday, 4 September 2025, 6:35 PM