Пројектовање софтвера/К1 2022 — разлика између измена
(+k1 2022) |
м (single -> multiple) |
||
| Ред 5: | Ред 5: | ||
== 1. zadatak == | == 1. zadatak == | ||
Koji od sledećih principa predstavljaju obavezne principe objektno orijentisanog modela? | Koji od sledećih principa predstavljaju obavezne principe objektno orijentisanog modela? | ||
<div class="abc-list" data-solution=" | <div class="abc-list" data-solution="multiple"> | ||
# Konkurentnost | # Konkurentnost | ||
# <span class="solution">Hijerarhija</span> | # <span class="solution">Hijerarhija</span> | ||
| Ред 19: | Ред 19: | ||
== 2. zadatak == | == 2. zadatak == | ||
Izaberite jedan ili više odgovora: | Izaberite jedan ili više odgovora: | ||
<div class="abc-list" data-solution=" | <div class="abc-list" data-solution="multiple"> | ||
# Artefakt je stvar organizacije. | # Artefakt je stvar organizacije. | ||
# <span class="solution">Paket i radni okvir (eng. ''framework'') su stvari organizacije.</span> | # <span class="solution">Paket i radni okvir (eng. ''framework'') su stvari organizacije.</span> | ||
| Ред 45: | Ред 45: | ||
== 5. zadatak == | == 5. zadatak == | ||
Koji ukrasi mogu da se pojave na vezama, na dijagramu objekata? | Koji ukrasi mogu da se pojave na vezama, na dijagramu objekata? | ||
<div class="abc-list" data-solution=" | <div class="abc-list" data-solution="multiple"> | ||
# multiplikativnost 1..* | # multiplikativnost 1..* | ||
# <span class="solution">simbol agregacije ili kompozicije</span> | # <span class="solution">simbol agregacije ili kompozicije</span> | ||
| Ред 55: | Ред 55: | ||
== 6. zadatak == | == 6. zadatak == | ||
Koje tvrdnje o projektnim uzorcima su tačne? | Koje tvrdnje o projektnim uzorcima su tačne? | ||
<div class="abc-list" data-solution="multiple"> | |||
<div class="abc-list" data-solution=" | |||
# <span class="solution">Svaki objektno orijentisani projektni uzorak je zabeleženo iskustvo projektovanja.</span> | # <span class="solution">Svaki objektno orijentisani projektni uzorak je zabeleženo iskustvo projektovanja.</span> | ||
# <span class="solution">Svaki objektno orijentisani projektni uzorak sistematično imenuje, objašnjava i ocenjuje važno projektno rešenje.</span> | # <span class="solution">Svaki objektno orijentisani projektni uzorak sistematično imenuje, objašnjava i ocenjuje važno projektno rešenje.</span> | ||
| Ред 70: | Ред 67: | ||
== 7. zadatak == | == 7. zadatak == | ||
Koje tvrdnje u vezi sa projektnim uzorkom ''Šablonski metod'' su tačne? | Koje tvrdnje u vezi sa projektnim uzorkom ''Šablonski metod'' su tačne? | ||
<div class="abc-list" data-solution="multiple"> | |||
<div class="abc-list" data-solution=" | |||
# <span class="solution">Podrazumevane (''hook'') metode implementiraju podrazumevano ponašanje u apstraktnoj klasi i ne moraju da budu implementirane u konkretnim klasama.</span> | # <span class="solution">Podrazumevane (''hook'') metode implementiraju podrazumevano ponašanje u apstraktnoj klasi i ne moraju da budu implementirane u konkretnim klasama.</span> | ||
# <span class="solution">Dozvoljeno je da šabolnski metod sadrži pozive samo apstraktnih metoda.</span> | # <span class="solution">Dozvoljeno je da šabolnski metod sadrži pozive samo apstraktnih metoda.</span> | ||
| Ред 83: | Ред 77: | ||
== 8. zadatak == | == 8. zadatak == | ||
Koje od navedenih tvrdnji su tačne za projektni uzorak ''Prototip''? | Koje od navedenih tvrdnji su tačne za projektni uzorak ''Prototip''? | ||
<div class="abc-list" data-solution="multiple"> | |||
<div class="abc-list" data-solution=" | |||
# <span class="solution">Uzorak treba koristiti kada sistem treba da bude nezavisan od toga kako se njegovi proizvodi stvaraju i predstavljaju.</span> | # <span class="solution">Uzorak treba koristiti kada sistem treba da bude nezavisan od toga kako se njegovi proizvodi stvaraju i predstavljaju.</span> | ||
# <span class="solution">Uzorak je namenjen stvaranju novih primeraka (objekata) kloniranjem postojećeg primerka.</span> | # <span class="solution">Uzorak je namenjen stvaranju novih primeraka (objekata) kloniranjem postojećeg primerka.</span> | ||
| Ред 95: | Ред 87: | ||
== 9. zadatak == | == 9. zadatak == | ||
Koje od navedenih tvrdnji su tačne za projektni uzorak ''Sastav''? | Koje od navedenih tvrdnji su tačne za projektni uzorak ''Sastav''? | ||
<div class="abc-list" data-solution="multiple"> | |||
<div class="abc-list" data-solution=" | |||
# <span class="solution">Uzorak čini jednostavnim dodavanje nove vrste elemenata.</span> | # <span class="solution">Uzorak čini jednostavnim dodavanje nove vrste elemenata.</span> | ||
# Projektni uzorak ''Sastav'' omogućuje jednostavno ograničavanje vrste elemenata koje neki sastavi sadrže. | # Projektni uzorak ''Sastav'' omogućuje jednostavno ograničavanje vrste elemenata koje neki sastavi sadrže. | ||
Верзија на датум 2. новембар 2022. у 17:30
Prvi kolokvijum 2022. godine održan je regularno u prvoj kolokvijumskoj nedelji (5. nedelja fakulteta) i trajao je 20 minuta.
- За питања са више одговора, тачни одговори су подебљани и уоквирени
- За питања за које се одговори уносе, тачни одговори су подвучени и сакривени, тако да се прикажу када изаберете тај текст (пример: овако)
- Притисните лево дугме испод за сакривање и откривање свих одговора, или десно дугме за укључивање и искључивање интерактивног режима:
1. zadatak
Koji od sledećih principa predstavljaju obavezne principe objektno orijentisanog modela?
- Konkurentnost
- Hijerarhija
- Modularnost
- Jednostavnost
- Perzistencija
- Kapsulacija
- Prenosivost
- Apstrakcija
- Fleksibilnost
2. zadatak
Izaberite jedan ili više odgovora:
- Artefakt je stvar organizacije.
- Paket i radni okvir (eng. framework) su stvari organizacije.
- Slučaj korišćenja (eng. use-case) je stvar ponašanja.
- Automat stanja je stvar ponašanja.
- Klasa, aktivna klasa i interfejs su stvari strukure[sic].
3. zadatak
Za relacije koje se pojavljuju na dijagramima klasa izabrati opis koji ih najbolje određuje:
- Zavisnost Povezuje stvari kod kojih izmena jedne stvari utiče na ponašanje druge stvari
- Asocijacija Apstrakcija veza između objekata odgovarajućih klasa u relaciji
- Generalizacija Povezuje specijalizovane stvari sa opštijim
- Asocijacija Semantička relacija između klasifikatora od kojih jedan specificira ugovor a drugi garantuje njegovu implementaciju
Napomena: Bilo je ponuđeno još 3 odgovora, ali izgubljeni su zubom vremena. Neformalno rečeno nešto kao "povezuje stvari tako da jedna igra ulogu celine a druge ulogu dela" (misli se na agregaciju) i "povezuje stvari tako da postoji odnos celina/deo ali je celina odgovorna za životni vek dela" (misli se na kompoziciju)
4. zadatak
Koja ključna reč treba da stoji umesto znakova pitanja <<???>> kao oznaka relacije privatnog uvoza između dva paketa?
Odgovor: access
5. zadatak
Koji ukrasi mogu da se pojave na vezama, na dijagramu objekata?
- multiplikativnost 1..*
- simbol agregacije ili kompozicije
- ugnežđivanje (+ u kružiću)
- vidljivost (pravo pristupa) uloge na kraju veze, preko objekta na drugom kraju veze
- jednosmerna ili dvosmerna navigabilnost (strelice)
6. zadatak
Koje tvrdnje o projektnim uzorcima su tačne?
- Svaki objektno orijentisani projektni uzorak je zabeleženo iskustvo projektovanja.
- Svaki objektno orijentisani projektni uzorak sistematično imenuje, objašnjava i ocenjuje važno projektno rešenje.
- Svaki objektno orijentisani projektni uzorak identifikuje učestvujuće klase i objekte, njihove relacije, njihove uloge u sradnji i raspodelu odgovornosti.
- Svaki objektno orijentisani projektni uzorak pozitivno doprinosi portabilnosti (prenosivosti) implementiranog softvera.
- Svaki objektno orijentisani projektni uzorak opisuje reupotrebljivo jezgro rešenja ponavljajućeg problema.
- Svaki objektno orijentisani projektni uzorak predstavlja gotovo rešenje problema koje se nalazi u biblioteci klasa ili radnom okviru.
- Svaki objektno orijentisani projektni uzorak pozitivno doprinosi efikasnosti (brzini) implementiranog softvera.
7. zadatak
Koje tvrdnje u vezi sa projektnim uzorkom Šablonski metod su tačne?
- Podrazumevane (hook) metode implementiraju podrazumevano ponašanje u apstraktnoj klasi i ne moraju da budu implementirane u konkretnim klasama.
- Dozvoljeno je da šabolnski metod sadrži pozive samo apstraktnih metoda.
- U klasama koje implementiraju projektni uzorak Šablonski metod ključno je pozivanje metoda osnovne klase iz metoda izvedene klase.
- Šablonski metod omogućava dinamičku promenu koraka nekog algoritma.
- Šabolsnki metod je objektni uzorak ponašanja.
8. zadatak
Koje od navedenih tvrdnji su tačne za projektni uzorak Prototip?
- Uzorak treba koristiti kada sistem treba da bude nezavisan od toga kako se njegovi proizvodi stvaraju i predstavljaju.
- Uzorak je namenjen stvaranju novih primeraka (objekata) kloniranjem postojećeg primerka.
- Uzorak se često koristi u kombinaciji sa projektnim uzorkom Unikat.
- Ne mora svaka potklasa koja predstavlja učesnika apstraktne klase Prototip da implementira operaciju za kopiranje.
- Uzorak treba koristiti kada se klase specificiraju u vreme izvršavanja.
9. zadatak
Koje od navedenih tvrdnji su tačne za projektni uzorak Sastav?
- Uzorak čini jednostavnim dodavanje nove vrste elemenata.
- Projektni uzorak Sastav omogućuje jednostavno ograničavanje vrste elemenata koje neki sastavi sadrže.
- Omogućava klijentima da uniformno tretiraju individualne objekte i njihove kompozicije.
- Projektni uzorak Sastav predstavlja objektni uzorak kreiranja.
- Klasa koje predstavlja učesnika apstraktnog tipa Element ne treba da sadrži u ugovoru sve metode učesnika konkretnog tipa Sastav.
10. zadatak
Koliko bi se ukupno objekata napravilo ukoliko bi bilo potrebno napraviti tekst komponentu sa dva klizača i jednim okvirom? Uzeti da se za stvaranje objekata koriste klase koje su prikazane na klasnom dijagramu ispod.
PLACEHOLDER: OVDE IDE SLIKA ZADATKA
Odgovor: 4