FOI nastava
FOI logo

Lista kolegija iz:

ak.god:
2013/2014
semestar:
3. semestar

2013/2014

5ECTSa

Diplomski

Diplomski studij informatike v1.2

Program Obavezan
Baze podataka i baze znanja BPBZ Ne
Informatika u obrazovanju IO Ne
Informacijsko i programsko inženjerstvo IPI Da
Organizacija poslovnih sustava OPS Ne
3. semestar
2. nastavna godina

Uzorci dizajna npp:93149

Engleski naziv

Design Patterns

Katedra

Katedra za teorijske i primijenjene osnove informacijskih znanosti

Kategorija ("boja")

RI

Cilj kolegija

Cilj kolegija je upoznavanje studenata s ponovno korištenim programskim arhitekturama. Mikro arhitekture u obliku uzoraka dizajna bitne su za razumijevanje uočenih problema jer sadržavaju njihov opis, primjenu i primjer programskog koda. Antiuzorcima dizajna prikazuju se primjeri iz loše prakse korištenja uzoraka dizajna. Upoznavanjem raznih vrsta uzoraka dizajna studenti će steći korisna iskustva u rješavanju prepoznatih problema na temelju čega mogu graditi vlastite blokove veće granulacije. Analizom ugrađenih mehanizama u programskim arhitekturama daje se globalni pogled na razvoj složenih programskih sustava, u kojima trebaju postojati različite osobine, kao što je internacionalizacija, lokalizacija, personalizacija, prilagođavanje izabranom mediju i/ili modelu, parametrizacija i slično.

Nastava

Predavanje
30sati
Seminar
15sati

Ishodi učenja predmeta

  • izabrati, primijeniti i procijeniti prikladne uzorke u rješavanju određenih problema u procesu razvoja programskih proizvoda
  • objasniti ulogu uzoraka dizajna u procesu razvoja programskih proizvoda
  • objasniti, primijeniti i povezati strukturu uzoraka dizajna
  • opisati proces pronalažanje, predlaganja i prihvaćanja uzoraka dizajna
  • prepoznati i opisati različite kategorije uzoraka
  • prepoznati, primijeniti i usporediti različite osobine objektno orijentirane paradigme

Ishodi učenja programa

  • Modeliranje problema iz područja informacijskih i poslovnih sustava korištenjem matematičkih metoda, metoda razvoja informacijskih sustava i koncepata planiranja, upravljanja i poslovanja Modeliranje problema iz područja informacijskih i poslovnih sustava korištenjem matematičkih metoda, metoda razvoja informacijskih sustava i koncepata planiranja, upravljanja i poslovanja
  • Oblikovati softversku arhitekturu složenog informacijskog sustava, odabrati i postaviti odgovarajuću tehnološku platformu i programirati najsloženije dijelove složenog sustavaOblikovati softversku arhitekturu složenog informacijskog sustava, odabrati i postaviti odgovarajuću tehnološku platformu i programirati najsloženije dijelove složenog sustava
  • Odabrati i primijeniti metode i tehnike razvoja informacijskih i programskih sustava u suvremenim razvojnim okolinamaOdabrati i primijeniti metode i tehnike razvoja informacijskih i programskih sustava u suvremenim razvojnim okolinama
  • Primijeniti, utvrditi uvjete za primjenu, savjetovati i u zadanom kontekstu donositi odluke vezane uz rješavanje problema iz područja informacijskih i poslovnih sustava Primijeniti, utvrditi uvjete za primjenu, savjetovati i u zadanom kontekstu donositi odluke vezane uz rješavanje problema iz područja informacijskih i poslovnih sustava
  • Procijeniti i preporučiti programska rješenja za konkretne problemske domene informacijskih i poslovnih sustava Procijeniti i preporučiti programska rješenja za konkretne problemske domene informacijskih i poslovnih sustava
  • Utvrditi uvjete za primjenu, savjetovati i u zadanom kontekstu donositi odluke vezane uz ključne aspekte primjene i razvoja informacijske tehnologije (programiranje, algoritmi, strukture podataka, baze podataka i znanja)Utvrditi uvjete za primjenu, savjetovati i u zadanom kontekstu donositi odluke vezane uz ključne aspekte primjene i razvoja informacijske tehnologije (programiranje, algoritmi, strukture podataka, baze podataka i znanja)
  • Valorizirati stručnu literaturu na hrvatskom i stranom jezikuValorizirati stručnu literaturu na hrvatskom i stranom jeziku

Sadržaj predavanja

  • Uvod u ponovno korištenje programskog koda
    Ciljevi ponovnog korištenja. Razvoj metoda ponovnog korištenja programskog koda. Dizajn sustava od postojećih elemenata.
  • Uvod u uzorke dizajna
    Što je uzorak i antiuzorak dizajna. Prepoznavanje uzoraka dizajna. UML. Dokumentiranje uzoraka dizajna. Katalog uzoraka dizajna. Organiziranje kataloga. Rješavanje problema primjenom uzoraka dizajna. Kako izabrati i koristiti uzorak dizajna za određeni problem.
  • Kreatorski uzorci dizajna
    Svrha, primjena i ograničenja kreatorskih uzoraka dizajna. Abstract Factory. Builder. Factory method. Prototype. Singleton.
  • Strukturni uzorci dizajna
    Svrha, primjena i ograničenja strukturnih uzoraka dizajna. Adapter. Bridge. Composite. Decorater. Facade. Flyweight. Proxy.
  • Uzorci dizajna ponašanja
    Svrha, primjena i ograničenja uzoraka dizajna ponašanja. Chain of Responsibility. Command. Interpreter. Iterator. Mediator. Memento. Observer. State. Strategy. Templete Method. Visitor.
  • Arhitekturni uzorci dizajna
    Svrha, primjena i ograničenja arhitekturnih uzoraka dizajna. Postavljanje strukture. Layers. Pipes and Filters. Blackboard. Distribuirani sustavi. Broker. Interaktivni sustavi. Model-View-Controler. Prilagodljivi sustavi. Microkernel. Reflection.
  • Uzorci za upravljanje resursima
    Svrha, primjena i ograničenja uzoraka za upravljanje resursima. Lookup. Lazy acquisition. Eager acquisition. Partial acquisition. Caching. Pooling. Coordinator. Resource Lifetime Manager. Leasing. Evictor.

Sadržaj seminara/vježbi

  • U okviru vježbi studenti će koristiti standardne programske alate koji se koriste za izradu programs
    U okviru vježbi studenti će koristiti standardne programske alate koji se koriste za izradu programskih primjera u izabranom programskoj jeziku, alate za dijagramske tehnike. U sklopu toga naučit će izabrati i koristiti najpoznatije uzorke dizajna u konkretnim situacijama. Moći će prepoznati vlastite uzorke dizajna te ih dokumentirati u skladu s uobičajenom praksom i predloškom.

Osnovna literatura

  • Gamma, E.; Helm, R.; Johnson, R.; Vlissides, J. Design Patterns: Elements of Reusable of Object-Oriented Design. Addison-Wesley, Reading, MA, 1995.
  • Buschmann, F.; Meunier, R.; Rohnert, H.; Sommerlad, P.; Stal, M. Pattern-Oriented Software Architecture: A System of Patterns. Addison-Wesley, Reading, MA, 1996.
  • Kircher, M., Jain, P. Pattern-Oriented Software Architecture Volume 3: Patterns for Resource Management , Wiley , 2004.

Dopunska literatura

  • Metsker, S.J. Design Patterns Java Workbook, Addison-Wesley, 2002.
  • Metsker, S.J. Design Patterns in C#, Addison-Wesley, 2004.

Slični predmeti

  • Mercer University, Design Patterns, http://www.paulemacneil.com/syl658.htm
  • University of Calgary, Design Patterns, http://sern.ucalgary.ca/courses/SENG/609.04/W98/
  • San Diego State University, Advanced Object-Oriented Design & Programming, http://www.eli.sdsu.edu/courses/spring98/cs635/
  • George Mason University, Advanced Software Design: Reusable Software Architectures, http://mason.gmu.edu/~hgomaa/swe721/SWE721IT821Syllabus.htm
  • The University of Chicago, Object Oriented Architecture, Design, and Methodolgy, http://people.cs.uchicago.edu/~mark/51023/
Nastavnik Oblik nastave Tjedana Sati tjedno Grupa
Kermek Dragutin Predavanje 15 2 1
Seminar 15 1 2
Izvanredni rok
Datum: 19.11.2019.
Vrijeme: 17:00
Napomena:
Izvanredni rok
Datum: 28.04.2020.
Vrijeme: 16:00
Napomena:
Predavanje Seminar Auditorne vježbe Laboratorijske vježbe Vježbe (jezici, tzk) Ispit Kolokviji Nadoknade Demonstrature
Copyright © 2015 FOI Varaždin. All Rights Reserved. Sva prava pridržana.
Povratak na vrh