Пројектовање софтвера/Јануар 2022 — разлика између измена
м (→10. zadatak: remote) |
м (Formatiranje) |
||
| Ред 5: | Ред 5: | ||
šta važi za sledeći dijagram klasa: | šta važi za sledeći dijagram klasa: | ||
[[Датотека:PS Januar 2022 zadatak 1 dijagram klasa.svg|мини|Dijagram klasa iz prvog zadatka.]] | [[Датотека:PS Januar 2022 zadatak 1 dijagram klasa.svg|мини|Dijagram klasa iz prvog zadatka.]] | ||
<div class="abc-list" data-solution="multiple"> | <div class="abc-list" data-solution="multiple"> | ||
# | # Objekat klase B može da pozove metod a1(). | ||
# <span class="solution">Objekat klase B je odgovoran za životni vek objekta klase A .</span> | # <span class="solution">Objekat klase B je odgovoran za životni vek objekta klase A.</span> | ||
# <span class="solution">Objekat klase A nema prikazan nijedan atribut.</span> | # <span class="solution">Objekat klase A nema prikazan nijedan atribut.</span> | ||
# Objekti klase A sadrže objekte klase B. | # Objekti klase A sadrže objekte klase B. | ||
| Ред 23: | Ред 22: | ||
== 3. zadatak == | == 3. zadatak == | ||
Dijagrami složene strukture mogu da prikažu unutrašnju strukturu: | Dijagrami složene strukture mogu da prikažu unutrašnju strukturu: | ||
<div class="abc-list" data-solution="multiple"> | <div class="abc-list" data-solution="multiple"> | ||
# Portova | # Portova | ||
| Ред 34: | Ред 32: | ||
== 4. zadatak == | == 4. zadatak == | ||
Povezati konstrukte jezika UML sa dijagramima na kojima se pojavljuju: | Povezati konstrukte jezika UML sa dijagramima na kojima se pojavljuju: | ||
{| class="wikitable" | {| class="wikitable" | ||
|+ Opcije | |+ Opcije | ||
| Ред 65: | Ред 62: | ||
== 5. zadatak == | == 5. zadatak == | ||
Multiplikativnost na strani elementa zbirke, povezane relacijom asocijacije sa kvalifikatorom na strani zbirke, određuje: | Multiplikativnost na strani elementa zbirke, povezane relacijom asocijacije sa kvalifikatorom na strani zbirke, određuje: | ||
<div class="abc-list" data-solution="single"> | <div class="abc-list" data-solution="single"> | ||
# <span class="solution">Broj primeraka elemenata koji odgovaraju kvalifikatoru u jednom primerku zbirke.</span> | # <span class="solution">Broj primeraka elemenata koji odgovaraju kvalifikatoru u jednom primerku zbirke.</span> | ||
| Ред 79: | Ред 74: | ||
potrebno dodatno implementirati u razvijanom sistemu da bi bila podržana komunikacija između Izdavača i pretplatnika po projektnom uzorku ''Posmatrač'' sa modelom | potrebno dodatno implementirati u razvijanom sistemu da bi bila podržana komunikacija između Izdavača i pretplatnika po projektnom uzorku ''Posmatrač'' sa modelom | ||
preuzimanja (eng. ''pull model'')? | preuzimanja (eng. ''pull model'')? | ||
<div class="abc-list" data-solution="multiple"> | <div class="abc-list" data-solution="multiple"> | ||
# Radni okvir obezbeđuje samo interfejse apstraktnog posmatrača i apstraktnog subjekta, a klase koje se dodaju, implementirajući te interfejse obezbeđuju kompletnu logiku komunikacije. | # Radni okvir obezbeđuje samo interfejse apstraktnog posmatrača i apstraktnog subjekta, a klase koje se dodaju, implementirajući te interfejse obezbeđuju kompletnu logiku komunikacije. | ||
| Ред 92: | Ред 85: | ||
== 7. zadatak == | == 7. zadatak == | ||
Koje od navedenih tvrdnji su tačne za projektni uzorak ''Podsetnik''? | Koje od navedenih tvrdnji su tačne za projektni uzorak ''Podsetnik''? | ||
<div class="abc-list" data-solution="multiple"> | <div class="abc-list" data-solution="multiple"> | ||
# Objekti uloge ''Podsetnik'' su obavezno aktivni. | # Objekti uloge ''Podsetnik'' su obavezno aktivni. | ||
| Ред 101: | Ред 92: | ||
# <span class="solution">''Podsetnik'' može da se koristi zajedno sa ''Iteratorom'' za čuvanje podatka o tekućem elementu.</span> | # <span class="solution">''Podsetnik'' može da se koristi zajedno sa ''Iteratorom'' za čuvanje podatka o tekućem elementu.</span> | ||
</div> | </div> | ||
== 8. zadatak == | == 8. zadatak == | ||
Koji projektni uzorak razdvaja apstrakciju od njene implementacije da bi se mogle nezavisno menjati? | Koji projektni uzorak razdvaja apstrakciju od njene implementacije da bi se mogle nezavisno menjati? | ||
Odgovor: <span class="spoiler" data-solution="text">Most</span> | Odgovor: <span class="spoiler" data-solution="text">Most</span> | ||
== 9. zadatak == | == 9. zadatak == | ||
Koje od navedenih tvrdnji su tačne za projektni uzorak ''Komanda''? | Koje od navedenih tvrdnji su tačne za projektni uzorak ''Komanda''? | ||
<div class="abc-list" data-solution="multiple"> | <div class="abc-list" data-solution="multiple"> | ||
# <span class="solution">''Komanda'' je objektni uzorak ponašanja</span> | # <span class="solution">''Komanda'' je objektni uzorak ponašanja</span> | ||
| Ред 116: | Ред 107: | ||
# Konkretne komande se često realizuju kao ''Unikat''. | # Konkretne komande se često realizuju kao ''Unikat''. | ||
</div> | </div> | ||
== 10. zadatak == | == 10. zadatak == | ||
Kako se naziva vrsta zastupnika koja obezbeđuje lokalnog predstavnika objekta koji se nalazi u drugom adresnom prostoru? | Kako se naziva vrsta zastupnika koja obezbeđuje lokalnog predstavnika objekta koji se nalazi u drugom adresnom prostoru? | ||
Верзија на датум 1. фебруар 2022. у 01:29
- За питања са више одговора, тачни одговори су подебљани и уоквирени
- За питања за које се одговори уносе, тачни одговори су подвучени и сакривени, тако да се прикажу када изаберете тај текст (пример: овако)
- Притисните лево дугме испод за сакривање и откривање свих одговора, или десно дугме за укључивање и искључивање интерактивног режима:
1. zadatak
šta važi za sledeći dijagram klasa:
- Objekat klase B može da pozove metod a1().
- Objekat klase B je odgovoran za životni vek objekta klase A.
- Objekat klase A nema prikazan nijedan atribut.
- Objekti klase A sadrže objekte klase B.
- Objekat klase B sadrži proizvoljan broj objekata klase A.
2. zadatak
Koja ključna reč za čvorove objekata na dijagramu aktivnosti se koristi za prikazivanje upravljanja tokovima objekata iz više izvora prema više odredišta?
Odgovor: <<centralBuffer>>
Objašnjenje: Odgovor <<central buffer>> ili central buffer je bio priznavan sa 75% bodova nakon žalbi.
3. zadatak
Dijagrami složene strukture mogu da prikažu unutrašnju strukturu:
- Portova
- Komponenti
- Interfejsa
- Saradnji
- Klasa
4. zadatak
Povezati konstrukte jezika UML sa dijagramima na kojima se pojavljuju:
| Jezički konstrukt | Vrsta dijagrama |
|---|---|
|
|
Objašnjenje: Završno stanje na dijagramu stanja zapravo nije pseudostanje, već specijalno stanje, pa je neoznačavanje odgovora na ovom pitanju nakon žalbi donosilo sve bodove.
5. zadatak
Multiplikativnost na strani elementa zbirke, povezane relacijom asocijacije sa kvalifikatorom na strani zbirke, određuje:
- Broj primeraka elemenata koji odgovaraju kvalifikatoru u jednom primerku zbirke.
- Broj primeraka zbirke u kojima se može naći jedan ili više primeraka elementa.
- Broj primeraka zbirke u kojima se može nalaziti jedan prime rak elementa.
- Broj primeraka elementa koji se mogu nalaziti u jednom primerku zbirke.
- Broj primeraka elemenata koji odgovaraju kvalifikatoru ukupno u svim primercima zbirke.
6. zadatak
Ako se pri razvoju sistema koristi radni okvir koji obezbeđuje arhitekturu Izdavač-Pretplatnik (eng. Publisher - Subscriber), šta od navedenog važi za korisničke klase koje je potrebno dodatno implementirati u razvijanom sistemu da bi bila podržana komunikacija između Izdavača i pretplatnika po projektnom uzorku Posmatrač sa modelom preuzimanja (eng. pull model)?
- Radni okvir obezbeđuje samo interfejse apstraktnog posmatrača i apstraktnog subjekta, a klase koje se dodaju, implementirajući te interfejse obezbeđuju kompletnu logiku komunikacije.
- Klase koje se dodatno implementiraju imaju uloge Konkretnog Subjekta i Konkretnog Posmatrača i izvode se iz klasa radnog okvira.
- Odgovornost dodatnih klasa je da obezbede da se obaveštavanje posmatrača o promenama stanja subjekta obavlja asinhrono.
- Konkretni posmatrač implementira metod koji određuje reakciju na promenu stanja subjekta, kao nadjačan prost korak Šablonskog metoda propisanog u apstraktnom posmatraču.
- Vođenje i ažuriranje zbirke prijavljenih posmatrača se implementira u dodatoj klasi konkretnog subjekta.
Objašnjenje: Stavka pod d je na kolokvijumu bila označena kao tačna, ali zapravo nije.
7. zadatak
Koje od navedenih tvrdnji su tačne za projektni uzorak Podsetnik?
- Objekti uloge Podsetnik su obavezno aktivni.
- Učesnik Podsetnik ima dva interfejsa, gde učesnik Subjekat vidi uski. a učesnik Čuvar vidi širok.
- Predstavlja objektni uzorak strukture.
- Učesnik Subjekat ima diskreciono pravo da odluči koji deo stanja se čuva.
- Podsetnik može da se koristi zajedno sa Iteratorom za čuvanje podatka o tekućem elementu.
8. zadatak
Koji projektni uzorak razdvaja apstrakciju od njene implementacije da bi se mogle nezavisno menjati?
Odgovor: Most
9. zadatak
Koje od navedenih tvrdnji su tačne za projektni uzorak Komanda?
- Komanda je objektni uzorak ponašanja
- Multiplikativnost asocijacije od Izvršioca do Komande na strani Izvršioca je obavezno 1.
- Makrokomanda je varijanta Komande.
- Komanda može imati više Pokretača.
- Konkretne komande se često realizuju kao Unikat.
10. zadatak
Kako se naziva vrsta zastupnika koja obezbeđuje lokalnog predstavnika objekta koji se nalazi u drugom adresnom prostoru?
Odgovor: udaljen
Objašnjenje: Može i "ambasador" ili "remote".