Oblikovni obrasci u programiranju

Ishodi učenja

  1. prepoznati simptome neprikladne programske organizacije
  2. objasniti prednosti dinamičkog polimorfizma, predložaka i implicitnog tipiziranja.
  3. objasniti glavna načela programskog oblikovanja i prepoznati slučajeve njihovog kršenja
  4. procijeniti kvalitetu različitih programskih organizacija na temelju ključnih načela oblikovanja
  5. prepoznati različite oblikovne obrasce u nekomentiranom izvornom kôdu
  6. usporediti prikladnost različitih oblikovnih obrazaca u kontekstu konkretnog oblikovnog problema
  7. primijeniti oblikovna načela za koncipiranje kvalitetnih programskih komponenti

Oblici nastave

Predavanja

Predmet predviđa dva sata predavanja tjedno.

Laboratorij

Predmet predviđa četiri laboratorijske vježbe. http://www.zemris.fer.hr/~ssegvic/ooup/

Način ocjenjivanja

   
Odlukom Fakultetskoga vijeća, u akademskoj godini 2019./2020. međuispiti su ukinuti, a bodovi pridijeljeni toj komponenti prebacuju se u završni ispit, osim u slučaju kad su nositelji drugačije preraspodijelili bodove i komponente provjere. Obavijest o načinu ocjenjivanja potražite među obavijestima vezanim uz svaki predmet.
   
Kontinuirana nastava Ispitni rok
Vrsta provjere Prag Udio u ocjeni Prag Udio u ocjeni
Laboratorijske vježbe 40 % 20 % 40 % 0 %
Međuispit: Pismeni 0 % 40 % 0 %
Završni ispit: Pismeni 0 % 40 %
Ispit: Pismeni 50 % 80 %
Ispit: Usmeni 20 %

Tjedni plan nastave

  1. Uvod u objektno usmjereno projektiranje. Pregled univerzalnog jezika modeliranja (UML). Dijagrami struktura.
  2. Dinamičko upućivanje: definicija poziva metode. Podtipovi. Objekto usmjereno izražavanje učahurivanja. Memorijska organizacija programskih objekata i poziva potprograma.
  3. Jednostavnost, pravilnost, ortogonalnost.
  4. Uvod u obrasce projektiranja programske potpore. Oblikovni obrasci. Refaktoriranje dizajna i obrasci dizajna.
  5. Obrasci ponašanja.
  6. Obrasci ponašanja.
  7. Struktruni obrasci. Marljiva naspram odgođene evaluacije.
  8. Međuispit.
  9. Obrasci stvaranja. Statičko i dinamičko povezivanje.
  10. Struktruni obrasci.
  11. Obrasci prikupljanja.
  12. Struktruni obrasci.
  13. Obrasci ponašanja.
  14. Obrasci stvaranja.
  15. Završni ispit.

Studijski programi

Sveučilišni preddiplomski
Elektrotehnika i informacijska tehnologija (studij)
Izborni predmeti (6. semestar)
Programsko inženjerstvo i informacijski sustavi (modul)
Izborni predmeti (6. semestar)
Računalno inženjerstvo (modul)
Izborni predmeti (6. semestar)
Računarska znanost (modul)
Izborni predmeti (6. semestar)
Računarstvo (studij)
Izborni predmeti (6. semestar)

Literatura

(.), Design Patterns. Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides. Addison-Wesley Professional. 2009.,
(.), Agile Software Development: Principles, Patterns, and Practices. Robert C. Martin. Prentice Hall. 2003,

Izvedba

ID 183426
  Ljetni semestar
5 ECTS
R3 Engleski jezik
R1 E-učenje
30 Predavanja
15 Auditorne vježbe
8 Laboratorijske vježbe
0 Konstrukcijske vježbe

Ocjenjivanje

89 izvrstan
76 vrlo dobar
63 dobar
50 dovoljan