You are on page 1of 7

1. Opisati ulogu GUI kontrole Menu? Sistem sadr i veliku koliinu informacija i izvr ava razliite funkcije.

S obzirom na tu namjenu sistem mora obezbjediti nain da ka e korisnicima o informacijama koje treb aju ili ta trebaju uraditi.To se posti e i prikazivanjem liste izbora ili alternati ve koje korisnik ima na odgovarajuoj taci dok koristi sistem,ili kreiranjem vi e lis ti izbor koji vode ljude od serije generalnog opisa kroz poveanje specifine katego rije sljedei ponuene liste izbora sve dok se najni i nivo ne postigne, odnosno dok s e ne postigne eljeni izbor. Ta lista izbora se naje e naziva meni. Meni je glavna for ma navigacije kroz sistem.ili kreiranjem vi e listi izbor koji vode ljude od serij e generalnog opisa kroz poveanje specifine kategorije sljedei ponuene liste izbora s ve dok se najni i nivo ne postigne, odnosno dok se ne postigne eljeni izbor. Ta lis ta izbora se naje e naziva meni. Meni je glavna forma navigacije kroz sistem. 2. Koji su osnovni tipovi grafikih menija? Meni linija (Menu bar) Pull-Down Meniji Kaskadni meniji Pop-up meniji Meni sa ikonama 3. Koja se kontrola koristi za meni, koje su njene osobine i metode, a i koji je njen osnovni dogaaj. Definisati i deklarisati dogaaj koristei sintaksu Visual S tudio-a. Za meni se koristi kontrola MenuStrip. MenuStrip svojstva: MenuItems ; HasChildren ; RightToLeft.... Na meni mozemo dodati ToolStripMenuItem (PROBAJTE U VISUAL STUDIO - U!!! ), i to tri vrste : MenuItem ,ComboBox, TextBox. ToolStripMenuItem svojstva : Checked ; CheckOnClick ; Index ; Sh ortcutKeyDisplayString .... ToolStripMenuItem Dogadaj : Click - Generi e se kada se item kl ikne ili se koristi shortcut key . 4. ta su SDI aplikacije a ta su MDI aplikacije.

Aplikacije koje imaju interface preko jednog prozora su SDI (Single Document Int erface ).To znaci da istovremeno moze biti otvoren samo jedan prozor/dokument.TA kav je npr. Paint. Aplikacije koje mogu editovati vise dokumenata u isto vrijeme - MDI (multiple do cument interface). 5. ta je potrebno uraditi (navesti sekvencu iskaza) da bi se dijete forma dodala na roditelj kontrolu Form. 1.Kreiramo formu (koja ce nam biti roditelj); 2.Postavimo njenu osobinu IsMdiContainer na true ( u properties - ima); 3.U istom projektu kreiramo novu formu (koja ce biti dijete ) i nazovemo je npr. Dijete; 4.Sada u formi roditelj moramo #include "Dijete.h" i napravimo neki doga daj koji ce nam prikazati tu formu dijete.Npr: Mozemo napraviti button i u njemu generisati Click dogadaj(To zn aci da ce se pojaviti ta forma dijete kada kliknemo na Button)Dobijemo ovo za pocetak: private: System::Void button1_Click(System::Object^ sender, Sys tem::EventArgs^ e) { } Sada unutar tog dogadaja mi dodamo ovo: private: System::Void button1_Click(System::Object^ sender, Sys tem::EventArgs^ e) {

Child ^dijete = gcnew Child(); //kreiramo dijet e dijete -> MdiParent() = this; je roditelj this, tj. ova forma dijete -> Show(); } //prikazi dijete //stavimo da mu

6. U kojem obliku se mogu prikazati djeca na roditelj formi (layout MDI). ArrangeIcons; Cascade; TileHorizontal; TileVertical; 7. Ukoliko imamo meni Layout i podmenije Cascade, Tile, itd. napisati dogaaj koji bi izborom tj. klikom na Cascade promijenio Layout MDI forme. private: System::Void cascadeToolStripMenuItem_Click(System::Obj ect^ sender, System::EventArgs^ e) { this->LayoutMdi( MdiLayout::Cascade ); } 8. ta se posti e sa vizuelnim nasljeivanjem? Omogucava da se postigne vizuelna konzistentnost kroz aplikaciju. 9. ta sve nasljeuje izvedena forma od osnovne forme? Izvedena Form klasa sadr i funkcionalnosti od svoje osnovne klase vezane z a kontrolu Form, 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 10. Koji su koraci kreiranja vlastitih kontrola?

11. ta je nit thread? Niti (engl. threads), predstavljaju bazine cjeline za izvr avanje koda pod savremen im operativnim sistemima. Nit je programska cjelina koja treba da obavi jedan za datak. Niti (jedna ili vi e) pripadaju jednom slo enijem procesu. 12. Koje klase se u .NET koriste za upravljanje nitima? Dvije klase vezane za vi enitne aplikacije su Thread i Monitor (System.Threading n amespace). 13. Koje su osnovne metode klase Thread, a koje klase Monitor? Thread : Start, Abort, Sleep, Suspend; Monitor : Wait, Pulse, PulseAll 14. Napisati program koji e aktivirati dvije niti. Zadatak svake niti e biti da sp avaju sluajni period vremena. MessagePrinter.h #using <mscorlib.dll> using namespace System; using namespace System::Threading; public ref class MessagePrinter { int sleepTime;

static Random *random = new Random(); public: MessagePrinter() { sleepTime = random->Next( 5001 ) } // random vrijeme spavanja 0 - 5 sekundi Print() { // pointer na konkurentno izvr ivu nit Thread *current = Thread::CurrentThread; // postavlja nit u stanje spavanja Thread::Sleep( sleepTime ); Console::WriteLine( "Gotovo spavanje", current->Name ); }

}; // ThreadTester.cpp // Glavni program za MessagePrinter. #include "stdafx.h" #include "MessagePrinter.h" using namespace System; using namespace System::ComponentModel; using namespace System::Collections; using namespace System::Data; int main() { MessagePrinter *printer1 = new MessagePrinter(); Thread *thread1 = new Thread ( new ThreadStart( printer1, &Messa gePrinter::Print ) ); thread1->Name = "nit1"; MessagePrinter *printer2 = new MessagePrinter(); Thread *thread2 = new Thread ( new ThreadStart( printer2,&Messag ePrinter::Print ) ); thread2->Name = "nit2"; nit1->Start(); nit2->Start(); return 0; } 15. ta je deadlock i kako se mo e izbjei opisati koje klase i metode se pri tome kor iste. Deadlock se de ava kada nit koja eka (nazivimo je nit1) ne mo e nastaviti izvr avanje j er eka (direktno ili indirektno) da druga nit (nit2) odradi svoj task da bi nasta vila, dok simultano nit2 ne mo e nastaviti jer eka (direktno ili indirektno) da nit 1 odradi svoj task da bi nastavila. Dvije niti ekaju jedna na drugu, tako da akci je koje omoguavaju druge niti da nastave izvr avanje nikada se ne desi. Koristimo Monitor metode Enter i Exit za izbjegavanje problema. 16. ta se posti e sa postavljanjem priorteta niti. Osiguravamo da niti sa najvecim prioritetom dobiju procesor prije ostali h, i da obave to sto imaju. //To je ko ono iz OS -a cini mi se. 17. Monitor metode __________ i __________ zahtjevaju i oslabaaju lock na objekat . ENTER EXIT 18. Ako je grupa od jednako-prioritenih niti svaka nit dobija dio vremena nazvan _______________, za vrijeme izvr avanja programa. KVANTUM

ta je exception-izuzetak ? Izuzetak (exception) je indikacija problema koji se de ava za vrijeme izvr a vanja programa. Naziv 'izuzetak' ('exception') da iako se problem de ava, de ava se rijetko. Upravljanje gre kama omoguava programerima da program nastavi izvr a vanje kao da se problem nije ni desio. Za dodatne poene : Ono cime Neira gadja Antoniju :P 20. Koji su koraci kreiranja sopstvene klase za upravljanje exception-ima. Ilust rirati primjerom. Defini emo klasu MyException ref class MyException : public System::Exception { //NASLIJEDJUJE SE IZ System ::Exception !!! public: int errNo; //Napisali smo i zuzetak koji ima poruku i neki kao svoj broj(errNo), mada moze i bez toga MyException(String^ msg, int num) : Exception(msg), errNo(num) {} //Konstruktor }; dodajmo kod funkciju koja uzrokuje izuzetak:

19.

void func(int a) { if (a <= 0) throw new MyException( "Neki izuzetak", 1000); }

Main za test bi izgledao: int main() try } catch(MyException^ pex) { Console::WriteLine("Caught MyException in main()"); Console::WriteLine("Message is : ", pex->Message); Console::WriteLine("Error number is : ",(pex->errNo)); } return 0; } { { func(0);

21. Koja je uloga _finally bloka u kombinaciji sa try

catch-finally blokom.

_finally se odrauje i ako se desi i ne desi exception, pa valjda da znamo da je sve OK, ili nesto slicno. 22. Koje su osobine Exception klase. Message : Vraa poruku povezanu sa izuzetkom StackTrace : Vraa string koji sadr i detalje o steku

Source Vraa string koji sadr i ime objekta ili aplikacije koji je uzrokova o gre ku 23. Navesti naje e uzroke de avanja izuzetaka. Npr. dijeljenje sa nulom, prekoracenje, index izvan ranga, pozivanje met ode koj nije podrzana, pogresna konverzija... (Sve ono sto se moze naci u mom klasicnom programu:)) OVAJ RADITE SAMI: 24.Definisanu klasu Uposlenik sa atributima: maticni broj, godin a roenja, plata. Potrebni su sljedei izuzeci postavljeni za konstruktor klase: -IzuzetakIlegalanMaticniBroj - identifikacioni broj nije 13-cifr eni cijeli broj -IzuzetakIlegalnaGodinaRodenja godina roenja prije 1900 godine - IzuzetakIlegalnaPlata nije realna vrijednost vea od nule Takoe, svi atribute klasa treba da sadrze set metode, pri emu set metode uzrokuju gore spomenute izuzetke. Napisati C++ program za implementaciju gore pomenutog. Ilustrira ti primjenu klase na sljedei nain: -unos podataka sa standarnog ulaza sa podacima o Uposleniku pri e mu je matini broj 12346789, godina roenja 1980, plata 800.00 -unos podataka sa standardnog ulaza sa podacima o Uposleniku pri emu je 1211980186521, godina roenja 1880, plata 800.70. -unos podataka sa standardnog ulaza sa podacima o Uposleniku pri emu je 1211980186521, godina roenja 1980, plata -800 -unos podataka sa standardnog ulaza sa podacima o Uposleniku pri emu je 1211980186521, godina roenja 1980, plata 800.00 i poziv set metoda sa vrijednostima koje izazivaju izuzetke. 25. Navesti definicije testiranja programa kroz istoriju. Shvatanje testiranja se mijenjalo godinama. 1. 1979, Glenford Myers je objasnio testiranje kao proces izvr avanja programa ili sistema sa ciljom pronala enja gre aka, u svojoj knjizi Art of Software Testing . U to vrijemo ova definicija je bila najbolja raspolo iva i dugo je i bila primjenji vana. U principu testiranje se odvijalo na kraju softverskog razvoja i osnovna namjena je pronala e nje gre aka. 2. 1983 definicija testiranja se promijenila i ukljuuje odreivanje kvaliteta so ftvera u odnosu na samo pronala anje gre aka. U Complete Guide to Software Testing , Bi ll Hetzel je opisao testiranje kao svaku aktivnost sa ciljem procjene atributa ( pona anja) programa ili sistema. Testiranje je mjerenje kvaliteta softvera. Gornje dvije definicije su jo uvijek validne jer obe adresiraju posebna gledi ta te stiranja softvera. Ali problem sa ovim definicijama je vidokrug (scope) pa se po javljuju u posljednje vrijeme i definicije tipa: 3. 2002 Testiranje je konkurentni proces procesu razvoja softvera, koji je pot rebno odr avati u namjeni mjerenja i pobolj anja kvaliteta softvera (na ovom princip u zasnovana tzv. STEP metodologija) 26.Objaniti ulogu i znaaj testiranja pri procesu razvoja softvera.

Kvalitet isporuenog softvera u mnogome ovisi o trudu utro enom na testiranju datog, zato je jako bitno ne zanemariti testiranje pri razvoju softvera. Tj. da bi softver bio dobar, moramo ga testirati da nadjemo greske ili nesto sl. , glupo pitanje. 27. Navesti tehnike testiranja i napisati za svaku 1-2 reenice. 1. Statiko black-box testiranje - Testiranje specifikacije je statiko bla ck-box testiranje. Specifikacija je dokument i nije program koji se izvr ava, samim tim je statiko testiranje. 2. Dinamiko black-box testiranje Testiranje sofvera bez uvida u n jegov kod je dinamiko black-box testiranje. Dinamiko je zato to se program izvr ava. Tester ga koristi na nain kao to e ga koristi korisnik. Black-box je zato to tester ne po znaje kako program tano radi. Tester unosi ulaze, dobija izlaze i provjerava njihovu ispravnost. Jednostavno reeno black-box testiranje tes tira pona anje softvera kada se koristi. Kod dinamikog black-box testiranj a postoje jo dodatna dva pristupa testiranju softvera : testiraj da proe i testiraj da padne . 3. Statiko white-box testiranje je proces pa ljivog i metodolo kog p regleda dizajna, arhitekture i koda softvera s ciljem da se pronae bug bez pokretanja softvera. Taj proces se takoe naziva i strukturalna analiz a. 4. Dinamicko white-box testiranje Po to je testiranje dinamiko znai da se testira softver u fazi izvr avanja, a po to je white-box znai da se ima i uvida u sami kod i prati njegovo izvr avanje iznutra. Dinamiko white-box testiranje bi se moglo nazvati i rentgensko testiranje .

28. Ako se nije desio izuzetak u try bloku gdje se nastavlja izvr avanje program n akon to try blok izvr avanje? Valjda preskoci catch blok i nastavlja normalno sa daljnim programom. 29. ta se de ava ako se izuzetak desi izvan try bloka? Onda izleti npr. ovakav prozorcic :

An unhandled exception of type 'System.ArgumentException' occurr ed in Izuzeci.exe Additional information: Dijeljenje nulom. I pita te hoces li Continue ili Break. 30. Kada postoji, _________ blok povezan sa try blokom se uvijek izvr ava. VALJDA ONAJ FINNALY 31. Izvedene klase se izvode iz klase _______________. MISLIM DA MISLI NA Syst em::Exception , MALO JE NEASNO PITANJE 32. Napisati program koji demonstrira kako razliiti izuzeci se obrauju sa: catch ( Exception exceptionParameter )

33. Klasa za upravljanje gre kama System::ArithmeticException indicira gre ke vezane za aritmetike operacije. Napisati program koji podi e ovaj exception u sluaju sabir anja operatora koji su razliitog tipa.

You might also like