Пројектовање софтвера/Фебруар 2022 — разлика између измена

Извор: SI Wiki
Пређи на навигацију Пређи на претрагу
м (Rešeno)
 
(Није приказано 9 међуизмена 4 корисника)
Ред 1: Ред 1:
{{tocright}}
{{tocright}}
{{nerešeno}}
'''Februarski ispit 2022. godine''' održan je 22. februara. Tekst zadataka ispod je po sećanju studenata.
'''Februarski ispit 2022. godine''' održan je 22. februara. Tekst zadataka ispod je po sećanju studenata.
{{rešenja}}
{{rešenja}}
Ред 18: Ред 17:
[[Датотека:PS februar 2022 zadatak 2 dijagram sekvence.svg|мини|Dijagram iz drugog zadatka.]]
[[Датотека:PS februar 2022 zadatak 2 dijagram sekvence.svg|мини|Dijagram iz drugog zadatka.]]
<div class="abc-list" data-solution="multiple">
<div class="abc-list" data-solution="multiple">
# Prikazani dijagram je dijagram sekvence.
# <span class="solution">Prikazani dijagram je dijagram sekvence.</span>
# Objekat sa <code>{transient}</code> ograničenjem se stvara i uništava u toku sekvence.
# <span class="solution">Objekat sa <code>{transient}</code> ograničenjem se stvara i uništava u toku sekvence.</span>
# Prva poruka koja se šalje je sinhrona.
# Metoda <code>promptKomanda()</code> je sinhrona.
# ...
# <span class="solution">Metoda <code><<create>></code> stvara objekat tipa <code>Transakcija</code>.</span>
# Metoda <code>provera()</code> nema parametre.
</div>
</div>


== 3. zadatak ==
== 3. zadatak ==
Izabrati dijagram raspoređivanja od sledećih dijagrama:
Koji dijagram se koristi za modeliranje izvršnih izdanja?
 
<div class="abc-list" data-solution="single">
...
# raspoređivanja
# klasa
# <span class="solution">komponenata</span>
# interakcija
# aktivnosti
</div>


== 4. zadatak ==
== 4. zadatak ==
Kolika je multiplikativnost sa suprotne strane kvalifikatora na datom dijagramu?
Modelira se sistem u kom se na Parkingu nalaze Automobili. Potrebno je koristeći kvalifikator selektovati automobile po njihovoj boji. Multiplikativnost sa suprotne strane kvalifikatora koja odgovara opisanom slučaju je:
[[Датотека:PS februar 2022 zadatak 4 dijagram klasa.svg|мини|Dijagram klasa iz četvrtog zadatka.]]
<div class="abc-list" data-solution="single">
<div class="abc-list" data-solution="single">
# <span class="solution">*</span>
# <span class="solution">*</span>
# 0..1
# 0..1
# 1
# 1
# <span class="solution">1..*</span>
# 1..*
</div>
</div>


Ред 43: Ред 47:
[[Датотека:PS februar 2022 zadatak 5 dijagram klasa.svg|мини|Dijagram klasa iz petog zadatka.]]
[[Датотека:PS februar 2022 zadatak 5 dijagram klasa.svg|мини|Dijagram klasa iz petog zadatka.]]
<div class="abc-list" data-solution="multiple">
<div class="abc-list" data-solution="multiple">
# <span class="solution">Metod klase A može da pristupi objektu klase C.</span>
# Objekat klase B može da preko asocijacije pristupi objektu klase A.
# Metod klase B može da pristupi objektu klase C.
# <span class="solution">Metod klase A može preko asocijacije da pristupi objektima klase C.</span>
# Metod klase C može da pristupi objektu klase A.
# Metod klase B može preko asocijacije da pristupi objektima klase C.
# Metod klase B može da pozove metod objekta C.
# Objekat klase A može da poziva privatne metode objekta klase C.
# Metod klase C može preko asocijacije da pristupi objektima klase A.
</div>
</div>


Ред 56: Ред 61:
# Fabrički metod
# Fabrički metod
# <span class="solution">Dekorater</span>
# <span class="solution">Dekorater</span>
# Strategija
# Podsetnik
</div>
</div>


== 7. zadatak ==
== 7. zadatak ==
Koju ulogu ima operacija za poništavanje Komande u slučaju da se za čuvanje stanja koristi Podsetnik?
Koju ulogu u Podsetniku ima Konkretna komanda u slučaju da se komanda koristi za poništavanje operacija (undo)?
<div class="abc-list" data-solution="single">
<div class="abc-list" data-solution="single">
# Klijent
# Subjekat
# Subjekat
# Čuvar
# <span class="solution">Čuvar</span>
# ...
# Podsetnik
# Fabrika
</div>
</div>


Ред 69: Ред 78:
Označiti tačne tvrdnje za projektni uzorak Fabrički metod.
Označiti tačne tvrdnje za projektni uzorak Fabrički metod.
<div class="abc-list" data-solution="multiple">
<div class="abc-list" data-solution="multiple">
# ...
# <span class="solution">Uzorak eliminiše potrebu da se klijentski kod vezuje za aplikativno-specifične klase.</span>
# <span class="solution">Apstraktna fabrika se često implementira pomoću Fabričkog metoda.</span>
# Učesnik Fabrika mora da zna za postojanje Konkretnih proizvoda.
# <span class="solution">Drugo ime za Fabrički metod je virtuelni konstruktor.</span>
# Fabrički metod je objektni uzorak kreiranja.
</div>
</div>


Ред 77: Ред 90:
# Graditelj stvara cele objekte odjednom.
# Graditelj stvara cele objekte odjednom.
# <span class="solution">Graditelj stvara objekte iz delova.</span>
# <span class="solution">Graditelj stvara objekte iz delova.</span>
# ...
# Upravljač stvara objekte Konkretnog graditelja.
# <span class="solution>Uzorak Graditelj često ima sličnu objektnu i klasnu strukturu kao Strategija.</span>
# Graditelj je objektni uzorak strukture.
</div>
</div>


Ред 84: Ред 99:
<div class="abc-list" data-solution="multiple">
<div class="abc-list" data-solution="multiple">
# Virtuelni zastupnik je ambasador.
# Virtuelni zastupnik je ambasador.
# Zastupnik mora da što duže odlaže kreiranje objekta kojeg zastupa.
# Svaki zastupnik mora da što duže odlaže kreiranje objekta kojeg zastupa.
# <span class="solution">Zastupnik može biti implementiran kao Dekorater.</span>
# Zastupnik je klasni uzorak strukture.
# Zastupnik je klasni uzorak strukture.
# ...
# <span class="solution">Zastupnik se koristi za implementaciju copy-on-write funkcionalnosti.</span>
</div>
</div>


[[Категорија:Рокови]]
[[Категорија:Рокови]]
[[Категорија:Пројектовање софтвера]]
[[Категорија:Пројектовање софтвера]]

Тренутна верзија на датум 23. фебруар 2022. у 18:29

Februarski ispit 2022. godine održan je 22. februara. Tekst zadataka ispod je po sećanju studenata.

  • За питања са више одговора, тачни одговори су подебљани и уоквирени
  • За питања за које се одговори уносе, тачни одговори су подвучени и сакривени, тако да се прикажу када изаберете тај текст (пример: овако)
  • Притисните лево дугме испод за сакривање и откривање свих одговора, или десно дугме за укључивање и искључивање интерактивног режима:

1. zadatak

Povezati definicije principa OO modela sa njihovim nazivima:

  1. Osobina koja razlikuje aktivne objekte od pasivnih: konkurentnost
  2. Osobina sistema da se razlaže na skup kohezivnih i slabo spregnutih modula: modularnost
  3. Osobina da se objekti različitih klasa ne mogu uopšte ili mogu zamenjivati na ograničene načine: tipizacija
  4. Osobina po kojoj se postojanje objekta može protezati kroz vreme ili prostor: perzistencija
  5. Rangiranje ili uređivanje apstrakcija: hijerarhija

2. zadatak

Označiti tačne tvrdnje za dati dijagram:

Dijagram iz drugog zadatka.
  1. Prikazani dijagram je dijagram sekvence.
  2. Objekat sa {transient} ograničenjem se stvara i uništava u toku sekvence.
  3. Metoda promptKomanda() je sinhrona.
  4. Metoda <<create>> stvara objekat tipa Transakcija.
  5. Metoda provera() nema parametre.

3. zadatak

Koji dijagram se koristi za modeliranje izvršnih izdanja?

  1. raspoređivanja
  2. klasa
  3. komponenata
  4. interakcija
  5. aktivnosti

4. zadatak

Modelira se sistem u kom se na Parkingu nalaze Automobili. Potrebno je koristeći kvalifikator selektovati automobile po njihovoj boji. Multiplikativnost sa suprotne strane kvalifikatora koja odgovara opisanom slučaju je:

  1. *
  2. 0..1
  3. 1
  4. 1..*

5. zadatak

Označiti tačna tvrđenja za dijagram klasa:

Dijagram klasa iz petog zadatka.
  1. Objekat klase B može da preko asocijacije pristupi objektu klase A.
  2. Metod klase A može preko asocijacije da pristupi objektima klase C.
  3. Metod klase B može preko asocijacije da pristupi objektima klase C.
  4. Objekat klase A može da poziva privatne metode objekta klase C.
  5. Metod klase C može preko asocijacije da pristupi objektima klase A.

6. zadatak

Sa kojim projektnim uzorcima se slaže projektni uzorak Prototip:

  1. Sastav
  2. Unikat
  3. Fabrički metod
  4. Dekorater
  5. Strategija
  6. Podsetnik

7. zadatak

Koju ulogu u Podsetniku ima Konkretna komanda u slučaju da se komanda koristi za poništavanje operacija (undo)?

  1. Klijent
  2. Subjekat
  3. Čuvar
  4. Podsetnik
  5. Fabrika

8. zadatak

Označiti tačne tvrdnje za projektni uzorak Fabrički metod.

  1. Uzorak eliminiše potrebu da se klijentski kod vezuje za aplikativno-specifične klase.
  2. Apstraktna fabrika se često implementira pomoću Fabričkog metoda.
  3. Učesnik Fabrika mora da zna za postojanje Konkretnih proizvoda.
  4. Drugo ime za Fabrički metod je virtuelni konstruktor.
  5. Fabrički metod je objektni uzorak kreiranja.

9. zadatak

Označiti tačne tvrdnje u vezi sa projektnim uzorkom Graditelj.

  1. Graditelj stvara cele objekte odjednom.
  2. Graditelj stvara objekte iz delova.
  3. Upravljač stvara objekte Konkretnog graditelja.
  4. Uzorak Graditelj često ima sličnu objektnu i klasnu strukturu kao Strategija.
  5. Graditelj je objektni uzorak strukture.

10. zadatak

Označiti tačne tvrdnje u vezi sa projektnim uzorkom Zastupnik.

  1. Virtuelni zastupnik je ambasador.
  2. Svaki zastupnik mora da što duže odlaže kreiranje objekta kojeg zastupa.
  3. Zastupnik može biti implementiran kao Dekorater.
  4. Zastupnik je klasni uzorak strukture.
  5. Zastupnik se koristi za implementaciju copy-on-write funkcionalnosti.