10
1.ta se postie sa vizuelnim nasljeivanjem? Vizuelno nasljeivanje omoguava da se postigne vizuelna konzistentnost kroz aplikaciju. 2. ta sve nasljeuje izvedena forma od osnovne forme? Izvedena klasa sadri funkcionalnosti od svoje osnovne klase vezane za kontrolu , ali ukljuuje sve osobine, metode, varijable i kontrole i osnovne klase. Izvedena k lasa takoer nasljeuje sve vizuelne aspekte kao veliinu, layout kontrola, boje i fontove svoje osnovne klase. 3. Koji su koraci kreiranja vlastitih kontro la? U Visual Studiu se otvori novi projekat tipa Class Libarary, pa se onda na imenu projekta doda novi Item i odabere User Kontrola. Potrebno je napraviti build projekta. Nakon toga, naravno ako nema nekih greaka, u Debug folderu projekta bi se trebao kreirati .dll za kreiranu kontrolu. Ukoliko elimo da kreiranu kontrolu koristimo unutar neke nove aplikacije, tada nakon kreiranja projekta za tu novu aplikaciju, treba napraviti desni klik na opciju Toolbox, a zatim odabrati opciju Choose Items, i tu n aci svoju novu User Kontrolu. 4. ta je nit thread? Niti (engl. threads), predstavljaju bazine cjeline za izvravanje koda pod savremenim operativnim sistemima. Nit je programska cjelina koja treba da obavi jedan zadatak. Niti (jedna ili vie) pripadaju  jednom sloenijem procesu. 5. Koje klase se u .NET koriste za upravljanje nitima? .NET Framework Class Library u namespace -u System::Threading sadri osnov ne metode za rad sa nitima. 6. Koje su osnovne metode klase Thread, a koje klase Monitor?  

RPR - Odgovori Na Teoretska Pitanja Iz II Parcijale

Embed Size (px)

Citation preview

Page 1: RPR - Odgovori Na Teoretska Pitanja Iz II Parcijale

8/3/2019 RPR - Odgovori Na Teoretska Pitanja Iz II Parcijale

http://slidepdf.com/reader/full/rpr-odgovori-na-teoretska-pitanja-iz-ii-parcijale 1/9

1.ta se postie sa vizuelnim nasljeivanjem?

Vizuelno nasljeivanje omoguava da se postigne vizuelna konzistentnost kroz aplikaciju.

2. ta sve nasljeuje izvedena forma od osnovne forme?

Izvedena klasa sadri funkcionalnosti od svoje osnovne klase vezane za kontrolu , ali ukljuuje sve

osobine, metode, varijable i kontrole i osnovne klase. Izvedena klasa takoer nasljeuje sve vizuelne

aspekte kao veliinu, layout kontrola, boje i fontove svoje osnovne klase.

3. Koji su koraci kreiranja vlastitih kontrola?

U Visual Studiu se otvori novi projekat tipa Class Libarary, pa se onda na imenu projekta doda novi

Item i odabere User Kontrola. Potrebno je napraviti build projekta. Nakon toga, naravno ako nema

nekih greaka, u Debug folderu projekta bi se trebao kreirati .dll za kreiranu kontrolu. Ukoliko elimo

da kreiranu kontrolu koristimo unutar neke nove aplikacije, tada nakon kreiranja projekta za tu novu

aplikaciju, treba napraviti desni klik na opciju Toolbox, a zatim odabrati opciju Choose Items, i tu naci

svoju novu User Kontrolu.

4. ta je nit thread?

Niti (engl. threads), predstavljaju bazine cjeline za izvravanje koda pod savremenim operativnim

sistemima. Nit je programska cjelina koja treba da obavi jedan zadatak. Niti (jedna ili vie) pripadaju

 jednom sloenijem procesu.

5. Koje klase se u .NET koriste za upravljanje nitima?

.NET Framework Class Library u namespace-u System::Threading sadri osnovne metode za rad sa

nitima.

6. Koje su osnovne metode klase Thread, a koje klase Monitor?

 

Page 2: RPR - Odgovori Na Teoretska Pitanja Iz II Parcijale

8/3/2019 RPR - Odgovori Na Teoretska Pitanja Iz II Parcijale

http://slidepdf.com/reader/full/rpr-odgovori-na-teoretska-pitanja-iz-ii-parcijale 2/9

 

7. Napisati program koji e aktivirati dvije niti. Zadatak svake niti e biti da 'spavaju' sluajni period

vremena.

isto sumnjam da ce ovo biti kao teoretsko pitanje...

Page 3: RPR - Odgovori Na Teoretska Pitanja Iz II Parcijale

8/3/2019 RPR - Odgovori Na Teoretska Pitanja Iz II Parcijale

http://slidepdf.com/reader/full/rpr-odgovori-na-teoretska-pitanja-iz-ii-parcijale 3/9

8. ta je deadlock i kako se moe izbjei opisati koje klase i metode se pri tome koriste.

Deadlock nastaje kada dvije niti ekaju jedna na drugu, tako da se akcije koje izvrsavaju 2 niti nikad

nece desiti.

Da ne bi dolo do situacija deadlock-a potrebno je obezbjediti kontrolu pristupa zajednikom objektu.

Klijent koji radi sa zajednikim resursom uspostavlja lock na objekat, i odrauje to je potrebno, adrugi klijent eka dok se resurs ne oslobodi.

lock ( objectReference ){

// kod koji zahtjeva sinhronizaciju

}

C++/CLI moe iskazati lock na ovaj nain pomou metoda klase Monitor (u nastavku), a postoji i klasa

Interlocked pomou koje se moe postii sinhronizacija.

Ako nit koja posjeduje lock na objekt ustanovi da ne moe nastaviti sa taskom dok neki uslov se ne

zadovolji, nit moe pozvati Monitor metod Wait, predati kao argument objekt na koji nit eka, dok

nit ne bude mogla izvriti svoj task.

9. ta se postie sa postavljanjem prioriteta niti?

Postie se to da niti sa najvecim prioritetom dobivaju najveci dio procesorskog vremena (najveci broj

kvantuma) a one sa najnizim prioritetom najmanji dio proc. vremena.

Vrijednosti dolaze iz ThreadPriority nabrojive liste (namespace System.Threading), koja sadri

vrijednosti Lowest, BelowNormal, Normal(default vrijednost), AboveNormal i Highest.

10. Monitor metode __________ i __________ zahtijevaju i oslobaaju lock na objekt.

Enter i Wait

11. Ako je grupa od jednako-prioritetnih niti svaka nit dobiva dio vremena nazvan

 _______________, za vrijeme izvravanja programa.

Kvantum

12. ta je exception-izuzetak?

Izuzetak(exception) ukazuje na problem koji se deava u toku izvravanja programa.

Page 4: RPR - Odgovori Na Teoretska Pitanja Iz II Parcijale

8/3/2019 RPR - Odgovori Na Teoretska Pitanja Iz II Parcijale

http://slidepdf.com/reader/full/rpr-odgovori-na-teoretska-pitanja-iz-ii-parcijale 4/9

13. Koji su koraci kreiranja sopstvene klase za upravljanje exception-ima. Ilustrirati

primjerom.

Prvo se definira klasa MojIzuzetak

ref class MyException : public System::Exception {

//kod klase

}

U djelu programa u kojem zelimo da izazovemo(bacimo) nas izuzetak napisemo:

throw gcnew MyException(neki tekst,broj_greske);

U catch bloku stavimo da hvatamo nas izuzetak

catch(MyException^ neki_tekst) {

//kod catch bloka

}

14. Koja je uloga _finally bloka u kombinaciji sa try catch-finally blokom?

 _finally se odrauje i ako se desi i ne desi exception.

15. Koje su osobine Exception klase?

Message Vraca Poruku povezanu sa izuzetkom

StackTrace Vraca string koji sadrzi detalje o steku

Source Vraca string koji sadrzi ime objekta ili aplikacije koji je uzrokovao gresku

16. Navesti najee uzroke deavanja izuzetaka.

Nedostatak memorije, Ulazno/Izlazna greska, Referenca na Null pokaziva, Izuzeci kada je jedan od

argumenata pogrean, Izuzeci za ne-fatalne aplikacijske greke, Izuzeci za indikacije aritmetikih

greaka, Izuzeci u sluaju kada je indeks niza izvan ranga, Izuzeci kada je pogrean cast ili konverzija.

Page 5: RPR - Odgovori Na Teoretska Pitanja Iz II Parcijale

8/3/2019 RPR - Odgovori Na Teoretska Pitanja Iz II Parcijale

http://slidepdf.com/reader/full/rpr-odgovori-na-teoretska-pitanja-iz-ii-parcijale 5/9

NE FALI PITANJA U POSTAVLJENIM PITANJIMA JE IZA 16 ODMA 25.

25. Ako se nije desio izuzetak u try bloku gdje se nastavlja izvravanje programa nakon to se try

blok izvrio?

Glupo pitanje po meni..

Na sljedecoj komandi iza try-catch bloka???

26. ta se deava ako se izuzetak desi izvan try bloka?

Ako je neki od sistemskih(fatalnih) izuzetaka program pada jer nema catch bloka da obradi baeni

izuzetak.

27. Kada postoji, _________ blok povezan sa try blokom se uvijek izvrava.

 _finally ???

Nisam bas siguran za ovo...

28. Izvedene klase izuzetaka se izvode iz klase _______________.

System::Exception

31. Objasniti pojam validacija podataka

Postupak validacije podataka je postupak ispitivanja ispravnosti podataka i postupak provjere

usaglaavanja podataka da bi se slagali sa svim poslovnim pravilima specificiranim sa aplikacijskim

zahtjevima.

32. Objasniti probleme koji mogu nastati ako treba validirati neko poslovno pravilo za koje se

podaci unose preko 2 il i vie kontrola.

Validacijska strategija moze zakazati kada Validating dogaaj se deava samo kada se vri pomjeranje

na drugu kontrolu iste forme, ali ne na kontrolu u toolbaru ili na meni baru.

Ako koristimo MessageBox klasu za objavljivanje korisniku da ima 2 ili vie greaka, postaje zamorno

korisniku klikati na OK i pamtiti koje je sve greske napravio.

33. Koja je prednost validacije na nivou forme?

Mnogo manje nametljiv ali mnogo vie pouzdan i konzistentan tip validacije nego to originalna

aplikacija sadri.

Page 6: RPR - Odgovori Na Teoretska Pitanja Iz II Parcijale

8/3/2019 RPR - Odgovori Na Teoretska Pitanja Iz II Parcijale

http://slidepdf.com/reader/full/rpr-odgovori-na-teoretska-pitanja-iz-ii-parcijale 6/9

34.Koja je razlika izmeu Validated i Validating dogaaja?

Validating - dogaaj se deava kada fokus naputa kontrolu i pokuava da se prebaci na neku drugu

kontrolu ukoliko je osobina kontrole koja se odnosi na validaciju postavljena na true(npr.

CausesValidation osobina true)

Validated - dogaaj se deava nakon to se desi Validating event (toliko dugo koliko on nije prekinut)ali prije nego to kontrola izgubi fokus. Ovaj dogaaj se ne moe prekinuti pa nije tako koristan kao

Validating event za provjeru ulaznih podataka

35.Opisati naine kako izvjetavanje o grekama uzrokovano validacijom podataka se moe

pokazati korisniku.

Preko MessageBox klase, pomocu errorProvider kontrole, pomocu statusStrip kontrole

36.Objasniti ulogu ErrorProvider kontrole.

ErrorProvider kontrola pruza korisnicki interfejs za prikazivanje da neka kontrola kojoj je pridruzen

errorprovider ima gresku povezanu sa tom kontrolom.

37. Koji namespace u okviru .NET-a se koristi za crtanje?

System::Drawing

System::Drawing::Drawing2D

38. Koja je uloga klase Pen i Brush?

Pen crta linije i konture, a Brush se koristi za ispunjavanje unutranjosti grafikih objekata kao to su

elipse, poligoni, pite i slino.

39. Objasniti ulogu i nain definisanja OnPaint metode prilikom crtanja na formi?

Metod OnPaint uzrokuje Paint dogaaj.

Kada se crta na kontroli Form, moe se override metod OnPaint da bi se dobio Graphics objekt

argumenta PaintEventArgs ili kreirao novi Graphics objekt povezan sa odgovarajuim prostorom.

Da bi override nasljeeni OnPaint metod, koristi se sljedea header metoda:

protected:

virtual void OnPaint( PaintEventArgs e ) override;

Page 7: RPR - Odgovori Na Teoretska Pitanja Iz II Parcijale

8/3/2019 RPR - Odgovori Na Teoretska Pitanja Iz II Parcijale

http://slidepdf.com/reader/full/rpr-odgovori-na-teoretska-pitanja-iz-ii-parcijale 7/9

40. Koje su osnovne klase za crtanje linija a koje za crtanje pravougaonika, ovala?

Valjda u pitanju treba da stoji umjesto klase, metode.

Page 8: RPR - Odgovori Na Teoretska Pitanja Iz II Parcijale

8/3/2019 RPR - Odgovori Na Teoretska Pitanja Iz II Parcijale

http://slidepdf.com/reader/full/rpr-odgovori-na-teoretska-pitanja-iz-ii-parcijale 8/9

Pitanja za pripremu ispita u vezi predavanja: Datoteke , XML

1.Navesti osnovne klase za rad sa tekstualnim datotekama u okviru C++ .NET-a

System::IO namespace sadri sve klase koje se koriste za binarni i tekstualni I/O, takoer i klase koje

pomau radu sa fajlovima i direktorijima. Za rad sa tekstualnim datotekama se koriste :

2. Navesti osnovne klase za rad sa binarnim datotekama u okviru C++ .NET-a.

3. Objasniti binarnu serijalizaciju u datoteku.

Serijalizacija objekata sastoji se od spaavanja cijelog objekta kao cijeline umjesto pojedinanih polja.

Da bi se izvrila binarna serijalizacija, potrebno je kada se kreira klasa iji se objekti serijaliziraju

poeti definiciju klase sa atributom [Serializable].

Prije nego to se serijalizira objekat potrebno je referencirati:

System::Runtime::Serialization::Formatters::Binary namespace.

Klasa odgovorna za binarnu serijalizaciju je BinaryFormatter.

Nakon deklariranja varijabli, da bi se stvarno serijalizirao objekat poziva se Serialize() metod

BinaryFormatter klase.

7. XML je skraenica od _____________

Extensible Markup Language

8. ta je element a ta tag u XML-u, i koja je sintaksa za tag?

Element je okruen sa poetnim tagom <tag1> i krajnjim tagom </tag1>. Sve izmeu poetnog i

krajnjeg taga se naziva sadraj elementa.

Tag je najvanija forma oznaavanja u XML dokumentu. Uvijek se nalaze u okviru zagrada < >. Krajnji

tag poinje sa </.

Page 9: RPR - Odgovori Na Teoretska Pitanja Iz II Parcijale

8/3/2019 RPR - Odgovori Na Teoretska Pitanja Iz II Parcijale

http://slidepdf.com/reader/full/rpr-odgovori-na-teoretska-pitanja-iz-ii-parcijale 9/9

9. Navesti neka pravila koja moraju biti ispunjena da je XML dokument dobro formiran.

10. Zato je XML podesan za prikaz u obliku strukture drveta?

Zato to svaki svako djete element moze imati samo jednog roditelja, a roditelj moze imati vise djeca

elemenata. Xml mora imati bar jednog roditelja, koji se zove root element. Pomocu stabla(drveta) se

ustvari pokazuju veze koje imaju XML elementi.

11. ta je DTD i emu slui?

DTD- (document type definition - definicija tipa dokumenta)

DTD su pisani u formalnoj sintaksi koja precizno objanjava koji elementi se mogu pojaviti u

dokumentu, gdje se mogu pojaviti u dokumentu, kao i koji je sadraj i atributi elementa.

12. Koje su osnovne klase u .NET za rad sa XML-om?