Projekti šabloni

Слични документи
12 Stanje

Microsoft PowerPoint - OOPpredavanja05 [Compatibility Mode]

P1.0 Uvod

Inženjering informacionih sistema

Slide 1

Tutoring System for Distance Learning of Java Programming Language

Računarski praktikum I - Vježbe 09 - this, static

PowerPoint Presentation

PowerPoint Presentation

Apache Maven Bojan Tomić

Microsoft Word - CAD sistemi

Microsoft PowerPoint - 6. CMS [Compatibility Mode]

Projektovanje digitalnih sistema

Principi softverskog inženjerstva O predmetu

PROMENLJIVE, TIPOVI PROMENLJIVIH

Projektovanje informacionih sistema i baze podataka

Класе комбинација презентације (Хортона) и к о бајаги скрипте (Ово је прича коју врло радо причам) нови тип података: дефинишу могуће вредности подата

PowerPoint Presentation

Microsoft Word - Java_introduction_NEW_SYLLABUS.doc

Programski jezik QBasic Kriteriji ocjenjivanja programiranje(b) - QBasic razred 42

Programski jezik QBasic Kriteriji ocjenjivanja programiranje(b) - QBasic razred 42

PowerPoint Presentation

1, 2, 3, кодирај! Активности циклуса 4 Пројект «Аркадне игре» - Час 6: Програмирање падања новчића (наставак) Доминантна дисциплина Математикa Резиме

Контрола ризика на радном месту – успостављањем система менаџмента у складу са захтевима спецификације ИСО 18001/2007

Р273 Пројектовање база података Примери питања за колоквијум 1. Навести најважније моделе података кроз историју рачунарства до данас. 2. Објаснити ос

Slide 1

PowerPoint Presentation

Увод у организацију и архитектуру рачунара 1

IEP - Projekat 2018/2019

Slide 1

Microsoft PowerPoint - GR_MbIS_12_IDEF

NACIONALNI REGISTAR IZVORA ZAGAĐIVANJA UPUTSTVO ZA KORIŠĆENJE INFORMACIONOG SISTEMA NACIONALNOG REGISTRA IZVORA ZAGAĐIVANJA Beograd, 2014.

Tutoring System for Distance Learning of Java Programming Language

Microsoft PowerPoint - JavaP9_2019

PowerPoint Presentation

Microsoft PowerPoint - Strukturni dijagrami, Gantogram - Planiranje [Compatibility Mode]

Microsoft PowerPoint - 12-Funkcije_1.ppt [Compatibility Mode]

QFD METODA – PRIMER

Школа Ј. Ј. Змај Свилајнац МЕСЕЧНИ ПЛАН РАДА ЗА СЕПТЕМБАР Школска 2018 /2019. Назив предмета: Информатика и рачунарство Разред: 5. Недељни број часова

Introduction to Programming

Microsoft PowerPoint - 18 Rapid prototyping.ppt

Microsoft PowerPoint - 06 Uvod u racunarske mreze.ppt

The Contemporary Systems Development Project Landscape

Uvod u Python

Microsoft PowerPoint - 6. Query Builder.pptx

Model podataka

Microsoft PowerPoint - SEP-2013-CAS02

PowerPoint Presentation

P11.3 Analiza zivotnog veka, Graf smetnji

R u z v e l t o v a 5 5, B e o g r a d, t e l : ( ) , m a i l : c o n t a c p s i t. r s, w w w. p s i t. r s

Microsoft PowerPoint EMAS - osnove, registracija, dodatni zahtevi, D.Petrovic

PowerPoint Presentation

Microsoft Word - MySQL_3.doc

Univerzitet u Beogradu Mašinski fakultet Konstrukcija i tehnologija proizvodnje letelica PODEŠAVANJE PROGRAMSKOG PAKETA CATIA V5 Miloš D. Petrašinović

Microsoft PowerPoint - 07-DinamickeStrukturePodataka

SELECT statement basic form

PowerPoint Presentation

Конкурс за суфинансирање проjеката/програма у области jавног информисања

(Microsoft PowerPoint Ben\232i\346.ppt [Compatibility Mode])

PowerPoint Presentation

Upute za instaliranje WordPressa 1.KORAK Da biste instalirali Wordpress, najprije morate preuzeti najnoviju verziju programa s web stranice WordPressa

Microsoft PowerPoint - Programski_Jezik_C_Organizacija_Izvornog_Programa_I_Greske [Compatibility Mode]

JAВА ПРОГРАМИРАЊЕ Сврха обуке за Јава програмирање је стицање знања и вештина у области Јава програмирања са циљем повећања броја квалификованих ИТ ст

Zadatak 011 Razmotrite sljedeći primjer. package hr.fer.oopj.primjeri.p011; public class Main { } public static void main(string[] args) { obrada(2.71

UNION Banka DD Sarajevo Tel.: Dubrovačka br Sarajevo, Bosna i Hercegovina Fax:

Programski jezik C

POSLOVNA INTELIGENCIJA I ANALITIKA ZA PRAVE POSLOVNE ODLUKE

Internet

Carlsberg_Policy_Responsible_Drinking PREVOD 2

Tutoring System for Distance Learning of Java Programming Language

Primenjeno programiranje - Vežbe

VEŽBA 5: KLASE I OBJEKTI U C# Cilj ove vežbe je upoznavanje sa osnovama rada sa klasama i objektima u programskom jeziku C#. Pored toga, bide demonstr

SVEUČILIŠTE JOSIPA JURJA STROSSMAYERA U OSIJEKU FAKULTET ELEKTROTEHNIKE, RAČUNARSTVA I INFORMACIJSKIH TEHNOLOGIJA Sveučilišni diplomski studij SUSTAV

QlikView Training

PowerPoint-Präsentation

Microsoft PowerPoint - Programski_Jezik_C_Organizacija_Izvrsnog_Programa [Compatibility Mode]

Opsta nacela nepristrasnosti

ЈЕДАН НОВИ ПРИСТУП У ПРЕВОЂЕЊУ ИЗ BPMN а У BPEL ONE NEW APPROACH IN TRANSLATING FROM BPMN TO BPEL Александар Недељковић Факултет организационих наука,

Database Programming with SQL kurs 2017 database design and programming with sql students slajdovi 17-1 Controlling User Access Davanje dozvole (grant

ЖИРОКЛИРИНГ И БРУТО ПОРАВНАЊЕ У РЕАЛНОМ ВРЕМЕНУ (БПРВ) ОПИС РАДА СИСТЕМА На основу Закона о Централној банци БиХ у којем стоји: Основни задаци Централ

Microsoft PowerPoint - Topic04-Serbian.ppt

1 На основу члана 13 i 18 Правила о раду Олимпијског комитета за раднички спорт и организовање 12. СОРВ, Спортски одбор на предлог Комесара за такмиче

Logicko projektovanje racunarskih sistema I

УНИВЕРЗИТЕТ У НОВОМ САДУ ФИЛОЗОФСКИ ФАКУЛТЕТ Број: /1 Дана, године На основу члана 16. Уредбе о буџетском рачуноводству ("Службени гла

1 jmbag ime i prezime Programiranje 2 prvi kolokvij, Rezultati i uvidi u kolokvije: Rezultati u petak, 3.5., navečer na webu, a uvidi u p

POSLOVNI INFORMACIONI SISTEMI I RA^UNARSKE

Microsoft PowerPoint - 1. Zend_1 - Instalacija frameworka

Microsoft Word - WEB iterfejs za naprednu pretragu podataka o osmatranju zemlje na podrucju Balkana

На основу члана 36

O Nanokinetik NeeS TOC Builder-u NeeS TOC Builder je aplikacija koja se koristi za kreiranje Tabele sadržaja (TOC) za elektronske podneske u NeeS form

I колоквијум из Основа рачунарске технике I СИ- 2017/2018 ( ) Р е ш е њ е Задатак 1 Тачка А Потребно је прво пронаћи вредности функција f(x

Na osnovu člana 34. stav 3. Zakona o energetici ( "Službeni glasnik RS", broj 145/14), Ministar rudarstva i energetike donosi Pravilnik o energetskoj

PowerPoint Presentation

УНИВЕРЗИТЕТ У НОВОМ САДУ ОБРАЗАЦ 6

Upute - JOPPD kreiranje obrasca

PowerPoint Presentation

Microsoft Word - ZAKON O INTERNOJ REVIZIJI U JAVNOM SEKTORU RS.rtf

Dan02_Dio01 - Koncept informacionog sistema za energetsku efikasnost

Microsoft Word - 11 Pokazivaci

NAPOMENA: Studenti na ispit donose kod urađenog zadatka

Транскрипт:

Projekti obrasci Kreiranje objekata

Uvod Enkapsuliraju znanje o tome koje konkretno klase koristi sistem Sakrivaju instanciranje objekata i načine na koji se oni povezuju i reprezentuju Ostatak sistema treba da zna samo interfejse definisane u apstraktnim klasama Konkretno sistem može da sadrži objekte značajno različitih struktura i funkcionalnosti

Abstract factory Obezbjeđuje interfejs za kreiranje skupa povezanih i zavisnih objekata bez specifikovanja klasa kojima pripadaju

Učesnici AbstractFactory Deklariše interfejs kojim se kreiraju AbstractProduct objekti ConcreteFactory Implementira operacije kreiranja konkretnih Product objekata AbstractProduct Deklariše interfejs za klasu proizvoda ConcreteProduct Konkretan objekat iz klase proizvoda kojeg kreira odgovarajući factory objekat implementira AbstractProduct interfejs Client Koristi samo interfejse iz AbstractFactory i AbstractProduct klasa

Kolaboracije Uobičajeno se kreira jedna instanca ConcreteFactory klase. Ovaj objekat kreira produkte konkretne klase. Ako je potrebno kreirati produkte iz druge klase, klijent treba da koristi drugu instancu ConcreteFactory AbstractFactory ne kreira objekte, već odlaže instanciranje na ConcreteFactory podklase

Kada se koristi? Sistem je nezavisan od načina na koji se kreiraju Product objekti, načina na koji se povezuju i reprezentuju Sistemu je potrebno više familija proizvoda koji će se koristiti istovremeno Potrebno je objaviti samo interfejse prema tipovima proizvoda, a sakriti njihovu implementaciju

Builder Razdvaja se procedura konstruisanja kompozitnih objekata od njihove reprezentacije, tako je moguće jednom procedurom kreirati više različitih reprezentacija

Učesnici Builder Definiše interfejs za kreiranje dijelova kompozitnog Product objekta ConcreteBuilder Kreira i povezuje dijelove, implementira Builder interfejs Održava logičku strukturu Product objekta, odnosno njegovih dijelova Obezbjeđuje pristup kreiranom objektu Director Kreira Procudt objekat pomoću Builder interfejsa Product Reprezentuje kompozitni objekat. ConcreteBuilder implementira konkretnu reprezentaciju i proceduru za povezivanje dijelova u cjelinu Uključuje klase koje predstavljaju gradivne elemente, kao i interfejse za njihovo povezivanje u konačni rezultat.

Kolaboracije The client creates the Director object and configures it with the desired Builder object. Director notifies the builder whenever a part of the product should be built. Builder handles requests from the director and adds parts to the product. The client retrieves the product from the builder.

Kolaboracije (2)

Kada se koristi? Algoritam za kreiranje kompozitnog objekta treba da je nezavisan od njegovih djelova, odnosno načina na koji se oni povezuju Proces kreiranja kompozitng objekta mora da omogući različite reprezentacije

Factory method Definiše interfejs za kreiranje objekata, ali odlaže podklasama konkretno instanciranje - Factory Method lets a class defer instantiation to subclasses

Učesnici Product Definiše interfejs objekata koji se kreiraju ConcreteProduct Implementacija Product interfejsa Creator Deklariše FactoryMethod, koji vraća objekat tip Product. Dozvoljeno je da Creator definiše difolt implementaciju koja kreira podrazumijevani ConcreteProduct objekat U tom smislu, može pozivati FactoryMethod za kreiranje Product objekta ConcreteCreator Redefiniše FactoryMethod koji vraća instancu klase ConcreteProduct

Kolaboracije Creator se oslanja na podklase, odnosno redefiniciju FactoryMethod koja će da vraća instancu odgovarajuće klase ConcreteProduct

Kada se koristi? Creator ne zna konkretnu klasu objekta koji kreira Creator ostavlja svojim podklasama da specificiraju objekat koji se kreira Creator delegira odgovornosti na više pomoćnih klasa, povezuje hijerarhije klasa

Kada se koristi?

Prototype Specifikuje objekat koji je potrebno kreirati pomoću protopita, objekat se kreira kao kopija odgovarajućeg prototipa

Učesnici Prototype Deklariše interfejs za kloniranje objekta ConcretePrototype Implementira interfejs za kloniranje Client Kreira novi objekta tako što poziva opearciju kloniranja za neki prototip objekat

Kolaboracije Klijent poziva operaciju kloniranja za prototip objekat

Kada se koristi? Kada se tek u run-time zna koja se klasa instancira Izbjegava se kreiranja paralelnih hijerahija kao kod Factory Method obrasca Kada objekat može da bude u svega nekoliko različitih stanja instalira se odgovarajući broj prototip objekata koji se kloniraju po potrebi, umjesto da se klasa instancira za svako stanje eksplicitno (skuplja operacija)

Singleton Obezbjeđuje da klasa ima samo jednu instancu. Obezbjeđuje globalnu referencu na tu instancu

Učesnici Singleton Definiše operaciju Instance metodu na nivou klase i omogućava klijentu da pristupi jedinistvenoj instanci (static metoda C++) Samo-instanciranje

Kolaboracije Klijenti pristupaju Singleton instanci isključivo preko Instance funkcije

Kada se koristi? Mora postojati samo jedna instanca klase kojoj se pristupa na jednistveni način Omogićiti izvođenje iz klase Singlton, a bez uticaja na implementaciju ostatka sistema