Professional Documents
Culture Documents
Marko Katić
ZAVRŠNI RAD
-Osnovne akademske studije-
Датум:
ЗАДАТАК ЗА ДИПЛОМСКИ РАД
Област:
ТЕКСТ ЗАДАТКА:
Графички процеси представљају токове и начине настанка графичких производа који се
реализују помоћу техничких, технолошких и људских ресурса. Обухватају припрему штампе,
штампарски процес и завршну графичку обраду. Калкулације су део графичких процеса које
се извршавају пре сваке производње, како би се стекао реалан увид у трошкове и укупно
утрошено време. Да би се ти прорачуни одвијали брже и лакше, потребно је направити
одговарајућу апликацију која ће омогућити извршење калкулација у условима које један
такав графички систем захтева.
__________________________
Потпис кандидата
Sadržaj
BIOGRAFIJA
1. UVOD 3
2. GRAFIČKI PROCESI 5
5. SQLITE 31
9. ZAKLJUČAK 54
10. LITERATURA 56
3
Pre početka pisanja programskog koda, poželjno je napraviti šemu ili algoritme, koji će
vizualnim prikazom programa, olakšati sam razvoj aplikacije. U ovom zadatku, to je postignuto
pomoću UML-a (Unified Modeling Language). Nakon završenog pisanja programa izgenerisan je
klasni dijagram koji prikazuje sve klase sa njihovim metodama i ostalim elementima koje se nalaze
unutar njih. Klase koje se nalaze u aplikaciji su međusobno povezane, što je ovim dijagramom, takođe,
grafički prikazano.
4
2. Grafički procesi
Grafički procesi predstavljaju tokove i načine nastanka grafičkih proizvoda koji se realizuju
pomoću tehničkih, tehnoloških i ljudskih resursa. Grafička proizvodnja se može podeliti na tri celine
(Novaković, 2013):
1) Priprema štampe (Prepress)
2) Štamparski proces (Press) i
3) Završna grafička obrada (Post press).
Ove celine su objedinjene u proizvodni tok i povezane su kroz tok materijala i tok podataka
(Slika 1). Grafički sistemi su složene strukture koje se odnose na tehničke resurse u proizvodnji.
Složene strukture u proizvodnji čine grafičke mašine, transportno manipulacioni, merno kontrolni,
upravljačko informacioni i skladišni sistemi (Novaković, 2013).
5
2) Proces proizvodnje:
- Proces pripreme
- Proces štampe
- Proces unutrašnjeg transporta
- Proces dorade
- Procesi skladištenja
3) Proces kontrolisanja i ispitivanja:
- Ulazna kontrola materijala
- Procesna kontrola kvaliteta
- Završna kontrola proizvoda
4) Proces upravljanja proizvodnjom kroz:
- Planiranje proizvodnje
- Provera kapaciteta, materijala
- Terminiranje i lansiranje proizvodnje
5) Proces nabavke materijala kroz:
- Ugovaranje nabavke sa dobavljačima
- Prijem materijala
6) Proces prodaje kroz:
- Ugovaranje nabavke sa dobavljačima
- Prijem materijala
7) Proces prodaje kroz:
- Ugovaranje prodaje
- Isporuku proizvoda kupcima (tržištu)
8) Proces integralne sistemske podrške kroz:
- Spoljašnji transport
- Održavanje objekata, instalacija i sredstava za rad
- Snabdevanje energentima
2.2 PRIPREMA GRAFIČKE PROIZVODNJE
6
2.3 ŠTAMPA
Štampa predstavlja obradni postupak kojim se vrši prenos boje na podlogu za štampu.
(Novaković, 2013). Kod rotacija ili tabačne štampe boja se prenosi indirektnim ili direktnim putem u
štamparskim jedinicama – agregatima. Prenos od jedne do druge štamparske jedinice se vrši uređajima
za manipulaciju (transportni sistemi sa trakama). Pored boje u mašini se nalazi i deo za vlaženje
pomoću kojeg se razdvajaju područja za štampu (oleofilna) od neštampajućih površina (hidrofilna).
Još jedan važan deo u štampi je svakako sistem za sušenje(UV, Infra Red, Puder). Za obrtanje cilindara
i valjaka u mašinama zaduženi su motori koji zahtevaju određeno napajanje koje reguliše gradska
mreža u trafo stanicama. Cilindre pokreću zupčanici pomoću kojih se takođe može odrediti brzina
okretanja i prenosa na osnovu broja zubaca (Novaković, 2013).
Završna grafička obrada se realizuje nakon štampe, ručnim ili mašinskim postupkom i odvija
se sve dok se ne dobije krajnji, gotov proizvod koji ima svoj finalni oblik i upotrebnu vrednost a deli se
na (Novaković, 2013):
1) Knjigovezačku obradu
2) Obradu papira
3) Izradu ambalaže
7
2.4.1 Osnovne operacije završne grafičke obrade
8
2.5 MAŠINE U GRAFIČKOJ INDUSTRIJI
Štamparske mašine spadaju u obradne mašine i sadrže funkcionalne delove (Novaković, 2014):
1) Elemente za obradu materijala (ubojavanje, štampanje, transport materijala)
2) Pogon(motori i prenosni elementi)
3) Upravljanje (senzori, računar za upravljanje), zaštitu, noseću i prenosnu strukturu (ležajevi, vođice,
zaštita, kućišta).
9
Postoji više podela štamparskih mašina - sistema (Novaković, 2014):
1) Prema osnovnim mehaničkim principima:
- Ploča prema ploči
- Cilindar prema ploči
- Cilindar prema cilindru
- Zaobljeno telo po ravnoj propusnoj površini
2) Prema vrsti štamparske forme - štampe:
- Visoka
- Duboka
- Ravna
- Propusna
3) Prema principu štampe:
- Visoka
- Duboka
- Ravna
- Propusna
4) Prema obliku podloge za štampu:
- Sistemi sa tabacima (tabačni)
- Sistemi sa rolnama (rotacije)
5) Prema konceptu gradnje:
- Centralni sistem
- Sistem u nizu
- Kompakt sistem
6) Prema nivou automatizovanosti sistema:
- NA0 Manuelni
- NA1 Sa sopstvenim pogonom
- NA2 Poluautomatski
- NA3 Automatski
- NA4 Sa samoregulacijom
- NA5 Sa samokontrolom
- NA6 Sa samoprogramiranjem
- NA7 Sa intuitivnim sposobnostima
- NA8 Sa kreativnim sposobnostima
- NA9 Sa elementima inteligencije
7) Prema nivou upravljanja
8) Prema složenosti sistema
9) Prema proizvodima za koje su namenjeni
10
U završnoj obradi postoji mnoštvo različitih mašina zbog velike raznovrsnosti štamparskih
proizvoda. Mašine se konstruišu u zavisnosti od materijala od kog će se proizvod izrađivati, koje su
mu dimenzije i tiraž, pa tako postoje razne mašine za (Novaković, 2013):
1) Rezanje
2) Obrezivanje (trorezači)
3) Šivenje koncem
4) Šivenje žicom
5) Spajanje specijalnim postupcima (metalnim i plastičnim češljevima, šinama)
6) Lepljenje
7) Pakovanje
8) Savijanje
9) Sakupljanje
Srednje fini su oni papiri koji su napravljeni na bazi drvenjače i u njih spadaju novinski, papir
za knjige, pisaći, srednje fini štamparski papir za ilustracionu štampu, za obrasce, super kalandrirani
za štampu ilustrovanih časopisa, pigmentisani, tanki, omotni, voluminozni i specijalni papiri.
Bezdrvni papiri su svi oni papiri u kojima se nalaze vlakna celuloze i ne sadrže drvenjaču. Mogu biti
pisaći, crtaći, štamparski, tanki, omotni i specijalni papiri (Novaković, Dedijer, Milić, 2012).
Tabela 1. Klasifikacija papira, kartona i lepenke (Novaković, Dedijer, Milić, 2012):
Papiri 7 - 150 g/m2
Polukartoni 150 – 250 g/m2
Kartoni 250 – 500 g/m2
Kartoni i lepenke 500 – 600 g/m2
Lepenke preko 600 g/m2
11
Kartoni se mogu podeliti prema sirovinskom sastavu. Tu spadaju srednje fini, bezdrvni
i kartoni na bazi tekstilnih krpa. Prema postupku izrade kartoni se dele na jednoslojne, višeslojne
(dupleksi, tripleksi i multipleksi), nepremazne, premazne, prirodno bojeni, beljeni, i obojeni u raznim
bojama. Podela kartona prema nameni se odnosi na razne ambalažne kartone i na one koji služe za
izradu kartonskih kutija. Lepenke su kartoni mase preko 500 g/m2 i najčešće se izrađuju od drvenjače
i starog papira (Novaković, 2013).
12
8) Kalendar:
- Dnevni
- Nedeljni
- Mesečni
- Zidni
- Stoni
- Knjižni
- Džepni
- Večiti
- Perforirani
- Preklopni
9) Katalog
- Boja
- Knjiga
- Pisama
10) Mapa
11) Karta:
- Dopisnice
- Razglednice
- Ulaznice
- Podsetnice
- Legitimacije
- Jelovnici
12) Proizvodi za biroe:
- Fascikle
- Registratori
- Sveske
- Blokovi
13) Proizvodi higijene:
- Maramice
- Ubrusi
- Salvete
- Podmetači
14) Proizvodi za ukrašavanje i dekoraciju:
- Tapete
- Ukrasni papir
13
2.8 AMBALAŽA
Ambalaža može biti komercijalna, zbirna i transportna. Proizvodi ambalaže podeljeni prema
materijalu izrade (Novaković, 2013):
1) Keramička (teglice, keramičke posude, baloni)
2) Drvena (sanduci, korpe, bačve, palete, kutije)
3) Tekstilna (vrećice, vreće, omoti, bale)
4) Kožna
5) Metalna (limenke, kutije, dozne, tube, posude)
6) Papirna (omoti, nalepnice, etikete, kese, vrećice)
7) Ravna lepenka (kabaste i složive kutije)
8) Kartonska (kutije, čaše, tube, ulošci, burad)
9) Talasasti karton (složive i druge kutije)
10) Laminat
11) Plastične mase (termoplastične i termostabilne-polietilenske boce, bočice, baloni)
12) Staklena (bočice, boce, dozne, epruvete, ampule, baloni)
U dvadesetom veku su se pojavom elektronskih medija razvili novi načini arhiviranja
podataka a samim tim i dizajniranje proizvoda elektronskih medija. Multimediji predstavljaju više
tipova informacija (tekst, slika, grafika, animacija, video i audio) koji su objedinjeni u jednu celinu
(Novaković, 2013).
14
3. Kalkulacije
Izrada predkalkulacije je proces koji se izvršava pre nego što se prihvati posao, gde se
objedinjuju svi troškovi izrade (računajući troškove materijala) tako da se na osnovu prodajne cene
dobija privremena cena koja predstavlja osnov izrade kalkulacije.
Kalkulacija predstavlja finalne troškove proizvodnje koji se mogu menjati u toku izrade a
samim tim i menjati prodajnu cenu.
Operativna priprema je utvrđivanje kapaciteta, planiranje proizvodnje, plan rokova i praćenje
izvršenja proizvodnje, planiranje materijala, izrada i lansiranje proizvodne dokumentacije, praćenje
zauzetosti kapaciteta. U tehnološkoj pripremi, najznačajniji dokumenti su radni nalog i kalkulacije.
Nakon kalkulacije se određuje način i rok isporuke (Novaković, Dedijer, Milić, 2012).
15
3.1 DOKUMENTACIJA I RADNI NALOG
Radni nalog je osnovni dokument kojim se lansira proizvodnja i pomoću kog se vrši detaljna
specifikacija materijala i resursa u pogonu, a sve to u zavisnosti od procesa izrade proizvoda. Centralni
nalog sadrži sve podatke o tehničkoj i tehnološkoj izradi grafičkog proizvoda i radnoj snazi. Vreme
pripreme i vreme izrade se računa pomoću normativa koji su određeni na osnovu dugogodišnjeg
iskustva. Radni nalog sadrži podatke kao što su naziv, oznaka, količina, rokovi, redosled operacija.
Njime se određuje dokle je stigla proizvodnja i evidentiraju se troškovi. Svi zaposleni trebaju da prate i
da se pridržavaju radnog naloga kako bi proizvodnja tekla uspešno (Novaković, Dedijer, Milić, 2012).
Dokumentacija se koristi za izradu radnog naloga i pomoću nje se vrše kalkulacije koje se mogu
obavljati ručno ili preko određenog softvera. Prodajna cena se određuje iz cenovnika koji je usvojen
iz drugih korespondirajućih cenovnika. Napretkom Print on demand tehnologije pojednostavljeni su
procesi, kako u većim tako i u manjim pogonima (Novaković, Dedijer, Milić, 2012).
Softveri koji se koriste za izradu kalkulacija su prilagođeni određenoj štampariji mada se i dalje ne
mogu koristiti bez stručnih tehnologa koji određuju šablon po kome će se vršiti kalkulacija. Šablon
se kreira u zavisnosti od brzine, formata i drugih varijabilnih faktora unutar procesa proizvodnje.
Ključ za uspešno poslovanje jeste saradnja tehnologa sa top menadžmentom i njihovo zajedničko
odlučivanje unutar procesa proizvodnje (Novaković, Dedijer, Milić, 2012).
16
3.3 ZNAČAJNI PROIZVODNI ELEMENTI
Operacije ili procesi se odvijaju u proizvodnim celinama kao što su radna mesta, mašine,
ili uređaji. Na izlazu jedne proizvodne celine dobija se poluproizvod koji je određen dimenzijama,
količinom, brzinom. Tehnolog mora voditi računa i o takozvanim uskim grlima koja se stvaraju ako
postoje različiti proizvodi iz prethodnih faza u proizvodnji (Novaković, Dedijer, Milić, 2012).
Na svakom proizvodnom mestu postoji niz operacija koje su definisane normativima rada
(Novaković, Dedijer, Milić, 2012):
1) Vremena:
- Brzine mašina
- Pripremu
- Završnu obradu
- Manuelne radove
2) Količine u:
- Metarima
- Kilogramima
- Komadima
- Tabacima
U zavisnosti od štamparije, normative može da određuje: jedno lice iz rukovodstva, eksperti,
ljudi i timovi koji veoma dobro poznaju preduzeće i njegove resurse. Postoji šest metoda pomoću
kojih se određuju normativi (Novaković, Dedijer, Milić, 2012):
1) Pokazatelji iz realizacije proizvodnje
2) Intuitivne metode
3) Naučno istraživački izvori
4) Normativi koje koriste konkurentna preduzeća
5) Podaci proizvođača opreme
6) Naučno istraživački rad inženjera iz preduzeća
Iv = a / a1 x b / b1 (2)
, gde a i b predstavljaju dimenzije osnovnog formata, a a1 i b1 predstavljaju stranice određenog formata.
Ih = a / b1 x b / a1 (3)
, gde a i b predstavljaju dimenzije osnovnog formata, a a1 i b1 predstavljaju stranice određenog formata.
17
Najveći broj tabaka iz polaznog formata se dobija pomoću formule (Novaković, Dedijer, Milić,
2012):
Xn / Xm = 2m-n (4)
, gde Xm predstavlja manji format koji se želi dobiti iz većeg formata, a Xn predstavlja veći format iz
kog se dobijaju manji formati.
Masa jednog tabaka se dobija pomoću formule (Novaković, Dedijer, Milić, 2012):
Mt = a x b x Gr / 1000 (5)
, gde Mt predstavlja masu jednog tabaka (kg), a dužinu, b širinu, a Gr gramaturu (g/m2).
Ukupna masa papira se dobija pomoću formule (Novaković, Dedijer, Milić, 2012):
Ukupna cena papira se dobija pomoću formule (Novaković, Dedijer, Milić, 2012):
Ukupna količine boje se dobija pomoću formule (Novaković, Dedijer, Milić, 2012):
Cb = Kb x Cšb (11)
, gde Cb predstavlja cenu boje, Kb količinu boje, a Cšb cenu štamparske boje po 1 kg.
18
Tabela 2. Pokrivenost boje u zavisnosti od vrste papira, važi za ofset štampu
(Novaković, Dedijer, Milić, 2012):
VRSTA BOJA (m2 po 1 kg boje)
PAPIRA Crna Cijan Magenta Žuta
Visoko sjajni Tip 1 604.3 504.8 497.7 504.8
Visoko sjajni Tip 2 568.8 497.7 493.4 504.8
Sjajni premazni 540.3 483.4 490.6 504.8
Mat premazni 533.2 476.4 483.4 483.4
Mašinski gladak 568.8 483.4 483.4 483.4
Novinska hartija 412.4 332.2 341.3 334.2
Hrapavi štamparski 391 312.8 320 312.8
VRSTA BOJA (m2 po 1 kg boje)
PAPIRA Ljubičasta Narandžasta Crvena Braon Lak
Visoko sjajni Tip 1 511.9 490.6 497.7 490.6 639.9
Visoko sjajni Tip 2 504.8 476.4 490.6 483.4 618.6
Sjajni premazni 497.7 462.1 483.4 476.4 604.3
Mat premazni 455 440.8 462.1 462.1 590.1
Mašinski gladak 497.7 462.1 483.4 476.4 604.3
Novinska hartija 355.5 341.3 270.2 341.3 -
Hrapavi štamparski 334.2 319.9 248.8 319.9 -
19
3.5.3 Kalkulacija digitalne pripreme za štampu
Proces digitalne pripreme za štampu se deli na sledeće faze (Novaković, Dedijer, Milić, 2012):
1) Prijem materijala
2) Provera primljenog materijala
3) Obrada primljenog materijala
4) Integracija teksta i likovnih priloga
5) Digitalna montaža
6) Izrada probnog otiska
7) Izrada štamparske forme
Prilikom računanja vremena za obradu slika treba voditi računa da se prva slika računa prema
vrednosti iz tabele 6, a kod svake naredne, vreme se množi sa 0.7.
20
Tabela 7. Potrebna vremena za formiranje strane i montažnog tabaka
(Novaković, Dedijer, Milić, 2012):
Jednostavno Prosečno Složeno
Prelom stranica i
Formiranje strane i 0.15 h/str. 0.20 h/str. 0.25 h/str.
uređivanje
montažnog tabaka
Elektronska
0.05 h/str. 0.15 h/str. 0.20 h/str.
montaža (šablon)
Prilikom računanja vremena za formiranje strane i montažnog tabaka, treba voditi računa da
se prva strana ili montažni tabak računa prema vrednosti iz tabele 7, a kod svakog narednog, vreme
se množi sa 0.7.
Tabela 10. Vremena izrade izlaznih medija za laserski i digitalni probni otisak
(Novaković, Dedijer, Milić, 2012):
Laserski otisak Jednostavno Prosečno Složeno
Izlazni mediji
(c/b) 0.05 h/strana 0.10 h/strana 0.30 h/strana
(po stranicama)
Sveobuhvatni troškovi materijala 80 din/m 2
Tabela 11. Vremena izrade izlaznih medija za forme (Novaković, Dedijer, Milić, 2012):
Jednostavno Prosečno Složeno
Izlazni mediji CTP 0.15 h/strana po 1 0.25 strana po 1 0.35 strana po 1
(po tabaku) boji boji boji
Sveobuhvatni troškovi materijala 2800 din/m 2
21
Proračun troškova izrade izlaznih medija za laserski ili digitalni otisak se dobija pomoću
formule (Novaković, Dedijer, Milić, 2012):
Troškovi materijala izlaznih medija za laserski ili digitalni otisak se računaju pomoću formule
(Novaković, Dedijer, Milić, 2012):
Trmld = Brs x Ps x Trsv (14)
, gde Trmld predstavlja troškove materijala izlaznih medija (laserski o., digitalni o.), Brs broj strana,
Ps površinu strane, a Trsv sveobuhvatne troškove materijala (iz tabele 10).
Troškovi materijala izlaznih medija za forme se računaju pomoću formule (Novaković, Dedijer,
Milić, 2012):
Proračun makulature se vrši prema sledećim principima (Novaković, Dedijer, Milić, 2012):
1) Kod jednobojnih ofset tabačnih mašina makulatura iznosi 2% puta broj štamparskih formi
2) Za dvobojne mašine, vrednost makulature iznosi 3% po paru ploča
3) Za četvorobojne mašine, vrednost makulature iznosi 4% x broj setova štamparskih formi
4) Ukoliko se grafički proizvod lakira, dodaje se još 1%
Ako se proizvod štampa u različit broj boja sa svake strane, tada će se makulatura računati za
svaku stranu posebno, prema prethodno opisanim pravilima.
Vreme pripreme mašine se računa pomoću formule (Novaković, Dedijer, Milić, 2012):
22
, gde Vpm predstavlja vreme pripreme mašine (h), Brp broj prolaza jednog tabaka za štampu, Brt broj
tabaka potrebnih za štampu jednog proizvoda, a Vp vreme jedne pripreme mašine za štampu (h).
Ukupno vreme štampe se dobija pomoću formule (Novaković, Dedijer, Milić, 2012):
Cena sata rada se dobija pomoću formule (Novaković, Dedijer, Milić, 2012):
Csr = Nm + Np (19)
, gde Csr predstavlja cenu sata rada, Nm normu cene rada za 70% produktivnosti za jednog mašinistu
(din/h), a Np normu cene rada za pomoćnog radnika/ulagača/drugog mašinistu (din/h).
Ukupni troškovi štampe se dobijaju pomoću formule (Novaković, Dedijer, Milić, 2012):
Tabela 12. Maksimalan broj tabaka koji se može pozicionirati u mašini za rezanje pri jednom
ulaganju u zavisnosti od vrste papira (Novaković, Dedijer, Milić, 2012):
Vrsta papira Broj tabaka pri 1 ulaganju
Bankpost 48 g/m 2
1600
Premazni 75 g/m2
Bankpost 60 g/m2
Premazni 90 g/m2 1300
Ofset 75 g/m 2
Bankpost 75 g/m2
1000
Premazni 100 g/m2
Bakpost 90 g/m2
800
Premazni 120 g/m2
Hromo - karton 180 g/m2
500
Kunstdruck - karton 200 g/m2
Hromo - karton 240 g/m2
400
Kunstdruck - karton 250 g/m2
23
Tabela 13. Vreme rezanja po jednom ulaganju na osnovu formata i potrebno vreme za pripremu
mašine na osnovu operacije koja se obavlja (Novaković, Dedijer, Milić, 2012):
Vreme rezanja po jednom ulaganju (h)
Format Broj tabaka izrezan iz jednog tabaka
tabaka (cm) 2 3 4 5-8 9-12 13-16 17-20 21-24 25-28 29-32
22 x 28 .03 .05 .06 .07 .08 .09
48 x 64 .04 .07 .09 .10 .11 .13 .15 .18
58 x 74 .08 .11 .12 .14 .14 .16 .18 .20 .22
63 x 96 .10 .13 .13 .16 .15 .18 .20 .22 .24 .27
66 x 102 .10 .15 .18 .20 .21 .25 .28 .32 .35 .39
88 x 115 .14 .20 .22 .26 .27 .31 .35 .39 .43 .48
Pripremno
0.10 0.15 0.2 0.25
vreme
Broj ulaganja se uvek zaokružuje na veći broj, a računa se prema formuli (Novaković, Dedijer,
Milić, 2012):
Ukupni troškovi rezanja se računaju prema formuli (Novaković, Dedijer, Milić, 2012):
Ukupno vreme proizvodnje se računa na kraju, tako što se saberu sva vremena (ukupno
vreme pripreme, ukupno vreme štampe i ukupno vreme završne grafičke obrade), a ukupni troškovi
proizvodnje se dobijaju kada se saberu troškovi papira, troškovi boje, ukupni troškovi pripreme,
ukupni troškovi štampe i ukupni troškovi završne grafičke obrade (Novaković, Dedijer, Milić, 2012).
24
4. Programski jezik Java
Programski jezik Java je nastao 1995. godine kao rezultat 15-godišnjeg rada. Razvijen je od
strane Sun Microsistems-a i bio je deo projekta Green. Cilj je bio da se napravi platforma za upravljanje
potrošačkih elektronskih uređaja. Napravljen je uređaj Star7 čiji je operativni sistem trebao da bude
razvijen u C++. Član tima James Gosling nije bio zadovoljan C++-om i odlučeno je da se napravi novi
jezik koji će više odgovarati postavljenom zadatku. Želeli su da naprave mali i pouzdan programski
jezik koji je lako prenosiv na bilo kakve hardverske uređaje. Njegova popularnost je konstantno
rasla od samog njegovog nastanka, pa do danas i predstavlja jedan od nakorišćenijih programskih
jezika. Osnovne karakteristike Jave su nezavisnost od platvorme računara, portabilnost, objektna
orjentisanost, enkapsulacija, vidljivost (nevidljivost) objekata, nasledjivanje klasa, implementiranje
interfejsa, visok nivo zaštite, podrška mrežnom programiranju, rad sa nitima, kompleksnost a samim
tim i velike mogućnosti u ostvarivanju zamišljenih ciljeva (Ivanović et al, 2005).
Naziv Java se ne odnosi samo na programski jezik već i na Java platformu. Računarsku
platformu čini tip računara i tip operativnog sistema, dok Java platformu čine Java virtuelna mašina i
Java API (Application Programing Interface). Java API se sastoji od standardnih Java paketa u kojima se
nalaze klase. Na različitim računarskim platformama se prave posebne Java platforme. Java platforma
obezbeđuje identično izvršavanje java programa bez obzira na kojem je tipu računara i operativnom
sistemu pokrenut. Java platforma koristi usluge postojećeg operativnog sistema. Ona je namenjena
kako za mocne racunare tako i za potrosacke elektronske aparate. Pošto mali elektronski uređaji
nemaju dovoljno resursa za operativni sistem Sun je razvio JavaOS – mali operativni sistem namenjen
specijalno za Java platformu. JavaOS obezbeđuje veliku efikasnost izvršavanja Java programa, a ne
zahteva velike hardverske resurse, pa je zbog toga idealan za potrošačko-elektronske aparate (Ivanović
et al, 2005).
25
Komentari - služe da programeru bolje objasne delove koda, kao i za automatsko generisanje
dokumentacije. Postoje dva načina za pisanje komentara (Ivanović et al, 2005):
1) U jednom ili više redova, između simbola /* i */
2) U jednom redu, posle simbola //
26
Tabela 15. Separatori u programskom jeziku Java (Ivanović et al, 2005):
okrugle (male) zagrade - promena prioriteta
() operatora, graničnici parametara metoda,
eksplicitna konverzija tipova, itd.
uglaste (srednje) zagrade - pristup elementu
[]
niza, deklarisanje nizovskog tipa
{} vitičaste (velike) zagrade - početak i kraj bloka
; tačka-zarez - razdvaja dve naredbe
zarez - razdvaja parametre pri deklaraciji i
,
pozivu metoda
. tačka - pristup članu klase
Da bi se uspešno rešio neki problem pomoću računara potrebno je da se prođe kroz određene
faze (Ivanović et al, 2005):
1) Potpuno razumevanje i shvatanje definisanog problema
2) Uočavanje objekata i njegovih osobina i konstrukcija apstraktnog modela problema
3) Formiranje apstraktnog modela, razvijanje rešenja i algoritama koji za zadate ulazne veličine
produkuje odgovarajući izlaz
4) Realizacija apstraktnog modela u željenom programskom jeziku i kodiranje algoritma (pisanje
programa). Rezultat ove faze je program.
5) Unošenjem programa u jedan ili vise fajlova pomoću nekog editor ili razvojnog okruženja dobija se
izvorni oblik programa (engl. source program)
6) Kompajler, Bajt kod i Java virtualna mašina prevode programski kod u oblik pogodan za izvršavanje
na računaru koji je podržan Windows, Linux, Mac ili nekom drugom operativnom sistemu. (Slika 2.)
7) Izvršavanje i testiranje programa
Slika 2. Vizuelni prikaz toka izvršavanja Java programa (Saternos, 2014)
27
Program u Javi se sastoji od deklaracija klasa i interfejsa. U program mora postojati bar jedna
klasa sa metodom čije je zaglavlje public static void main(String [] args). Od vrste klasa i interfejsa
zavisi u koliko će fajlova biti raspoređene deklaracije. Fajlovi koji čine Java program se zovu jedinice
prevođenja. Klase i interfejsi mogu biti korišćeni u više programa. Zbog toga je pogodno grupisati
klase koje služe za rešavanje nekog problema u pakete, da bi se kasnije lakše rešili neki drugi problemi
u istom ili nekim drugim programima. Postoje paketi koje pravi programer a takođe postoje i već
napravljeni – standardni paketi (Ivanović et al, 2005).
4.4 NAREDBE
Naredbe u programskom jeziku služe za manipulisanje podacima. Vrste naredbi su: petlje,
ciklusi, one koje služe za pravljenje metoda, konstruktora, inicijalizatora klasa(statičkih i instanci).
Naredbe koje se koriste u Javi su: prazna naredba,izraz naredba, do, while, for, if, ifElse, try, throw,
switch,labela, break, countinue, return, synchronized (Ivanović et al, 2005).
Tip podatka čini skup vrednosti koje uzimaju promenljive, kao i skup operacija nad tim
vrednostima. Tipovi podataka se mogu podeliti na proste i referencijalne. Prosti su oni koji se susreću
u skoro svakom programu. Nedeljivi su i od njih se mogu kreirati struktuirani tipovi podataka. Prosti
tipovi se dele na (Ivanović et al, 2005):
- Logičke (boolean)
- Celobrojne (byte, short, int, long, char)
- Realni brojevi (float,double)
Kod većih projekata poželjno je grupisanje delova programa (logičkih celina) zbog čitljivosti
programa, pojednostavljenja timskog rada, lakšeg održavanja, modifikacija, optimizacije i proširenja.
Grupisanjem podataka u slogove i nizove dobijaju se složeni tipovi. Kod objektno orjentisanog
programiranja postoji mogućnost grupisanja podataka i programskih celina koje koriste te podatke.
Vrednosti (instance) takvih tipova nazivaju se objekti. Tipovi pomoću kojih se prave objekti nazivaju
se referencijalni (struktuirani) tipovi a to su klase interfejsi i nizovi. Oni se mogu praviti od drugih
referencijalnih ili prostih tipova (Topolnik, Kušek, 2008).
Klase su modeli pomoću kojih se prave objekti i sastoji se od članova (polja, metode,
konstruktori). Glavna razlika između klasa i interfejsa je ta što klasa može da nasleđuje samo jednu
nadklasu dok kod interfejsa može biti višestruko nasleđivanje odnosno implementiranje.
Niz je grupa elemenata koji se javljaju pod istim imenom. Elementima niza se pristupa
pomoću njihovog indeksa. Mogu biti jednodimenzionalni ili višedimenzionalni(niz unutar drugog
niza) (Ivanović et al, 2005).
Promenljive služe za davanje imena prostim i referencijalnim tipovima. Referencijalne
promenljive mogu biti lokalne, parametri metoda i konstruktora, polja klasa (Ivanović et al, 2005).
Izuzeci su objekti klase Exception i oni služe da se otklone moguće neželjene situacije, odnosno
da program ne bi prekidao i prikazivao grešku na mestima koja nisu dovoljno obezbeđena. Deo koda
se ograđuje izuzecima try i catch naredbom (Ivanović et al, 2005).
28
Niti predstavljaju istovremeno izvršavanje konzistentnih nizova. Zbog velike kompleksnosti
programa koje niti omogućuju, potrebno je voditi računa o sinhronizaciji. U određenom trenutku
jednom podatku mođe da pristupi najviše jedna nit dok ostale niti moraju da čekaju da prva nit završi
proces nad tim podatkom (Ivanović et al, 2005).
Kolekcije predstavljaju grupu objekata i mogu biti neograničene veličine a mogu biti: ArrayList,
LinkedList, HashSet, Vector, BitSet, TreeSet, Stack, Hashtable (Ivanović et al, 2005).
Swing predstavlja proširenje Jave koje služi za razvoj aplikacija sa prozorima i grafičkim
korisničkim interfejsima. Paket javax.swing služi za prevljenje desktop aplikacije (samostalni programi
sa prozorima) i za tzv. aplete koji se pokreću putem internet brauzera. Klasom Jframe se kreiraju
prozori i ona se smatra kao kontejner na najvišem nivou hijerarhije. Unutar nje se mogu naći ostale
komponente interfejsa kao što su dugmad, labele, polja za tekst, checkbox, radio dugmad, itd. Ukoliko
za to postoji potreba programer i pored standardnih može praviti i svoje komponente i iskoristiti ih
u programu. Manipulacija komponenti, menjanje njihovog vizuelnog izgleda (oblik, boja, naziv), kao
i njihove funkcionalnosti je praktično neograničena. Postoje određene namene i funkcije za koje su
dati elementi napravljeni ali oni se mogu takođe prilagođavati zadacima. Funkcionalnost standardnih
komponenti i metoda se ipak, ne preporučuje menjati zbog njihovog kasnijeg korišćenja (Ivanović et
al, 2005).
JLabel – služi za prikazivanje tekstualnog ili grafičkog sadržaja. Korisnik ne može direktno da
menja sadržaj labele ko što je to slučaj sa poljima za tekstualni unos. Sadržaj kod labela je inicijalno
poravnat sa leve strane ali može biti i po desnoj ivici, gornjoj, donjoj, centriran. Moguće je menjati
dimenzije kao što su skaliranje, fitovanje, isecanje, itd (Ivanović et al, 2005).
ImageIcon je klasa pomoću koje se prikazuje slika u GIF ili JPEG formatu unutar labele. String
sa putanjom se prosleđuje konstruktoru ove klase (Ivanović et al, 2005).
JButton – je uobičajeno dugme. Funkcija dugmeta jeste akcija koja se poziva unutar događaja
ActionEvent koji se prosleđuje prijavljenom osluškivaču tipa ActionListener. Može biti više dugmadi
kojima je prijavljen isti osluškivač ali onda mora biti određeno koje dugme je generisalo događaj
(Ivanović et al, 2005).
JCheckBox – je dugme logičkog tipa boolean. Može biti selektovano ili ne (true ili false). Korisnik
bira stanje dugmeta a inicijalna vrednost je false i može se promeniti metodom setSelected(boolean
b). Provera da li je dugme selektovano se vrši metodom isSelected (Ivanović et al, 2005).
29
JRadioButton – su dugmad logičkog tipa i obično se koriste u grupama. Omogućavaju selekciju
samo jednog dugmeta iz grupe. Grupa se obrazuje objektom klase JButtonGroup. Ovaj objekat nema
vizuelan prikaz u programu jer nije klasična komponenta već služi za interno grupisanje dugmadi
(Ivanović et al, 2005).
JTextField – je polje gde korisnik ima mogućnost za unos teksta u jednom redu. Podržava
selekciju. JTextArea je polje slično kao JtextField. Razlika je u tome što JtextArea ima mogućnost za
unos teksta u više redova (Ivanović et al, 2005).
JPopupMenu – pruža mogućnost otvaranja dodatnog menija. Način otvaranja menija zavisi
od operativnog sistema. Kod Windows-a je to desni klik mišem a kod MacOS je kombinacija Ctrl na
tastaturi i levog tastera miša (Ivanović et al, 2005).
JFileChooser – je podprozor koji služi za otvaranje i sačuvavanje fajlova (Ivanović et al, 2005).
JTree – služi za hijerarhijski prikaz organizovanih podataka u strukturi stabla (Ivanović et al,
2005).
30
5. SQLite
SQLite predstavlja ugradjenu relacionu bazu podataka. Nastala je 2000. godine pod okriljem
firme Hipp, Wzrick & Company, Inc., (Hipp, 2015). Osnovne karakteristike su joj portabilnost,
jednostavnost pri upotrebi, kompaktnost, efikasnost, pouzdanost. Transakcije su veoma pouzdane,
čak i pri korišćenju višestrukih procesa ili niti. SQLite je veoma sličan standardnom SQL jeziku.
Podržava većinu SQL naredbi (eng statements) koje se koriste prema SQL2 (SQL-92, 1992) standardu.
Za njeno funkcionisanje se koristi sistem upravljanja relacionih baza podataka (Relational Database
Managment System (RDBMS)). Relacioni sistemi baza podataka se koriste za skladištenje podataka u
tabele. Upravljački sistem baze može da procesira kompleksne upitne komande, koje mogu da generišu
izveštaje i omoguće pregled podataka iz više tabela. Druge popularne baze podataka koje koriste
RDBMS su Oracle Database, IBM’s DB2, zatim, open source proizvodi kao što su Microsoft’s SQL
Server za komercijalnu upotrebu sa MySQL-om i PostgreSQL-om. Prednost SQLite od ostalih baza je
ta što je korišćenje znatno olakšano. Nije potrebno konfigurisanje mreže i protokola, administracija
baze podataka je pojednostavljena, ne moraju da se vrši autorizacija unošenjem korisničkog imena i
lozinke i olakšan je razvoj same aplikacije u kojoj je baza ugrađena. Sve što je potrebno za rad sa bazom
je kompajlirano unutar samog programa. “Lite” u nazivu SQLite ne označava njene mogućnosti nego
jednostavnost upotrebe, korišćenje minimalnih resursa a da se pri tom neusaglašenost programera i
korisnika svedu na minimum. Naredbe koje se koriste za manipulaciju nad podacima u SQLite bazi,
unose se unutar programskog koda u aplikaciji (Hipp, 2015).
31
5.1 TIPOVI PODATAKA U SQLITE BAZI
Većina SQL endžina koriste statične unose u bazu. Kod statičnih unosa, tip podatka za neku
vrednost je određen na osnovu kontejnera (kolone) u kojem je određena vrednost skladištena. SQLite
koristi dinamički sistem unosa, gde tip podatka nije određen na osnovu kontejnera već na osnovu
same vrednosti podatka. Dinamički sistem je kompatabilan statičkim sistemima unosa, u tom smislu
da SQL naredbe koje su pisane za statički sistem mogu da rade i na SQLite dinamičkom sistemu (Hipp,
2015).
Komentar u jednom redu se označava simbolom “--”, pri čemu se simbol nalazi na početku
reda a tekst desno, a tekst kod komentara koji se sastoje iz više redova se unosi između simbola “/*” i
“*/”. (Hipp, 2015).
32
5.2 NAREDBE I KLAUZULE
33
6. UML (Unified Modeling Language)
Velike poslovne aplikacije koje sadrže puno klasa i linija koda su veoma apstraktne i imaju
otežanu preglednost. UML omogućava vizualizaciju i pravljenja modela softverskih sistema.
Modelovanje je praktično neizostavan deo za velike projekte, a od pomoći je i prilikom razvijanja manjih
projekata. Time se postiže mnogo bolje razumevanje programskog koda, posebno za programere koji
su se naknadno uključili u već postojeće projekate. Struktura sistema, odnosno arhitektura mora biti
jasno definisana, kako bi se efikasno otklonile otkrivene greške u sistemu. Pored otklanjanja mogućih
grešaka, modelovanje i vizuelizacija softvera omogućava bolju kontrolu sigurnosti, skalabilnost,
robusnost kao i lakšu proširivost sistema. Primenom modela podiže se nivo apstrakcije na taj način što
se sakrivaju detalji a povećava prikaz samog izvršavanja procesa, prikazuju se veze unutar aplikacije
ili se vizuelno vežu sa drugim aplikacijama ili sajtovima. Moguće je modelovati bilo koji tip aplikacije,
nezavisno od vrste hardvera, operativnog sistema i programskog jezika. UML je izgrađen po osnovnom
objektno - orjentisanom konceptu, pa se lako uklapa u objektno orjentisana okruženja i jezike kao što
su C ++, Java, C#, a može se koristiti i za neobjektno - orjentisane jezike kao, na primer, Visual Basic,
COBOL, Fortran (Siegel, 2005).
UML 2.0 sadrži trinaest vrsta dijagrama koji su podeljeni u tri kategorije (Siegel, 2005):
1) Strukturni dijagrami:
- Diagram klasa
- Diagram objekta
- Dijagram komponenata
- Dijagram složene strukture
- Dijagram paketa
- Dijagram raspoređivanja
2) Dijagrami ponašanja:
- Dijagram slučajeva korišćenja
- Dijagram aktivnosti
- Dijagram mašine stanja
3) Dijagrami interakcije:
- Dijagram sekvenci
- Dijagram komunikacije
- Vremenski dijagram
- Dijagram pregleda interakcije
34
7. Eksperimentalni deo
Izrada aplikacije
za kalkulaciju jednostavnog proizvoda
u programskom jeziku Java
7.1 OSNOVNE POSTAVKE I ZADATAK EKSPERIMENTA
Pokretanje aplikacije zahteva instaliranu Java Virtual Machine platformu, koja se može preuzeti
sa sajta: https://java.com/download.
Modelovanje klasnih dijagrama je urađeno pomoću UML dodatka za Eclipse gde su prikazane
sve klase u programskom kodu i komponente unutar njih (klase su povezane određenim vezama
zavisnosti).
SQLite baza podataka koja je ugrađena u aplikaciju je izgrađena u Mozilla Firefox internet
pretraživaču tako što je u njega instaliran dodatak SQLite Manager.
Za razvoj aplikacije je neophodan barem srednji nivo poznavanja Java programskog jezika kao
i SQL baze podataka. Pošto ovaj programski jezik ne pripada programu na departmanu Grafičkog
inženjerstva i dizajna, potrebno je dodatno doškolavanje.
35
7.2 ODREĐIVANJE PAPIRA I MAŠINE ZA ŠTAMPU
Slika 3. Prva kartica. Određivanje formata proizvoda, maksimalnog formata mašine, štamparskog i
osnovnog formata.
Prvi korak je odabir maksimalnog formata mašine iz ponuđenog hijerarhijskog stabla. Mašine
su razvrstane po broju boja za štampu i korisnik može odabrati neku samo iz te ponude. Ovaj korak je
obavezan za unos zbog daljeg automatskog računanja. Korisnik nije u mogućnosti da sam unosi neki
drugi maksimalan format mašine. Promene kao što su ubacivanje ili brisanje mašina iz baze može da
radi samo programer dok će tu mogućnost imati i korisnik u nekoj od narednih verzija. Korišćena
baza podataka je SQLite. Prilikom pokretanja aplikacije, sve mašine koje se nalaze u bazi “masina.
sqlite” se učitavaju u stablo (slika4) gde se može vršiti odabir odgovarajuće.
36
Naziv mašine i podaci o broju boja (prolaza) se ispisuju unutar odgovarajuće labele u istom
prozoru tako da ta informacija bude vidljiva za korisnika. Ako je korisnik uneo pogrešnu mašinu,
moguće je promeniti na neku drugu, ali je takođe neophodno ponoviti sve naredne korake, ukoliko ih
je bilo.
Drugi korak je unošenje formata neobrezanog proizvoda i određivanje formata štamparskog
tabaka. Format proizvoda je određen u radnom nalogu. Kod ovog unosa treba imati u vidu da se po
dužini i po širini gotovog proizvoda obično dodaje još po 6 mm, zbog napuštanja od po 3 mm sa svake
strane. Nakon klika na dugme “Izračunaj štamparski tabak” program vrši određene proračune. To se
realizuje određenim matematičkim formulama za izračunavanje maksimalnog broja proizvoda koji
može da stane na maksimalan format mašine po horizontalnoj i vertikalnoj orjentaciji. Kada program
odredi najveći broj proizvoda, vrši dalje izračunavanje formata štamparskog proizvoda dodavajući
tehnološke površine (po dužini 10 mm i po visini 19 mm). Potom se pojavljuju nova dva prozora. Na
jednom se nalaze informacije koliko formata proizvoda staje na štamparski tabak, koja je orjentacija
(horizontalna ili vertikalna raspodela) i dimenzije štamparskog tabaka. Na drugom prozoru se nalazi
grafički prikaz tabaka radi bolje preglednosti i vizualizacije tabaka za štampu. Program izračunava
i iscrtava realne dimenzije formata proizvoda i maksimalnog formata mašina, tako što ih skalira da
duža strana bude 550 piksela radi boljeg prikaza na ekranu. Nove, skalirane dimenzije se dobijaju
pomoću formule:
K = 550 / x (21)
, gde “K” predstavlja koeficijent skaliranja, a “x” dužinu ili širinu proizvoda u milimetrima.
Iscrtavanje se vrši običnim labelama koje se dinamički kreiraju u zavisnosti od broja foramta
proizvoda. Ovo se ostvaruje kroz dva for ciklusa koja se izvršavaju u zavisnosti od broja redova i
kolona. Labelama se dodeljuju odgovarajuće dimenzije (okviri) i unutar njih se ubacuju slike koje
služe za predstavljanje orjentacije. Ukoliko se formati proizvoda ređaju horizontalno labele učitavaju
sliku “Slike/horizontalno.PNG”(slika 5) a ukoliko se ređaju vertikalno labele će za sliku uzimati
“Slike/vertikalno.PNG”(slika 6). Na slikama se nalazi klasična oznaka za orjentaciju tj. slovo A. Nakon
izračunavanja štamparskog formata, na glavnom prozoru u poljima za tekst “Format štamparskog
tabaka [mm]” će biti automatski unešene dimenzije. Ove dimenzije je neophodno odrediti zbog daljeg
računanja. Korisnik ih ne može menjati ili unositi neke druge vrednosti.
37
Slika 7. Grafički prikaz štamparskog tabaka sa poslaganim tabacima neobrezanog formata
proizvoda – horizontalna orjentacija
Slika 8. Prozor sa podacima o broju neobrezanih formata proizvoda, kakva je raspodela i koji je
format (dimenzije) štamparskog tabaka sa tehnološkim površinama.
38
Slika 9. Grafički prikaz štamparskog tabaka sa poslaganim tabacima neobrezanog formata proizvoda
– vertikalna orjentacija
Slika 10. Prozor sa podacima o broju neobrezanih formata proizvoda, kakva je raspodela i koji je
format (dimenzije) štamparskog tabaka sa tehnološkim površinama.
39
izabranog osnovnog papira, orjentacija štamparskih tabaka na osnovni i broj štamparskih tabaka koji
staje na osnovni tabak. U drugom prozoru se dobija grafički prikaz štamparskih tabaka poređanih na
osnovni format u automatski određenoj, povoljnijoj orjentaciji kako bi se i vizuelno moglo sagledati
iskorištenost osnovnog formata.
Drugi način za odabir osnovnog papira jeste taj da se otvori stablo do zadnje grane i da se
izabere samo jedan papir određenih dimenzija. Tada program ne vrši proračune kojim se dobija
najisplatljiviji papir, jer je odabran samo jedan ali i dalje izračunava površinu otpada i procenat
otpada. Nakon odabira (klika na dugme), ponovo se pojavljuju dva prozora za karakteristike papira,
broj tabaka, procenat i površina otpada i drugi prozor za grafički prikaz. Treći način je da se pod
određenom gramaturom selektuje vise dimenzija, držeći taster ctrl na tastaturi i levi klik mišem. To
je potrebno ako se u ponudi ne nalaze svi papiri pod datom gramaturom. U tom slučaju, program
će da proračunava dimenziju koja najbolje odgovara u pogledu površine i procenta otpada. Papir
sa najmanjim procentom otpada uzima kao osnovni i njegove dimenzije upisuje u tekstualna polja
na glavnom prozoru. Zatim se javljaju nova dva prozora kao u prethodna dva slučaja, jedan za opis
izabranog formata a drugi za grafički prikaz.
40
7.3 DIGITALNA PRIPREMA ZA ŠTAMPU
41
Slika 13. Lista pripremnih poslova
Drugi korak je formiranje strane montažnog tabaka. Dve opcije koje mogu da se izaberu u
padajućem meniju su:
1) Prelom stranica i uređivanje
2) Elektronska ambalaža (šablon)
Nakon odabira prve stavke “Prelom stranica i uređivanje”, potrebno je odrediti složenost posla
pomoću radio dugmadi “Jednostavno”, “Prosečno” i “Složeno”, koje se nalaze sa desne strane panela.
Inicijalno podešavanje za stepen složenosti je “Jednostavno”. Pored složenosti, neophodno je uneti
broj strana proizvoda u polje za tekst “Unesite broj strana slika ili karaktera”. U ovom slučaju, kod
jednostavnog proizvoda bi trebalo da ta vrednost bude jedan (za jednostrane proizvode) ili dva (za
dvostrane proizvode). Pritiskom na dugme “Unesi” vrše se sledeće operacije:
1) Pravi se objekat u formi [broj strana|vrsta posla|stepen složenosti]
2) Ubacivanje objekta i prikazivanje u listi
3) Program izračunava vreme za datu vrstu posla i dodaje se ukupnom vremenu pripreme u polju
“Ukupno vreme pripreme [h]”
4) Vraća se broj strana na inicijalnu vrednost “0”
5) Padajući meniji se vraćaju na inicijalnu vrednost, tako da ni jedna stavka nije izabrana.
Ako vrednost u polju “Unesite broj strana slika ili karaktera” ostane 0, pritiskom na dugme
“Unesi” se neće napraviti novi objekat a samim tim, u listi “Lista pripremnih poslova” i polju “Ukupno
vreme pripreme [h]” neće biti izmena.
Za drugu stavku “Elektronska ambalaža (šablon)” procedura je ista kao i za prvu stavku.
Treći korak je kreiranje slika. U Padajućem meniju se može izabrati jedna od šest stavki:
1) Ilustracija i crtanje
2) Slikanje
3) Skeniranje (linijski o.)
4) Skeniranje (raster c/b)
5) Skeniranje (RGB, CMYK)
6) Dodatna obrada slika
Nakon odabrane stavke, potrebno je odabrati stepen složenosti, a zatim, uneti broj ilustracija
(crtanja) u polje “Unesite broj strana slika ili karaktera”. Pritiskom na dugme “Unesi” vrše se sve
operacije kao kod formiranja strane montažnog tabaka:
1) Kreiranje objekata u formi [broj komada|vrsta posla|stepen složenosti]
2) Ubacivanje objekta u listu
3) Dodavanje vremena ukupnom vremenu pripreme.
Za sve ostale stavke iz ovog padajućeg menija, procedura je ista. Opcije za složenost su kod
svih stavki iste i može se odabrati “Jednostavno”, “Prosečno” ili “Složeno”, izuzev stavke “Dodatna
obrada slika”, kod koje se pored ove tri, otvara mogućnost i za odabir opcije “Veoma složeno”. Pri
odabiru neke druge stavke iz padajućeg menija ponovo ova opcija postaje nedostupna.
42
Četvrti korak je obrada teksta. Procedura kreiranja i unosa objekata u listu je slična kao u
prethodnim koracima:
1) Odabir neke stavke iz menija “Obrada teksta”:
- Jednostavan rukopis
- Složen rukopis
- Tehnički tekst, formule, simboli
- Tekst na stranom jeziku
- Unošenje ASCII teksta
2) Podešavanje složenosti.
3) Unos broja karaktera u polje “Unesite broj strana slika ili karaktera”.
4) Potvrdom unosa, klikom na dugme “Unesi” odrađuju se sledeće operacije:
- Kreira se objekat u formi [broj karaktera|vrsta posla|stepen složenosti],
- Ubacivanje u listu i
- Dodavanje vremena ukupnom vremenu pripreme.
Peti korak je izrada izlaznih medija a procedura je slična kao u prethodnim koracima:
1) Odabir stavke iz padajućeg menija “Izrada izlaznih medija”:
- Laserski otisak
- Digitalni probni otisak
- CTP
2) Podešavanje složenosti
3) Unos broja strana u polje “Unesite broj strana slika ili karaktera”. U ovom slučaju, za jednostavan
proizvod, podrazumeva se jedanostrano ili dvostrano.
4) Klikom na dugme “Unesi” izvršavaju se operacije:
- Kreiranje objekata u formi [broj strana|vrsta posla|stepen složenosti],
- Ubacivanje u listu
- Dodavanje troškova ukupnim troškovima pripreme.
Šesti korak je proračun troškova korišćenje opreme. Ovaj korak obavezno mora da se uradi
na kraju jer zahteva izračunato ukupno vreme pripreme koje je prikazano u tekstualnom polju. U
padajućem meniju se mogu odabrati stavke:
1) Macintosh 8500 Power Mac
2) Macintosh Performa 6300
3) Macintosh Quadra 840
4) IBM, sa Windows-om
Nakon odabira opreme, potrebno je izvršiti potvrdu klikom na dugme “Unesi” čime se obavljaju
sledeće operacije:
5) Kreiranje objekta. U Objektu se nalaze izračunati ukupni troškovi pripreme na osnovu troškova
opreme i ukupnog vremena pripreme.
6) Ubacivanje objekta u listu
7) Prikazivanje ukupnih troškova u tekstualnom polju “Ukupni troškovi pripreme [din]”
U slučaju da je došlo do greške pri unosu objekta u listu, on se može obrisati tako što se
selektuje unutar liste, a zatim, klikne na dugme “Obriši”. Ovim se, takođe, oduzimaju vreme i/ili
troškovi objekta od ukupnog vremena i troškova pripreme.
43
7.4 ŠTAMPA
Prvi korak je računanje makulature. Korisnik unosi broj strana, broj boja i može da se naznači
da li se koristi lak. Pošto je u pitanju jednostavan proizvod očekivani unosi u polje “Br strana” su
1 ili 2. U zavisnosti od zahteva proizvoda makulatura se može izračunati iz jednog ili dva unosa.
Ukoliko je proizod dvostran i pri tom ima različit broj boja na svakoj strani, tada je potrebno za svaku
stranu posebno izračunati makulaturu. Na primer, ako je sa jedne strane trobojna štampa, a sa druge
jednobojna, korisnik prvi put treba da unese 1 u polje “Br strana” i 3 u polje “Br boja” a nakon klika
na dugme “+=” u polju “Br strana” treba da ostane 1 dok u polju “Br boja” treba uneti 1, a potom,
ponovo kliknuti na dugme “+=”. Ukoliko se proizvod štampa u 3 boje sa obe strane, tada se makulatura
određuje iz jednog unosa. U tom slučaju u polje “Br boja” treba da bude unešeno 2, a u polje “Br boja”
3. Dugme “+=” radi na principu sabiranja i dodavanja na prethodnu vrednost makulature. Ako se desi
da je korisnik pogrešno uneo podatke za računanje makulature, to može ispraviti ponovnim unosom,
s’ tim što prethodno mora promeniti vrednost polja “Makulatura [%]“ na 0. Pritiskom na dugme “+=”
program pored računanja makulature, vrši proračun broja prolaza tabaka za štampu kroz mašinu.
Ovo se može naknadno promeniti ako korisnik (tehnolog) proceni da je broj prolaza neka druga
vrednost u zavisnosti od specifičnosti situacije.
44
Drugi korak je unošenje tiraža. Pritiskom na dugme “=“ program automatski izračunava tiraž
sa makulaturom, broj tabaka za štampu, broj osnovnih tabaka i troškove papira. Ukoliko nije određen
osnovni i štamparski format program će izbaciti grešku (slika 15). Da bi se proces računanja kalkulacija
mogao nastaviti, korisnik mora da se vrati na prvu karticu i da izračuna osnovni i štamparski format.
Treći korak je računanje ukupnih troškova i vremena štampe pritiskom na dugme “Izračunaj
vreme i troškove štampe”. Ovaj korak je moguće odraditi samo onda ako su određeni svi prethodni
koraci i ako je izabrana mašina, jer u suprotnom program neće izvršiti proračun. Pre klika na dugme
“Izračunaj vreme i troškove štampe”, potrebno je podesiti još neke parametre:
1) Proveriti da li je dobro program odredio broj prolaza tabaka kroz mašinu
2) Podesiti odgovarajuću složenost pripreme za štampu. Ova stavka se podešava pomoću grupe
dugmadi u kojima se nalaze tri opcije (korisnik može da izabere samo jednu od te tri stavke):
-Jednostavno
-Prosečno
-Složeno
3) Odrediti složenost štampe, koja se takođe podešava kao i priprema
4) Broj mašinista
5) Broj pomoćnih radnika
6) Broj ulagača
Nakon što su odrađeni svi prethodni koraci i podešeni odgovarajući parametri, tada može da
se odredi ukupno vreme i troškovi štampe.
45
7.5 BOJA
Broj boja je određen u kartici “Štampa”, međutim, u proračunu kalkulacija se mora posebno
računati svaka boja ponaosob. Na taj način se dobija detaljna i precizna računica utroška boje u štampi.
Svaka boja ima specifične karakteristike na osnovu kojih su određivani normativi. Ti normativi su
određivani na osnovu dugogodišnjeg iskustva, istraživanjem tehnologa, prema specifikacijama
proizvođača ili iz nekih drugih relevantnih izvora.
Prvi korak je odabir zauzetosti štampane površine. Jedan način da se unese procenat zauzetosti
je upisivanje direktno u polje “[%]” u vrednosti od 1-100. Drugi način je izabor neke od standardizovanih
vrednosti iz padajućeg menija “vrsta posla – forme“ (Slika 15). Nakon odabira, odgovarajuća vrednost
se automatski prikazuje u polju “%”. Padajući meni sadrži sledeće stavke:
1) Veoma jednostavan prelom, bez rastera (15%)
2) Jednostavan prelom, bez rastera (20%)
3) Jednostavan prelom, naglašeni naslovi (25%)
4) Prelom srednjeg stepena složenosti bez rastera (35%)
5) Složen raspored, bez rastera (50%)
6) Raster (50%)
7) Pune tonske površine (100%)
8) Negativi (tekst i slike) (75%)
9) Cijan (40%)
10) Magenta (40%)
11) Žuta (50%)
12) Crna (20%)
46
Drugi korak je odabir boje iz padajućeg menija “Boja“. U slučaju da je iz padajućeg menija
“vrsta posla – forme“ izabrana neka od procesnih boja (cijan, magenta, žuta, crna), program će je
automatski prikazati i u padajućem meniju “Boja“. Ovaj, kao i svaki drugi automatizam u aplikaciji,
donekle ubrzava proces kalkulacija, pa je i te kako koristan.
Treći korak je unos cene boje u polje “Cena [din/kg]“.
Četvrti korak je proračun štampane površine. Ovaj zadatak je sa jedne strane malo manje
prijemčljiv za korisnika dok sa druge strane ostavlja prostora za mnogo lakše i praktičnije računanje
štampajućih površina u raznim specifičnim slučajevima. Na ovaj način je korisnik oslobođen od
ručnog računanja štampajućih površina, pa se samim tim opet dobila ušteda na vremenu.
Primer 2. Zadate su dimenzije slika, dimenzije ukupne štampajuće površine i površina pozadine
u nekoj boji kojoj nisu određene dimenzije. Broj procedura (računanja) zavisi od broja različitih slika
ili nekih drugih elemenata koji se takođe razlikuju po veličini pokrivne površine. U ovom slučaju,
da bi se odredila površina pozadinske površine, korisnik treba proći kroz najmanje tri procedure
(proračuna):
1) Određivanje ukupne štampajuće površine kao u prethodnom primeru.
2) Oduzimanje ukupne površine svih slika identičnih dimenzija od ukupne štampajuće površine da bi
se dobila pozadinska površina. Ukoliko ima slika sa nekom drugom pokrivnom površinom postupak
oduzimanja se ponavlja. Kada je površina pozadine određena, klikom na dugme “Ubaci [mm]” vrši
se računanje troškova za izabranu boju, procenat zauzetosti na izračunatoj površini. Ukoliko ima više
boja na istoj površini, postupak se ponavlja s’ tim što površinu ne moramo ponovo određivati.
3) Određivanje površine slika i proračuna troškova boje.
47
Lista pod nazivom “Lista troškova boje” (slika 15) predstavlja sve uračunate troškove boja koje
je uneo korisnik. Objekti u listi sadrže naziv boje, težinu izraženu u kilogramima i cenu u dinarima.
Ukoliko je neki objekat greškom unešen, on se može izbrisati iz liste tako što se selektuje unutar liste, a
zatim, klikne na dugme “Obriši”. Ovim korakom se ne obriše samo selektovani objekat iz liste, nego se
takođe, izvrše ispravke u celokupnoj računici, redukuju se ukupni troškovi boje, izmene se određene
vrednosti i parametri unutar programa. U aplikaciji je ugrađen sistem za brojanje boja. Nakon brisanja
objekta iz liste, taj sistem se automatski reguliše. Brojači boja su automatizmi koji prate unos korisnika
i na osnovu unešenih objekata u listu proveravaju da li je ta boja prvi put unešena u listu ili je već bila
unošena. Iste boje mogu biti unošene više puta u slučajevima gde imaju različite površine za koju se
računa ta ista boja ili iz nekih drugih razloga. Interaktivna lista iz koje se mogu brisati objekti daje
fleksibilnost programu i da toga nema, aplikacija bi se morala restartovati i računati sve iznova.
48
7.6 ZAVRŠNA GRAFIČKA OBRADA,
UKUPNO VREME I TROŠKOVI PROIZVODNJE
Peta kartica služi za proračun završne grafičke obrade, ukupno vreme i troškove proizvodnje
(Slika 16). Za jednostavan proizvod koriste se samo operacije rezanja.
Prvi korak - korisnik unosi troškove mašine za rezanje u polje “Troškovi rada mašine za rezanje
[h]”, a potom program izračunava i ispisuje u poljima ukupno vreme i troškove rezanja.
Drugi korak - predstavlja proračun ukupnog vremena i troškova proizvodnje . Da bi se uspešno
izvršio finalni korak i dobili korektni rezultati, potrebno je uraditi sve operacije na svih pet kartica.
Slika 18. Peta kartica - Proračun završne grafičke obrade i ukupnog vremena i troškova proizvodnje
49
7.7 KONEKCIJA SA SQLITE BAZAMA PODATAKA
U aplikaciji se koriste dve SQLite baze podataka. U jednoj se nalaze tabele sa vrstama papira
a u drugoj tabele mašina. Korisnik ima pristup bazama kroz aplikaciju preko hijerarhijskih stabala.
Preko tih stabala moguće je izvršiti sledeće operacije:
1) Pregled papira i mašina (po proizvođačima, vrsti, tipu i gramaturi)
2) Učitavanje podataka samo jednog papira u aplikaciju (širina, dužina, gramatura, broj proizvoda,
naziv, cena, broj tabaka u paketu, vrsta) (slika 19)
3) Učitavanje podataka jedne mašine u aplikaciju (naziv, širina i dužina maksimalanog formata,
norma, vreme pripreme, broj otisaka, vreme pranja) (slika 20).
Konektovanje na SQLite bazu je slično kao kod konvencionalnih SQL baza. U ovom
programskom kodu, taj segment je urađen na sledeći način:
static void konektovanjeMasina(){
try {
Class.forName(“org.sqlite.JDBC”);
conn = DriverManager.getConnection(“jdbc:sqlite:..\\kalkulacije\\masina.
sqlite”);
stMasina = conn.createStatement();
} catch (ClassNotFoundException | SQLException e) {
e.printStackTrace();
}
}
, gde se pomoću driver manager-a vrši konekcija sa bazom mašina.
51
Komunikacija sa bazom (SQL statements) je ista kao kod konvencijalnih SQL baza. Na primer,
dužina i širina se u ovom programskom kodu dobija na sledeći način:
Vizualizacija aplikacije i prikaz veza izmedju objekata su predstavljeni kroz klasni dijagram
(slika 21). Osnovni elementi dijagrama su klase u kojima se nalaze podelementi. Klase mogu biti
povezane vezama zavisnosti, asocijacije, generalizacije i realizacije. Komponente koje se nalaze unutar
klasa su metode i varijable.
Za pravljenje klasnog dijagrama korišćen je dodatak za Eclipse radno okruženje i ovaj dijagram
se generiše automatski na osnovu programskog koda.
52
Slika 21. UML klasni dijagram
53
9. Zaključak
54
Rezultat kalkulacija grafičke proizvodnje jeste ukupno utrošeno vreme i ukupni troškovi
proizvodnje za ceo jedan tiraž. Da bi vreme i troškovi grafičke proizvodnje bili što tačniji, potrebno
je precizno odrediti vremena i troškove svih operacija u grafičkom procesu, koja se dobijaju
dugogodišnjim istraživanjem i iskustvom stručnjaka i tehnologa iz te oblasti. Najveća mana kalkulacija
je ta što se rezultat dobija rednim pristupom proizvodnje pa je ukupno vreme proizvodnje, ujedno i
najduže moguće. Kada bi se vršili proračuni za kombinovani ili paralelni pristup, gde su vremena
čekanja svedena na minimum, tada bi se dobila znatno veća ušteda vremena, a samim tim bi i troškovi
bili redukovani.
Aplikacija za kalkulaciju jednostavnog grafičkog proizvoda je ispunila željena očekivanja u
tehničkom praktičnom smislu. Vreme koje je potrebno za kalkulaciju grafičke proizvodnje je znatno
skraćeno nego što se to postiže putem ručnih proračuna. U nekoj od narednih verzija programa
planira se proširenje za izradu kompletne kalukulacije za grafičke proizvode dobijene savijanjem,
poravnavanjem i rezanjem kao i za složene grafičke proizvode. U budućnosti se ovaj program može
proširiti i za proračune kod paralelne i kombinovane proizvodnje koji se koriste kod velikih grafičkih
pogona, za dobijanje najpribližnijeg ukupnog vremena i troškova proizvodnje za ceo tiraž ili na
godišnjem nivou. Takodje može da se planira i nadogradnja grafičkog prikaza tabaka i nove opcije
za pozicioniranje merno kontrolnih elemenata, kao što su registri, kontrolna merna traka, oznake za
rezanje, itd.
Ovi planovi za budućnost, otvaraju nove pravce za razvoj softverskih rešenja u domenu
grafičkih kalkulacija, pa čak i kompletne pripreme za štampu i organizovanja grafičke proizvodnje.
55
10. Literatura
10.1 TEKST
Ćosić I., Lazarević M., Rikalović A., Suzić N., Sremčev N., Lazarević Đ. (2014) Projektovanje
proizvodnih sistema, Novi Sad, Fakultet tehničkih nauka, Departman za Industrijsko Inženjerstvo i
menadžment [Online] Available from:
http://www.iim.ftn.uns.ac.rs/pom/attachments/article/437/1%20nedelja%20-%20Proizvodni%20
i%20usluzni%20sistemi%202014%20-%20uvodno%20GRID.pdf [Accessed 17. 9. 2015.]
Hipp R. D. (2015) About SQLite, Hwaci - Applied Software Research, [Online] Available from: https://
www.sqlite.org/about.html [Accessed 29. 8. 2015.]
Hipp R. D. (2015) SQL As Understood By SQLite, Hwaci - Applied Software Research, [Online]
Available from: https://www.sqlite.org/lang.html [Accessed 29. 8. 2015.]
Ivanović M., Bađonski M., Budimac Z., Pešović D. (2005) Programski jezik Java, Univerzitet u Novom
Sadu, Prirodno-matematički fakultet, Departman za matematiku i informatiku
Novaković D. (2013), Grafički procesi, Univerzitet u Novom Sadu, Fakultet tehničkih nauka,
Departman za Grafičko inženjerstvo i dizajn, [Online] Available from: http://www.grid.uns.ac.rs/
storage/download.php?fajl=99adff456950dd9629a5260c4de21858 [Accessed 4. 8. 2015.]
Novaković D. (2013), Grafički procesi deo I, Univerzitet u Novom Sadu, Fakultet tehničkih nauka,
Departman za Grafičko inženjerstvo i dizajn, [Online] Available from: http://www.grid.uns.ac.rs/
storage/download.php?fajl=08040837089cdf46631a10aca5258e16 [Accessed 7. 8. 2015.]
Novaković D. (2013), Grafički procesi deo II, Univerzitet u Novom Sadu, Fakultet tehničkih nauka,
Departman za Grafičko inženjerstvo i dizajn, [Online] Available from: http://www.grid.uns.ac.rs/
storage/download.php?fajl=7e1d842d0f7ee600116ffc6b2d87d83f [Accessed 20. 8. 2015.]
Novaković D., Dedijer S., Milić N. (2012) Grafički procesi – praktikum za vežbe, Novi Sad, FTN,
Grafičko inženjerstvo i dizajn
Novaković D. (2014), Grafički sistemi Deo I, Univerzitet u Novom Sadu, Fakultet tehničkih nauka,
Departman za Grafičko inženjerstvo i dizajn, [Online] Available from: http://www.grid.uns.ac.rs/
storage/download.php?fajl=ab7314887865c4265e896c6e209d1cd6
[Accessed 4. 8. 2015.]
Novaković D. (2013), Grafički sistemi Deo II, Univerzitet u Novom Sadu, Fakultet tehničkih nauka,
Departman za Grafičko inženjerstvo i dizajn, [Online] Available from: http://www.grid.uns.ac.rs/
storage/download.php?fajl=9c19a2aa1d84e04b0bd4bc888792bd1e
[Accessed 24. 8. 2015.]
56
Novaković D. (2013), Grafički sistemi - Skripta, Univerzitet u Novom Sadu, Fakultet tehničkih nauka,
Departman za Grafičko inženjerstvo i dizajn, [Online] Available from: http://www.grid.uns.ac.rs/
storage/download.php?fajl=35309226eb45ec366ca86a4329a2b7c3 [Accessed 24. 8. 2015.]
Novaković D. Pal M. (2014), Završna grafička obrada i ambalaža - deo I, Univerzitet u Novom Sadu,
Fakultet tehničkih nauka, Departman za Grafičko inženjerstvo i dizajn, [Online] Available from:
http://www.grid.uns.ac.rs/storage/download.php?fajl=16026d60ff9b54410b3435b403afd226
[Accessed 4. 8. 2015.]
Novaković D. Pal M. (2014), Završna grafička obrada, Rezanje grafičkih materijala, Univerzitet u
Novom Sadu, Fakultet tehničkih nauka, Departman za Grafičko inženjerstvo i dizajn, [Online] Available
from: http://www.grid.uns.ac.rs/storage/download.php?fajl=130f1a8e9e102707f3f91b010f151b0b
[Accessed 4. 8. 2015.]
Novaković D. (2013), Završna grafička obrada - Skripta, Univerzitet u Novom Sadu, Fakultet tehničkih
nauka, Departman za Grafičko inženjerstvo i dizajn, [Online] Available from: http://www.grid.uns.
ac.rs/storage/download.php?fajl=cb8acb1dc9821bf74e6ca9068032d623 [Accessed 4. 8. 2015.]
Owens M. (2006), The Definitive Guide to SQLite, Apress, Springer-Verlag New York, United States of
America, [Online] Available from: http://link.springer.com/book/10.1007/978-1-4302-0172-4
[Accessed 31.08.2015.]
Siegel J. (2005) Introduction To OMG’s Unified Modelin Language® (UML®), Object Management
Group®, [Online] Available from: http://www.omg.org/gettingstarted/what_is_uml.htm [Accessed 3.
9. 2015.]
Topolnik M., Kušek M. (2008), Uvod u programski jezik Java, Sveučilište u Zagrebu, Fakultet
elektrotehnike i računarstva, [Online] Available from:
https://www.fer.unizg.hr/_download/repository/Skripta%5B5%5D.pdf [Accessed 28. 8. 2015.]
10.2 SLIKE
Novaković D. (2013), Grafički procesi deo I, Univerzitet u Novom Sadu, Fakultet tehničkih nauka,
Departman za Grafičko inženjerstvo i dizajn, [Online] Available from: http://www.grid.uns.ac.rs/
storage/download.php?fajl=08040837089cdf46631a10aca5258e16 [Accessed 7. 8. 2015.]
Saternos C. (2014), Client-Server Web Apps with JavaScript and Java, Sebastopol, CA 95472 , O’Reilly
Media, Inc., [Online] Available from:
https://www.safaribooksonline.com/library/view/client-server-web-apps/9781449369323/
[Accessed 7. 8. 2015.]
57