WEB-BAZIRAN VIZUELNI HTML/ CSS RAZVOJNI ALAT WEB-BASED VISUAL HTML/CSS DEVELOPMENT TOOL

Size: px
Start display at page:

Download "WEB-BAZIRAN VIZUELNI HTML/ CSS RAZVOJNI ALAT WEB-BASED VISUAL HTML/CSS DEVELOPMENT TOOL"

Transcription

1 1 WEB-BAZIRAN VIZUELNI HTML/ CSS RAZVOJNI ALAT WEB-BASED VISUAL HTML/CSS DEVELOPMENT TOOL Dejan Čančarević 1, Slobodan Jovanović 1, Nenad Gligorić 2 1 Fakultet informacionih tehnologija, Univerzitet Metropolitan, Beograd, 2 Fakultet organizacionih nauka, Univerzitet u Beogradu, Sadržaj - Statičan Web razvoj, odnosno razvoj površinskog sloja Web aplikacija, uključuje jezike različitih tipova (markup, stylesheet, scripting) gde svaki ima jasno definisana pravila sintakse, semantike i generalno preporuka za njega. Ovaj članak predstavlja izradu Web baziranog razvojnog alata, koji koristi pune prednosti Web platforme za trenutnu vizuelizaciju rezultata rada u realnom okruženju. Takođe koristi se baza znanja, definisana za te jezike, kao pomoć u pravljenju stranica kroz filtriranje opcija i predviđanje sledećih koraka na osnovu dosadašnjeg rada korisnika. Abstract - Static Web development (or frontend development) requires working with different types of languages, including markup, stylesheet and scripting languages, which all have clear syntax, semantic and general rules and recommendations. This paper describes development of Web based editor which takes full advantage of Web platform by providing instant and actual visualization of the results. Also, knowledge base for those languages is used by offering filtering options and next step predictions based on the user inputs and coding style. 1. UVOD Domen statičnog Web razvoja se odnosi na površinski sloj Web aplikacija ( frontend) i najčešće uključuje upotrebu sledećih jezika - tehnologija: HTML (HyperText Markup Language), CSS (Cascading Style Sheets) i JS (JavaScript). Kombinacijom ovih tehnologija mogu se praviti statične Web stranice. Sadržaj ovih stranica je nepromenjiv i (uglavnom) ne može biti drugačije prikazan u odnosu na ono što stoji u samom dokumentu [1]. Iz grupe gore navedenih jezika jedino je JavaScript programski jezik dok su ostala dva markup i stylesheet jezici, respektivno. Markup jezik je jezik u kome anotiranjem određenih delova teksta dajemo posebnu ulogu entitetima koja ih razlikuje od običnog teksta. Stylesheet jezik nam služi da dodatno stilizujemo i formatiramo te posebne delove teksta - dokumenta. U celom procesu statičnog Web razvoja korisniku se može olakšati faza ručnog pisanja kôda tako što će se npr. ponuditi određeni sledeći koraci u određenim trenucima u odnosu na pravila vezana za taj jezik, ili čak obezbediti kompletan vizuelni editor koji će u pozadini za korisnika generisati određen kôd. Ove obe situacije su danas vrlo tipične i svaki bolji editor ih poseduje. Naime, u odnosu na pravila jezika editor će pomoći korisniku u određenom trenutku, i tu se taj proces završava čineći editore još uvek prilično primitivnim, bez skoro ikakve ugrađene inteligencije. U domenu programskih jezika to je sasvim opravdano jer je praktično nemoguće naći neki vid pattern-a u odnosu na stil pisanja kôda korisnika ili napraviti neke predikcije kao što bi bio odgovor na pitanje: Šta će korisnik sledeće uraditi?. Iz tih razloga editori programskih jezika još uvek nisu evoluirali, ali zato ova ograničenja se ne odnose na editore markup i stylesheet jezika, ostavljajući dosta mesta za rad na tom polju. Iz ovih razloga ovaj rad se fokusira na razvojni alat za markup i stylesheet jezike, koji rešava dva bitna problema na tom polju: 1. Ubrzava razvoj stvari koje se inače često ponavljaju. Tako što pronalazi stil programiranja trenutnog korisnika, nudi sledeće korake korisniku u odnosu na trenutna pravila i preporuke organizacija zaduženih za razvoj tih jezika. 2. Daje instantnu vizuelizaciju rada u realnom okruženju za koje se kôd i piše, a to je u ovom slučaju Web platforma, odnosno Web čitač. Za razliku od drugih desktop baziranih alata koji samo implementiraju neki browser engine u svoju vizuelnu reprezentaciju i na taj način najčešće ne mogu da daju realan rezultat rada. Na ovaj način se podiže ovakav tip editora na jedan novi nivo i omogućava: naprednim korisnicima da ne brinu o rutinskim stvarima i ne troše vreme na kucanje samog kôda. A početnim korisnicima omogućava instantan pregled njihovih akcija, predlaže samo one akcije koje su u skladu sa preporukama i standardima i na taj način olakšava proces učenja. Ovaj članak je organizovan na sledeći način. Pregled zahteva koje editor treba da ispuni definisan je u drugom poglavlju. Opis strukture softvera i upotrebljenih tehnologija predstavljen je u trećem poglavlju. Četvrto poglavlje opisuje zahteve, izgled i trenutne probleme korisničkog interfejsa. U petom poglavlju dat je pregled implementacije ključnih delova softvera sa fragmentima koda. Editor i kompletan izvorni kôd dostupni su online [2]. 2. ZAHTEVI Kako bi Web platforma kao izbor ovog editora imala smisla potrebno je obezbediti sledeće funkcionalnosti: 1. Mogućnost upotrebe nezavisno od operativnog sistema i generalno platforme uz ograničenja koja nudi ta 647

2 2 platforma prema svojim ograničenjima. Na ovaj način editor bi trebalo da funkcioniše na bilo kojoj platformi od klasičnih operativnih sistema do onih prilagođenih za mobilne platforme, samo što u slučaju mobilnih platformi zbog njihovih karakteristika kao što je veličina ekrana, editor neće biti potpuno upotrebljiv. Iz ovog proizilaze sledeći uslovi: Editor treba da brine o rezultatima rada korisnika, sačuva ih, vrati ili obriše na zahtev korisnika. Treba da brine o privatnosti korisnika i pravima intelektualne svojine. Treba da omogući lični (interni) pregled rada korisnika kao i eksterni - mogućnost deljenja sa drugim korisnicima. 2. Mogućnost upotrebe iz bilo kog modernog Web čitača. Na ovaj način korisniku se obezbeđuje mogućnost ličnog izbora kao i sama mogućnost testiranja u različitim Web čitačima. Iz ovog proizilaze sledeći uslovi: Editor mora biti napisan u programskom jeziku koji može da se izvršava u bilo kom modernom Web čitaču bez ikakve dodatne instalacije ili podešavanja. Taj jezik mora da poseduje mogućnost direktnog editovanja i manipulacije dokumenta i stilova vezanih za taj dokumenat. 3. Pošto celokupni ekran Web čitača predstavlja radnu površinu korisnika, alati, opcije, meniji i ostali elementi vezani za sam editor koji takođe moraju biti deo strane treba da budu bezlični, skalabilni i pokretni kako bi ih korisnik sam mogao raspoređivati po ekranu u zavisnosti od toga šta pravi. 3. OPIS SOFTVERA Iz zahteva se vidi da je ovo Web baziran editor koji mora da poseduje mogućnost trenutnog editovanja aktivnog dokumenta. Tako da na jednoj stranici treba postojati deo koji predstavlja i pokreće funkcionalnost editora, i sa druge strane treba postojati deo koji korisnik pravi i koji ne bi trebalo da ima veze sa prvim delom. Obzirom na to da se editor nalazi na jednoj stranici u koju su samo uključeni pomoćni fajlovi, arhitektura celokupnog sistema je jednoslojna. Pošto je editor fokusiran na frontend razvoj i jedna od glavnih karakteristika je to što se realan Web browser engine koristi za interpretaciju rezultata, u tom slučaju bilo kakva upotreba plugin-ova, kao što su Adobe Flash ili Microsoft Silverlight, je besmislena. Iz tog razloga upotrebljene su sledeće tehnologije u razvoju ovog editora: 1. JavaScript skriptni jezik za kompletnu funkcionalnost. Izbor ovog jezika je logičan jer je veoma dobro podržan, standardan, sa dobrom dokumentacijom i dobrom podrškom razvojne zajednice. JavaScript se pokreće na klijentskoj strani, brz je, dinamično tipiziran i fleksibilan pa se može koristiti i kao objektno orjentisan i kao proceduralan [3]. Sa druge strane neke od tih prednosti predstavljaju i mane kao i sama činjenica da nije čisto objektno orjentisan jezik pa se ne mogu koristiti bogate funkcionalnosti kao što imamo u klasičnim programskim jezicima kao što je Java. 2. Uz čist JavaScript je upotrebljena jquery [4] biblioteka kao najpopularnija JavaScript biblioteka danas. Uz nju olakšane su klasične radnje manipulacije dokumentom, animacijama, strukturama podataka i slično. Uz jquery biblioteku koriste se njena dva plugin-a koji proširiju mogućnosti. Prvi je jquery UI, uobičajena nadogradnja na jquery koja se koristi za user interface vidžete (widgets), različite efekte i elemente interakcije. Konkretno, u ovom alatu jquery UI se koristi za dijalog boksove, neke animacije i interakciju sa boksovima kako bi mogli da se pomeraju po ekranu. Iako jquery ima odličnu podršku za manipulaciju CSS pravilima (CSS pravilo čine segmenti osobina - vrednost), on ne može direktno da piše ta pravila u odvojen CSS blok, već umesto toga piše inline stilove i na taj način gube se osnovni CSS principi kao što je nasleđivanje. Drugi plugin je jquery Rule biblioteka i ona daje mogućnost pisanja pravila u odvojen stil kao i dosta mogućnosti manipulacije tih stilova. Funkcionisanje celog editora se može grubo podeliti na tri glavna dela: 1. Deo za generisanje editora. Ovde spadaju stvari koje na stranici generišu različite delove editora u različitim trenucima. Za korisnika editor je predstavljen kao skup različitih celina koje se mogu pomerati po ekranu i sakrivati. Ove celine ustvari predstavljaju različite alate i funkcije koje uključuju: (a) Menu - glavni meni za pravljenje nove stranice, snimanje, otvaranje i zatvaranje stranice, (b) Element Actions - akcije za trenutan elemenat koje uključuju editovanje sadržaja elementa, pomeranje u odnosu na druge elemente, brisanje celog elementa i brisanje sadržaja elementa, (c ) Elements - Listu grupisanih elemenata koje korisnik može dodavati na različite načine u odnosu na trenutno selektovan elemenat, (d) Global Settings - podešavanja stranice i dodatnih stvari uključenih u stranicu, (e) Element Attributes - atributi vezani za trenutno selektovan elemenat. Menjaju se u zavisnosti od toga koje atribute poseduje određen elemenat, (f) Element Styles - sadrži akcije za menjanje grupnih ili pojedinačnih stilova vezanih za trenutan elemenat. Lista CSS pravila koje uključuju osobine i vrednosti se dinamično određuje prema raličitim kriterijumima o kojima će biti reči kasnije. 2. Deo za upravljanje akcijama korisnika. Ovde spada kôd koji upravlja različitim događajima koje korisnik pravi kao i interno pozivanim događajima koji se pozivaju u određenim trenutcima. U ovom delu se vrši sva glavna manipulacija elemenata stranice i stilova. 3. Algoritmi za različita odlučivanja i generisanja sadržaja (generisanje HTML elemenata, CSS stilova, dodela vrednosti CSS stilovima, određivanje verovatnoće sledećih HTML elemenata, i drugi). Prva dva dela su podržana ovim algoritmima, i daju editoru dinamičnost i inteligenciju. Algoritmi kao parametre uzimaju određene karakteristike elementa, analizu korisničkog rada i ostalo. Još jedna od stvari koja karakteriše editor je strogo pridržavanje pravila i preporuka za HTML i CSS koje određuje W3C ( World Wide Web Consortium). Na ovaj način se korisniku ograničavaju određene stvari koje 648

3 3 inače mogu da se urade ali su nepravilne ili nepreporučljuve. Prema pravilima jezika elementi i stilovi se u editoru koriste na sledeće načine: 1. Svi HTML elementi se čuvaju u jednom nizu kao objekti tipa tag i taj objekat sadrži sledeće osobine: (a) ime - ime tag-a po definiciji, (b) tip - da li je inline ili block po strukturi, (c) da li po vrsti prazan ili ne, odnosno da li ima ekvivalentan zatvarajući tag, (d) niz specifičnih atributa vezanih za taj tag, (e) niz tag-ova vezanih za taj tag, osnosno listu tag-ova koji isključivo mogu da se koriste sa tim tag-om [5]. U odnosu na ove atribute editor za ubacivanje novih HTML elemenata određuje verovatnoću za sledeći elemenat koji će biti ubačen u trenutno selektovan elemenat i generiše atribute specifične samo za selektovan elemenat. Takođe, rešava se problem velikog broja osobina koji mogu da se primene na elemenat tako što su sve osobine kategorisane, filtrirane za specifican elemenat i sakrivene - koje se uobičajeno ne koriste. Isto tako, na osnovu toga što su predefinisane vrednosti ponuđene u obliku padajuće liste osigurava se da korisnik unese samo ispravne vrednosti za te osobine. Lista osobina vidi se na slici Svi CSS stilovi sa njihovim pravilima se čuvaju u nizu kao objekti tipa elementstyle i imaju sledeće osobine: (a) ime - ime atributa po definiciji, (b) tip - na koji tip elementa se može primeniti osobina. Može biti all, block ili inline, (c) kategorija - kategorija kojoj osobina pripada, (d) kategorija elementa na koji se osobina može primeniti, (e) niz predefinisanih vrednosti, (f) da li je uobičajena osobina (često upotrebljena) ili ne [6]. U odnosu na ove atribute elementi stila i njihove vrednosti se dinamično određuju za svaki selektovan elemenat. Čuvanjem ovih osobina elemenata i stilova korisniku se omogućava se predviđanje sledećeg HTML elemenata koji će korisnik da koristi. Editor će uvek predložiti one elemente koji po pravilima smeju da se nađu na mestu gde korisnik želi da ubaci taj elemenat. Na taj način osigurava se ispravan način pisanja kôda i pomaže se učenje pravila i kategorisanja elemenata što je izuzetno bitno početnim korisnicima. Lista elemenata se vidi na slici 1. Slika 2. Filtriranje i kategorizacija stilova. 4. KORISNIČKI INTERFEJS Korisnički interfejs je predstavljen bezličnim providnim boksovima koji predstavljaju različite grupe funkcionalnosti. Bezličan izgled doprinosi tome da delovi stranice vezani za editor ne skreću pažnju korisnika sa dizajna stranice. Boksovi se mogu pomerati i sakrivati kako bi se korisniku obezbedio veći slobodan prostor na stranici. Tokom vremena većina desktop baziranih editora je prešla sa pokretnih tool boksova koji su prelazili preko radnog prostora na fiksne tool boksove i na taj način smanjili raspološiv radni prostor. Međutim u ovom slučaju odluka da tool boksovi budu vertikalno i horizontalno fiksirani bi doprinela tome da se izgubi jedna od osnovnih ideja editora a to je realan prikaz rezultata na ekranu. Slika 1. Predikcije sledećih elemenata izražene kroz providnost u listi elemenata. Prilikom testiranja i rada u razvojnom alatu, tool-boksovi su se uvek na neki način nalazili preko sadržaja stranice i korisnik bi ih u tom slučaju morao pomerati u zavisnosti na kom delu stranice radi. Rešenje koje bi rešilo ovaj problem ali opet sačuvalo glavne ideje editora bi najverovatnije bio hibridni izgled između fiksiranih boksova i onih koji mogu da se pomeraju gde bi fiksirani bili predstavljeni horizontalno i sadržali funkcionalnosti koje se retko koriste a drugi obrnuto. Prilikom kreiranja novog dokumenta prvi selektovan elemenat stranice je root elemenat sadržaja stranice a to je body tag. Svaki sledeći tag koji se ubaci postaje 649

4 4 selektovan i sve buduće radnje se odnose na njega. Iako razvoj stranice obično teče u formi stabla gde su elementi ugneždeni jedni u druge potrebno je i dati mogućnost eksplicitnog selektovanja aktivnog elementa. Ovo je rešeno jednostavnim klikom na površinu koju zauzima određeni elemenat i prekidanjem difolt akcije tog elementa. Kada se neki elemenat selektuje vizuelno će se animirati njegova pozadina u žutu i nazad kako bi korisnik znao koji elemenat je izabrao. Takođe celokupno stablo sa prethodnim čvorovima je prikazano u listi alata kako bi korisnik znao gde tačno ubacuje sledeći elemenat. Što se tiče samog mesta ubacivanja elementa kako bi se izbeglo preterano menjanje selektovanog elementa korisniku su ponuđene četiri opcije: unutar elementa pre ili posle sadržaja i izvan elementa pre ili posle. Iz ugla korisničkog interfejsa problemi prikaza prediktovanih elemenata i relevantnih stilova su rešeni na dva načina: Prikazom radne površine sa svim elementima i prikazom kategorizovane liste stilova. U slučaju kada su svi elementi prikazani na radnoj površini, algoritam za izračunavanje verovatnoće sledećeg elementa određuje verovatnoću koja pokazuje koliko je verovatno de će elemenat biti ubačen u selektovan u odnosu na selektovan elemenat (njegovu poziciju i druge parametre). Iako po pravilu HTML jezika, neki elementi ne mogu da se nađu u drugima zavisno od njihove strukture, to se može zaobići CSS pravilima tako da tag u listi alata ne može nikad biti potpuno providan, već se providnost kreće u intervalu od 80% - 0%. Providnost (opacity) je rešenje za prikaz koliko je verovatno da se određen elemenat nađe unutar selektovanog elementa. Na slici 3 prikazan je primer izračunate verovatnoće za određene elemente. nepraktična lista svih stilova, oni su kategorizovani i iz svake kategorije označeni su oni koji se ne upotrebljavaju često. U drugom slučaju kada je prikazana kategorizovana lista stilova, za svaki elemenat prikazuju se samo one kategorije stilova koje taj elemenat može imati. Kategorija prikazuje stilove klikom na njeno ime a prilikom otvaranje jedne ostale se zatvaraju radi uštede prostora. U kojoj kategoriji postoje stilovi koji se često ne koriste oni su sakriveni i prikazuju se - sakrivaju na klik linka more - less. Ako neka osobina poseduje predefionisane vrednosti editor ih prikazuje kao padajuću listu. Potencijalni problemi koji bi mogli da se jave kod različitih korisnika u ovom slučaju uključuju nedovoljno poznavanje CSS-a kako bi korisnik mogao da zna u kojoj grupi da pronađe koju osobinu i sporo pronalaženje pravila dok korisnik ne zapamti redosled. U radu sa editorom ovo rešenje prikaza CSS pravila se pokazalo odličnim jer na ovaj način vrlo lako mogu da se i pročitaju trenutne vrednosti i dodele nove vrednosti elementima. 5. IMPLEMENTACIJA Celokupan editor se nalazi na jednoj HTML stranici koja je podeljena na sledeće funkcionalne celine: (a) uključene biblioteke i stilovi neophodni za funkcionisanje editora, (b) CSS blok predviđen za nove stilove koje korisnik pravi, (c) JavaScript blok koji sadrži svu funkcionalnost, (d) HTML elementi editora na koje korisnik ne utiče i koji neće biti deo rezultata korisničkog rada. Kako su imena vezana za elemenete i stilove koje korisnik definiše potpuno proizvoljna i kako iz tog razloga ne bi došlo do konflikta između kôda - stila koji pravi korisnik i onog koji pripada editoru, svi nazivi koji su vezani za editor imaju prefiks _. Ako bi ipak u nekom slučaju korisnik nazvao neki na primer div _ime onda bi došlo do neke vrste konflikta u zavisnosti od situacije, ali pretpostavka je da se _ ne koristi. Svi generisani elementi imaju atribut title sa vrednošću generated kako bi elementi koje korisnik generiše i elementi koji pripadaju editoru mogli lako da se raspoznaju unutar kôda. Prilikom otvaranja editora automatski se pokreće početni dijalog boks koji služi pravljenju nove stranice. Nakon ovog koraka metoda dosetup() pokreće interno početno podešavanje i generisanje elemenata editora. Pseudo kod dosetup() metode vidi se u fragmentu 1. Slika 3. Izračunata verovatnoća unosa sledećeg elementa izražena kroz providnost (opacity). CSS jezik poseduje puno osobina i vrednosti za svaki elemenat, tako da umesto da se korisniku prikaže Fragment 1 dosetup() metoda begin postavinalovdokumenta(vrednost) prikaziinformacijestranice() dodajbodysadrzaj(sadrzaj) markirajelemenatkaogenerated(body) postavipokazivac(body) generisitagove() generisistilove() end 650

5 5 Funkcija populatetags() generiše tag-ove i ona se samo jednom poziva. Umesto da tag-ovi koji su korisniku na raspolaganju stoje odmah u dokumentu oni se automatski generišu iz JavaScript-a kako bi se olakšale buduće promene. Svi elementi su objekti tipa tag i čuvaju se u nizu alltags. Pretraživanja ovog niza vrše se po imenu tag-a i postoji par pomoćnih funkcija za to kao što je funkcija za pronalaženje indeksa. Funkcija za generisanje tag-ova prolazi kroz ovaj niz dva puta. U prvom prolasku kupi kategorije i u drugom prolasku za svaku kategoriju generiše listu tag-ova kao linkove. Funkcija populatestyles() koja generiše stilove vezane za elemenat je slična ali malo kompleksnija od prethodne. Isto kao i elementi koji se čuvaju u nizu alltags, stilovi se čuvaju u nizu allstyles kao objekti tipa elementstyle. Fukcija setpointer(what) zadužena je za više stvari. Osnovna funkcija je da postavi trenutan elemenat koji se koristi. U odnosu na taj sledeći elemenat vrše se sve radnje menjanja, ubacivanja, brisanja itd. To se radi tako što se ovoj funkciji prosledi ceo objekat i ona ga interno čuva kao pointer objekat. Pseudo kod funkcije setpointer(what) vidi se u fragmentu 2. Fragment 2 setpointer(what) metoda begin pointer = what postaviosobine(ime, roditelj, ancestor...) animirajpromenu() prikazidomputanju() generisiatribute() generisispecificneatribute() osvezicsspravila() postaviverovatnocu() optimizujverovatnocu() end Iako se svi elementi čuvaju u nizu trenutan elemenat nije stavka niza već jquery objekat nekog elementa. Razlog za to je to što na taj način može direktno da se pristupi elementu na stranice, održava se pozicija elementa na stranici i ostalo. Kako bi korisniku bilo jasno da se desila promena elementa sa kojim radi ova funkcija radi animaciju pozadine elementa u žutu boju i nazad i takođe u boksu alata ispisuje ime trenutno selektovanog elementa i njegovu putanju. Generisanje atributa vrši se u odnosu na trenutan elemenat i sastoji se od dve funkcije: generateattributes() i generatespecificattributes(). Funkcija generateattributes() služi za generisanje uobičajenih atributa koji su zajednički za sve elemente i oni se čuva ju u nizu generalattributes a atributi specifični za elemente čuvaju se unutar elemenata u njihovom nizu. Funkcija generateattributes() jednostavno prolazi kroz niz generalattributes, pravi tabelu i kao redove postavlja parove ime atributa i tekstualno polje za vrednost. Ako je definisana vrednost biće prikazana u predviđenom tekstualnom polju. Pored ove poziva se i funkcija generatespecificattributes() koja proverava da li trenutan elemenat ima specifične atribute i ako ima prikazuje ih ispod uobičajenih atributa na isti način. U već generisanoj listi CSS pravila prilikom menjanja aktivnog elementa umesto da se ta lista ponovo generiše ona ostaje ista a samo se vrednosti osobina menjaju. Ako za neki elemenat postoji pravilo da može ili ne može da ima neke osobine, te osobine se prikazuju odnosno sakrivaju. 6. ZAKLJUČAK U radu je prikazana nova vrsta HTML/CSS razvojnog alata čija se potreba javlja iz više razloga. Prvi razlog je mogućnost pomoći korisniku u pisanju HTML i CSS kôda na vrlo visokom nivou prema definisanim pravilima tih jezika. Pošto HTML/CSS nisu programski jezici, moguće je predviteti u kom smeru teče razvoj i na taj način napraviti određene predikcije. Isto tako pošto su to jezici čiji je rezultat predstavljen vizuelno, onda se može i ponuditi instantna vizuelizacija rada u realnom okruženju. Još jedan od razloga za editor implementiran u Web čitaču, jeste aktuelni trend razvojne zajednice, da dizajn pravi direktno kao Web stranicu a ne prvo u nekom grafičkom alatu. U ovom domenu ovaj editor je vrlo korisan i omogućava brz razvoj izgleda stranice, bez kucanja kôda i preteranog poznavanja pravila HTML i CSS jezika. 7. LITERATURA [1] Dejan Čančarević, Frontend Guide - Complete guide for HTML, CSS, JavaScript and DOM, ISBN: , Lulu, [2] Dejan Čančarević, Slobodan Jovanović, Web baziran alat za statičan Web razvoj. [3] Mozilla Developer Network, JavaScript documentation and reference. [4] The jquery Project, jquery library reference. [5] W3C, HTML5 Working Draft, May [6] W3C, CSS 2.1 Specification, June

PREDMET. Osnove Java Programiranja. Čas JAVADOC

PREDMET. Osnove Java Programiranja. Čas JAVADOC PREDMET Osnove Java Programiranja JAVADOC Copyright 2010 UNIVERZITET METROPOLITAN, Beograd. Sva prava zadržana. Bez prethodne pismene dozvole od strane Univerziteta METROPOLITAN zabranjena je reprodukcija,

More information

CSS CSS. selector { property: value; } 3/20/2018. CSS: Cascading Style Sheets

CSS CSS. selector { property: value; } 3/20/2018. CSS: Cascading Style Sheets CSS CSS CSS: Cascading Style Sheets - Opisuje izgled (appearance) i raspored (layout) stranice - Sastoji se od CSS pravila, koji defini[u skup stilova selector { property: value; 1 Font face: font-family

More information

VRIJEDNOSTI ATRIBUTA

VRIJEDNOSTI ATRIBUTA VRIJEDNOSTI ATRIBUTA Svaki atribut (bilo da je primarni ključ, vanjski ključ ili običan atribut) može i ne mora imati ograničenja na svojim vrijednostima. Neka od ograničenja nad atributima: Null / Not

More information

Osnove programskog jezika C# Čas 4. Nasledjivanje 2. deo

Osnove programskog jezika C# Čas 4. Nasledjivanje 2. deo Osnove programskog jezika C# Čas 4. Nasledjivanje 2. deo Nasledjivanje klasa Modifikator new class A { public virtual void F() { Console.WriteLine("I am A"); } } class B : A { public override void F()

More information

Programiranje III razred

Programiranje III razred Tehnička škola 9. maj Bačka Palanka Programiranje III razred Naredbe ciklusa for petlja Naredbe ciklusa Veoma često se ukazuje potreba za ponavljanjem nekih naredbi više puta tj. za ponavljanjem nekog

More information

Uputstvo za korišćenje logrotate funkcije

Uputstvo za korišćenje logrotate funkcije Copyright AMRES Sadržaj Uvod 3 Podešavanja logrotate konfiguracionog fajla 4 Strana 2 od 5 Uvod Ukoliko je aktivirano logovanje za RADIUS proces, može se desiti da posle određenog vremena server bude preopterećen

More information

Svi Java tipovi imaju ekvivalentan tip u jeziku Scala Većina Scala koda se direktno preslikava u odgovarajući Java konstrukt

Svi Java tipovi imaju ekvivalentan tip u jeziku Scala Većina Scala koda se direktno preslikava u odgovarajući Java konstrukt Funkcionalno programiranje Interoperabilnost jezika Scala i Java Prevođenje u Java bajt kod Svi Java tipovi imaju ekvivalentan tip u jeziku Scala Većina Scala koda se direktno preslikava u odgovarajući

More information

Izrada VI laboratorijske vježbe

Izrada VI laboratorijske vježbe Izrada VI laboratorijske vježbe 1. Programirati proceduru koja se aktivira sa Standard palete alatki klikom na button Fajlovi. Prilikom startovanja procedure prikazuje se forma koja sadrži jedan list box

More information

Osnove programskog jezika C# Čas 5. Delegati, događaji i interfejsi

Osnove programskog jezika C# Čas 5. Delegati, događaji i interfejsi Osnove programskog jezika C# Čas 5. Delegati, događaji i interfejsi DELEGATI Bezbedni pokazivači na funkcije Jer garantuju vrednost deklarisanog tipa. Prevodilac prijavljuje grešku ako pokušate da povežete

More information

Uputstvo za podešavanje mail klijenta

Uputstvo za podešavanje mail klijenta Uputstvo za podešavanje mail klijenta 1. Podešavanje Thunderbird mail klijenta 1.1 Dodavanje mail naloga Da biste podesili Vaš mail klijent (u ovom slučaju Thunderbird) da prima i šalje mail-ove potrebno

More information

b) program deljiv3; uses wincrt; var i:integer; begin i:=3; while i<100 do begin write(i:5); i:=i+3; end; end.

b) program deljiv3; uses wincrt; var i:integer; begin i:=3; while i<100 do begin write(i:5); i:=i+3; end; end. NAREDBA CIKLUSA SA PREDUSLOVOM WHILE 1.Odrediti vrednosti s i p nakon izvrsenja sledecih naredbi za dato a=43, a=34, a=105 program p1; var a,s,p:integer; write('unesite a:');readln(a); p:=a; s:=0; while

More information

Vežbe - XII nedelja PHP Doc

Vežbe - XII nedelja PHP Doc Vežbe - XII nedelja PHP Doc Dražen Drašković, asistent Elektrotehnički fakultet Univerziteta u Beogradu Verzija alata JavaDoc za programski jezik PHP Standard za komentarisanje PHP koda Omogućava generisanje

More information

PRINCIPI SOFTVERSKOG INŽENJERSTVA TIM NAZIV_TIMA

PRINCIPI SOFTVERSKOG INŽENJERSTVA TIM NAZIV_TIMA PRINCIPI SOFTVERSKOG INŽENJERSTVA TIM NAZIV_TIMA SPECIFIKACIJA BAZE PODATAKA ZA PROJEKAT NAZIV_PROJEKTA Veb knjižara - Specifikacija baze podataka 1 10.04.2017. Verzija V 1.0 Datum: 20. mart 2017. Istorija

More information

VB komande. Programiranje 1

VB komande. Programiranje 1 VB komande Programiranje 1 Zadatak 1: Sastaviti program koji se sastoji iz jedne ListBox kontrole, jedne Textbox kontrole i dva komandna dugmeta. Klikom na prvo komandno dugme umeće se u ListBox sadržaj

More information

UPUTSTVO ZA KORIŠĆENJE NOVOG SPINTER WEBMAIL-a

UPUTSTVO ZA KORIŠĆENJE NOVOG SPINTER WEBMAIL-a UPUTSTVO ZA KORIŠĆENJE NOVOG SPINTER WEBMAIL-a Webmail sistem ima podršku za SSL (HTTPS). Korištenjem ovog protokola sva komunikacija između Webmail sistema i vašeg Web čitača je kriptovana. Prilikom pristupa

More information

Microsoft Hyper-V Server 2016 radionica EDU IT Pro, Zagreb,

Microsoft Hyper-V Server 2016 radionica EDU IT Pro, Zagreb, Microsoft Hyper-V Server 2016 radionica EDU IT Pro, Zagreb, 13.04.2017. Podešavanje Hyper-V Servera 2016 za RSAT upravljanje Dario Štefek Lokacije za preuzimanje: Microsoft Hyper-V Server 2016 https://www.microsoft.com/en-us/evalcenter/evaluate-hyper-v-server-2016

More information

Računarske osnove Interneta (SI3ROI, IR4ROI)

Računarske osnove Interneta (SI3ROI, IR4ROI) Računarske osnove terneta (SI3ROI, IR4ROI) Vežbe MPLS Predavač: 08.11.2011. Dražen Drašković, drazen.draskovic@etf.rs Autori: Dražen Drašković Naučili ste na predavanjima MPLS (Multi-Protocol Label Switching)

More information

UNIVERZITET U BEOGRADU ELEKTROTEHNIČKI FAKULTET

UNIVERZITET U BEOGRADU ELEKTROTEHNIČKI FAKULTET UNIVERZITET U BEOGRADU ELEKTROTEHNIČKI FAKULTET Katedra za elektroniku Računarska elektronika Grupa br. 11 Projekat br. 8 Studenti: Stefan Vukašinović 466/2013 Jelena Urošević 99/2013 Tekst projekta :

More information

KLASIFIKACIJA JELENA JOVANOVIĆ. Web:

KLASIFIKACIJA JELENA JOVANOVIĆ.   Web: KLASIFIKACIJA JELENA JOVANOVIĆ Email: jeljov@gmail.com Web: http://jelenajovanovic.net PREGLED PREDAVANJA Šta je klasifikacija? Binarna i više-klasna klasifikacija Algoritmi klasifikacije Mere uspešnosti

More information

pojedinačnom elementu niza se pristupa imeniza[indeks] indeks od 0 do n-1

pojedinačnom elementu niza se pristupa imeniza[indeks] indeks od 0 do n-1 NIZOVI Niz deklarišemo navođenjemtipa elemenata za kojim sledi par srednjih zagrada[] i naziv niza. Ako je niz višedimenzionalni između zagrada[] se navode zarezi, čiji je broj za jedan manji od dimenzija

More information

Mašinska vizija. Dr Nenad Jovičić tnt.etf.rs/~mv

Mašinska vizija. Dr Nenad Jovičić tnt.etf.rs/~mv Mašinska vizija Dr Nenad Jovičić 2017. tnt.etf.rs/~mv Linearne 2D geometrijske transformacije 2D geometrijske transformacije Pretpostavka: Objekti u 2D prostoru se sastoje iz tačaka i linija. Svaka tačka

More information

Sveučilište u Zagrebu PMF Matematički odsjek. Mreže računala. Vježbe 08. Zvonimir Bujanović Slaven Kožić Vinko Petričević

Sveučilište u Zagrebu PMF Matematički odsjek. Mreže računala. Vježbe 08. Zvonimir Bujanović Slaven Kožić Vinko Petričević Sveučilište u Zagrebu PMF Matematički odsjek Mreže računala Vježbe 08 Zvonimir Bujanović Slaven Kožić Vinko Petričević Uvod: (X)HTML i CSS Na ovim i idućim vježbama naučit ćemo osnove jezika za opisivanje

More information

Sberbank Business Online na Mozilla FireFox

Sberbank Business Online na Mozilla FireFox Sberbank Business Online na Mozilla FireFox Verzija 1.6 Srpanj 2016. Sberbank d.d. Stranica 1 SADRŽAJ 1 INSTALACIJA... 2 2 POKRETANJE MOZILLE FIREFOX... 3 2.1 IMPORT SECURITY MODULA... 4 2.2 AUTOMATSKI

More information

Razvoj hibridnih mobilnih aplikacija pomoću PhoneGap platforme

Razvoj hibridnih mobilnih aplikacija pomoću PhoneGap platforme INFOTEH-JAHORINA Vol. 12, March 2013. Razvoj hibridnih mobilnih aplikacija pomoću PhoneGap platforme Igor Dujlović Elektrotehnički fakultet Banja Luka Banja Luka, BiH dujlovic@gmail.com Zoran Đurić Elektrotehnički

More information

Programske paradigme Funkcionalna paradigma

Programske paradigme Funkcionalna paradigma Programske paradigme Funkcionalna paradigma 1. čas: Uvod u funkcionalno programiranje. Programski jezik Haskel. Upoznavanje sa razvojnim okruženjem. Tipovi podataka. Funkcionalno programiranje Stil u programiranju

More information

Jezik Baze Podataka SQL. Jennifer Widom

Jezik Baze Podataka SQL. Jennifer Widom Jezik Baze Podataka SQL SQL o Jezik koji se koristi u radu sa relacionim bazama podataka o Nije programski jezik i manje je kompleksan. o Koristi se isključivo u radu za bazama podataka. o SQL nije case

More information

VHDLPrimeri Poglavlje5.doc

VHDLPrimeri Poglavlje5.doc 5. VHDL opis kola koja obavljaju osnovne aritmetičke funkcije Sabirači Jednobitni potpuni sabirač definisan je tablicom istinitosti iz Tabele 5.1. Tabela 5.1. cin a b sum cout 0 0 0 0 0 0 0 1 1 0 0 1 0

More information

Programiranje Internet aplikacija

Programiranje Internet aplikacija Programiranje Internet aplikacija Čas 8 - HTML 5 Dražen Drašković, Sanja Delčev Neka pravila HTML 5 Nove mogućnosti treba da se zasnivaju na HTML-u, CSS-u, DOM-u i JavaScript-u. Smanjiti potrebu za eksternim

More information

Uputstva za instaliranje čitača Datalogic Skorpio u operativnom sistemu Windows 7 i višim POM-NA-XX-46, V3.0

Uputstva za instaliranje čitača Datalogic Skorpio u operativnom sistemu Windows 7 i višim POM-NA-XX-46, V3.0 POM - Pomoć korisnicima Uputstva za instaliranje čitača Datalogic Skorpio u operativnom sistemu Windows 7 i višim POM-NA-XX-46, V3.0 IZUM, 2016 COBISS, COMARC, COBIB, COLIB, IZUM su zaštićeni znaci u posedu

More information

namespace spojneice { public partial class Form1 : Form { public Form1() { InitializeComponent(); }

namespace spojneice { public partial class Form1 : Form { public Form1() { InitializeComponent(); } Spojnice using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using System.IO;

More information

Sadržaj. Verzija 03/2017 Primjenjuje se od 20. novembra godine

Sadržaj. Verzija 03/2017 Primjenjuje se od 20. novembra godine Sadržaj 1 Web hosting 3 2 Registracija domena 3 3 Internet marketing 3 4 E mail paketi 4 5 Virtuoz 4 6 Internet Security servis 5 7 Kolokacija servera 6 8 Cloud usluge 6 9 Aktivni servisi koji nijesu u

More information

JavaScript i HTML DOM

JavaScript i HTML DOM 4. vježbe iz WEB programiranja četvrtak, 22. ožujka 2012. JavaScript 1. dio JavaScript i Što je DOM? Kako JS koristi DOM? Pristup elementima dokumenta Promjena i učitavanje vrijednosti tagova Primjer 1.

More information

Događaj koji se javlja u toku izvršenja programa i kvari normalno izvršenje. Kada se desi izuzetak, sistem pokušava da pronađe način da ga obradi.

Događaj koji se javlja u toku izvršenja programa i kvari normalno izvršenje. Kada se desi izuzetak, sistem pokušava da pronađe način da ga obradi. Obrada izuzetaka Šta je izuzetak? Događaj koji se javlja u toku izvršenja programa i kvari normalno izvršenje. Kada se desi izuzetak, sistem pokušava da pronađe način da ga obradi. Prosleđuje izuzetak,

More information

2. Linijska algoritamska struktura

2. Linijska algoritamska struktura Univerzitet u Nišu Građevinsko-arhitektonski fakultet Informatika 2 2. Linijska algoritamska struktura Milica Ćirić Blokovi za prikaz algoritma Algoritam se vizuelno može prikazati pomoću blok dijagrama,

More information

Cjenovnik usluga informacionog društva

Cjenovnik usluga informacionog društva Cjenovnik usluga informacionog društva Verzija: 01/2018 Sadržaj 1 Web hosting 3 2 Registracija domena 3 3 Internet marketing 3 4 E mail paketi 4 5 Virtuoz 4 6 Internet Security servis 5 7 Kolokacija servera

More information

Upute za postavljanje Outlook Expressa

Upute za postavljanje Outlook Expressa Upute za postavljanje Outlook Expressa Prije postavljanja klijenata morate obavezno obaviti prvu prijavu na web mail kako bi aktivirali vaš račun na novom sustavu. Ukoliko niste obavili prvu prijavu, nećete

More information

Tema 8: Koncepti i teorije relevantne za donošenje odluka (VEŽBE)

Tema 8: Koncepti i teorije relevantne za donošenje odluka (VEŽBE) Tema 8: Koncepti i teorije relevantne za donošenje odluka (VEŽBE) SISTEMI ZA PODRŠKU ODLUČIVANJU dr Vladislav Miškovic vmiskovic@singidunum.ac.rs Fakultet za računarstvo i informatiku 2013/2014 Tema 8:

More information

Numerical Computation

Numerical Computation GNU Octave Numerical Computation vrlo često u tehnici retko stvarni problemi imaju closed-form solution čak i kad imaju, pitanje upotrebljivosti mnogo detalja numerički pristup u početku tretirano kao

More information

Windows Server 2012, VDI Licenciranje najprodavanijeg servera, što je novo, VDI licenciranje. Office 2013 / Office 365

Windows Server 2012, VDI Licenciranje najprodavanijeg servera, što je novo, VDI licenciranje. Office 2013 / Office 365 Windows 8 Licenciranje, razlike u verzijama Windows Server 2012, VDI Licenciranje najprodavanijeg servera, što je novo, VDI licenciranje Serverski proizvodi Server 2012, System centar 2012, SQL 2012, Sharepoint

More information

Učitati cio broj n i štampati njegovu recipročnu vrijednost. Ako je učitan broj 0, štampati 1/0.

Učitati cio broj n i štampati njegovu recipročnu vrijednost. Ako je učitan broj 0, štampati 1/0. Kontrolne naredbe Primjeri: Opšti oblik razgranate strukture (if sa ) if (uslov) Naredba 1 ili blok naredbi1 Naredba 2 ili blok naredbi2 Učitati broj x i štampati vrijednost double x, z; Scanner in=new

More information

Sveučilište u Zagrebu Fakultet strojarstva i brodogradnje. WEB programiranje HTML & CSS

Sveučilište u Zagrebu Fakultet strojarstva i brodogradnje. WEB programiranje HTML & CSS Sveučilište u Zagrebu Fakultet strojarstva i brodogradnje WEB programiranje HTML & CSS Autor/i: Juraj Benić 2018 1. Zadatak Kreirati stranicu kojoj će naslov biti Zadatak 1. i veličina teksta 20px te staviti

More information

VMware Workstation. VMwareWorkstation ESX ($) (vmotion, DRS, HA, Storage vmotion) vcenter Server ($) Server. Guest OS

VMware Workstation. VMwareWorkstation ESX ($) (vmotion, DRS, HA, Storage vmotion) vcenter Server ($) Server. Guest OS VMware Workstation ESX ($) vcenter Server ($) (license manager) Server hardware (vmotion, DRS, HA, Storage vmotion) ESXi (freeware) (ESXi freeware is managed by the Virtual Infrastructure (or vsphere)

More information

Uvod u programiranje - vežbe. Kontrola toka izvršavanja programa

Uvod u programiranje - vežbe. Kontrola toka izvršavanja programa Uvod u programiranje - vežbe Kontrola toka izvršavanja programa Naredbe za kontrolu toka if, if-else, switch uslovni operator (?:) for, while, do-while break, continue, return if if (uslov) naredba; if

More information

GUI - događaji (Events) i izuzeci. Bojan Tomić

GUI - događaji (Events) i izuzeci. Bojan Tomić GUI - događaji (Events) i izuzeci Bojan Tomić Događaji GUI reaguje na događaje (events) Događaj je neka akcija koju korisnik programa ili neko drugi izvrši korišćenjem perifernih uređaja (uglavnom miša

More information

KINEMATIČKA ANALIZA MEHANIZAMA INDUSTRIJSKIH ROBOTA KORIŠTENJEM PROGRAMSKOG JEZIKA MATLAB

KINEMATIČKA ANALIZA MEHANIZAMA INDUSTRIJSKIH ROBOTA KORIŠTENJEM PROGRAMSKOG JEZIKA MATLAB 10 th International Scientific Conference on Production Engineering DEVELOPMENT AND MODERNIZATION OF PRODUCTION KINEMATIČKA ANALIZA MEHANIZAMA INDUSTRIJSKIH ROBOTA KORIŠTENJEM PROGRAMSKOG JEZIKA MATLAB

More information

Internet programiranje

Internet programiranje Internet programiranje Čas 3 - HTML forme, frejmovi i layout Dražen Drašković, Sanja Delčev, Jelica Cincović HTML forme, frejmovi i layout FORME Uvod u forme Forme nam služe za prenos podataka sa klijentske

More information

Oracle Proprietary Joins Za upite nad više od jedne tabele korišćenjem Oracle proprietary sintakse koristiti join uslov u WHERE izrazu:

Oracle Proprietary Joins Za upite nad više od jedne tabele korišćenjem Oracle proprietary sintakse koristiti join uslov u WHERE izrazu: Database Programming with SQL kurs 2017 database design and programming with sql students slajdovi 7-1 Oracle Equijoin and Cartesian Product Prethodna sekcija se bavila upitima preko više od jedne tabele

More information

Informatika Uvod u C#,.NET Framework i Visual Studio... nastavak...

Informatika Uvod u C#,.NET Framework i Visual Studio... nastavak... Informatika Uvod u C#,.NET Framework i Visual Studio... nastavak... Prof. dr. sc. Tomislav Pribanić Izv. prof. dr. sc. Vedran Podobnik Doc. dr. sc. Marija Seder Sveučilište u Zagrebu Fakultet elektrotehnike

More information

Besplatni softverski alati

Besplatni softverski alati Sadržaj Besplatni softverski alati GIMP 1 1. 2. 3. 4. 5. Zoltan Geller zoltang@ff.uns.ac.rs 2016 6. Potrebni alati - Kompresovanje fajlova i foldera - Potrebni alati - Dekompresovanje fajlova i foldera

More information

NIZOVI.

NIZOVI. NIZOVI LINKOVI ZA KONZOLNI C# OSNOVNO http://www.mycity.rs/net/programiranje-u-c-za-osnovce-i-srednjoskolce.html http://milan.milanovic.org/skola/csharp-00.htm Niz deklarišemo navođenjem tipa elemenata

More information

PROGRAMIRANJE. Amir Hajdar

PROGRAMIRANJE. Amir Hajdar PROGRAMIRANJE Amir Hajdar Teme 2 Klase i objekti u Javi Primjer kroz klasu Krug Atributi i metode Inicijalizacija objekata (konstruktori) Polymorphism Statičke varijable i metode This Klase i objekti u

More information

Dežurni nastavnik: Kolokvijum traje 1.5 sat, prvih sat vremena nije dozvoljeno napuštanje kolokvijuma. Upotreba literature nije dozvoljena.

Dežurni nastavnik: Kolokvijum traje 1.5 sat, prvih sat vremena nije dozvoljeno napuštanje kolokvijuma. Upotreba literature nije dozvoljena. Dežurni nastavnik: Elektrotehnički fakultet u Beogradu Katedra za računarsku tehniku i informatiku Predmet: Testiranje Softvera (SI3TS) Nastavnik: doc. dr Dragan Bojić Asistent: dipl. ing. Dražen Drašković

More information

... ; ako je a n parno. ; ako je a n neparno

... ; ako je a n parno. ; ako je a n neparno Zadaci vezani za ciklus sa preduslovom (WHILE) Zad. Napisati program za izračunavanje n_tog stepena broja a. Zad2. Napisati program za izračunavanje sume S kvadrata parnih i kubova neparnih prirodnih brojeva

More information

Marko Milošević.

Marko Milošević. Marko Milošević marko643@gmail.com marko.milosevic@pmf.edu.rs ESPB 8 Bodovanje Domaći Kolokvijumi 2x10 2x20 Završni ispit 40 Konsultacije sreda 13-14 četvrtak 16-17 Šabloni dizajna (Design Patterns) Metrika

More information

Vidljivost TipPovratneVrednosti ImeFunkcije (NizParametara) { TeloFunkcije }

Vidljivost TipPovratneVrednosti ImeFunkcije (NizParametara) { TeloFunkcije } 1. FUNKCIJE I STRUKTRUE PROGRAMA Složeni problemi lakše se rašavaju ako se podele na manje celine koje mogu nezavisno da se rešavaju. Rešenje celokupnog složenog problema dobija se kombinovanjem rešenja

More information

Veliki računski zadaci mogu se razbiti u manje delove i time se omogućava ljudima da iskoriste ono što su neki drugi već uradili, umesto da počinju

Veliki računski zadaci mogu se razbiti u manje delove i time se omogućava ljudima da iskoriste ono što su neki drugi već uradili, umesto da počinju Staša Vujičić Čas 9 Veliki računski zadaci mogu se razbiti u manje delove i time se omogućava ljudima da iskoriste ono što su neki drugi već uradili, umesto da počinju sve od početka. Odgovarajuće funkcije

More information

Modbus TCP i dva PLC S7 1200

Modbus TCP i dva PLC S7 1200 Industrijski sistemi i protokoli Modbus TCP i dva PLC S7 1200 1 Modbus TCP i dva PLC S7 1200 Laboratorijski deo - obavezno: Detaljno proučiti i testirati već napravljeni projekat za PLC-ove, koji se nalazi

More information

VDSL modem Zyxel VMG1312-B10A/B30A

VDSL modem Zyxel VMG1312-B10A/B30A VDSL modem Zyxel VMG1312-B10A/B30A Default Login Details LAN IP Address http://192.168.2.1 User Name user Password 1234 Funkcionalnost lampica Power lampica treperi kratko vrijeme nakon uključivanja modema,

More information

Korisničko uputstvo za instalaciju i podešavanje securew2 programa za pristup eduroam servisu

Korisničko uputstvo za instalaciju i podešavanje securew2 programa za pristup eduroam servisu Korisničko uputstvo za instalaciju i podešavanje securew2 programa za pristup eduroam servisu Termin supplicant se koristi u IEEE 802.1X standardu. U širem značenju, ovaj termin predstavlja entitet (korisnik

More information

Ime ograničenja je clients_client_num_pk. Ono inforsira biznis pravila po kojem client_number je PK u clients tabeli Naming Constraints

Ime ograničenja je clients_client_num_pk. Ono inforsira biznis pravila po kojem client_number je PK u clients tabeli Naming Constraints Database Programming with SQL kurs 2017 database design and programming with sql students slajdovi 14-1 Intro to Constraints; NOT NULL and UNIQUE Constraints Ograničenja (constraints) se koriste za sprečavanje

More information

Ciljevi. Poslije kompletiranja ove lekcije trebalo bi se biti u mogućnosti: Opisati ograničenja Generisati i održavati ograničenja u bazi

Ciljevi. Poslije kompletiranja ove lekcije trebalo bi se biti u mogućnosti: Opisati ograničenja Generisati i održavati ograničenja u bazi Ograničenja Ciljevi Poslije kompletiranja ove lekcije trebalo bi se biti u mogućnosti: Opisati ograničenja Generisati i održavati ograničenja u bazi Generisati i održavati ograničenja u bazi podataka Uvod

More information

Binarne hrpe. Strukture podataka i algoritmi VJEŽBE 26. siječnja / 133

Binarne hrpe. Strukture podataka i algoritmi VJEŽBE 26. siječnja / 133 Binarne hrpe Potpuno binarno stablo binarno stablo u kojem svaki čvor koji nije list ima točno 2 nasljednika. Binarna hrpa potpuno binarno stablo u kojem svaki čvor koji nije list ima veću ključnu vrijednost

More information

Uputa: Zabranjeno je koristiti bilo kakva pomagala. Rje²enja pi²ete desno od zadatka. Predajete samo ovaj list.

Uputa: Zabranjeno je koristiti bilo kakva pomagala. Rje²enja pi²ete desno od zadatka. Predajete samo ovaj list. Ime i prezime: Asistent: Predava : Programiranje (C) 1. kolokvij 14. 4. 2003. 1. 2. 3. 4. 5. 6. 7. Uputa: Zabranjeno je koristiti bilo kakva pomagala. Rje²enja pi²ete desno od zadatka. Predajete samo ovaj

More information

Ovde će se raditi na funkcijama konverzija: konverzija tipa datuma u znak tip i obrnuto, konverzija broja u karakter tip i obrnuto

Ovde će se raditi na funkcijama konverzija: konverzija tipa datuma u znak tip i obrnuto, konverzija broja u karakter tip i obrnuto Database Programming with SQL kurs 2017 database design and programming with sql students slajdovi 5-1 Conversion Functions U db formatiranje i promene izgleda se izvode pomoću funkcija konverzija Ove

More information

PROCENA UGROŽENOSTI METODOM INDEKSA POŽARA I EKSPLOZIJE (F&EI) DOW INDEKS

PROCENA UGROŽENOSTI METODOM INDEKSA POŽARA I EKSPLOZIJE (F&EI) DOW INDEKS PROCENA UGROŽENOSTI METODOM INDEKSA POŽARA I EKSPLOZIJE (F&EI) DOW INDEKS Risk Assessment with Fire and Explosion Index (F&EI) Method - DOW Index Miroslav Gojić d.o.o. Termoenergo inženjering, Beograd

More information

Geant2 - JRA1. Upravljanje mjerenjem i performansama mreža (perfsonar, baza multi-domain nadzorne usluge) Danijel Matek (Srce)

Geant2 - JRA1. Upravljanje mjerenjem i performansama mreža (perfsonar, baza multi-domain nadzorne usluge) Danijel Matek (Srce) Geant2 - JRA1 Upravljanje mjerenjem i performansama mreža (perfsonar, baza multi-domain nadzorne usluge) Danijel Matek (Srce) 21.11.2007, CUC2007, Rijeka Što je to JRA1? Glavni zadatak JRA1 (Performance

More information

Univerzitet u Nišu Građevinsko-arhitektonski fakultet. 4. Ciklična algoritamska struktura 5. Jednodimenzionalno polje.

Univerzitet u Nišu Građevinsko-arhitektonski fakultet. 4. Ciklična algoritamska struktura 5. Jednodimenzionalno polje. Univerzitet u Nišu Građevinsko-arhitektonski fakultet Informatika 2 4. Ciklična algoritamska struktura 5. Jednodimenzionalno polje Milica Ćirić Ciklična algoritamska struktura Ciklična struktura (petlja)

More information

HTML, CSS i JavaScript

HTML, CSS i JavaScript Tehnologije za Web HTML, CSS i JavaScript HTML, CSS i JavaScript su jezici koji se koriste pri pravljenju interaktivnih web sajtova. Ovi jezici dopunjuju jedan drugog, i zbog toga se često koriste zajedno.

More information

TEHNIKA I INFORMATIKA U OBRAZOVANJU

TEHNIKA I INFORMATIKA U OBRAZOVANJU TEHNIKA I INFORMATIKA U OBRAZOVANJU Konferencija 32000 Čačak 9-11. Maja 2008. UDK: 004 : 371 Stručni rad VEZA ZAVISNOSTI ACCESS Momčilo Vujičić 1, Munir Šabanović 2 Rezime: U radu je opisana veza zavisnosti

More information

x y = z Zadaci - procedure

x y = z Zadaci - procedure Zadaci - procedure Zad1. Data je kvadratna meta u koordinatnom sistemu sa koordinatama A(0,0), B(1,0), C(1,1), D(0,1). Sastaviti proceduru Gadjanje koja će odrediti broj poena na sledeći način: ako je

More information

Variable Neighborhood Descent - VND (Metoda promenljivog spusta)

Variable Neighborhood Descent - VND (Metoda promenljivog spusta) Variable Neighborhood Descent - VND (Metoda promenljivog spusta) Izabrati skup okolina N k, k = 1,..., k max koje će se koristiti za pretragu; Na slučajan način izabrati početno rešenje x X i postaviti

More information

Programski jezik JAVA PREDAVANJE

Programski jezik JAVA PREDAVANJE Programski jezik JAVA PREDAVANJE 8 2018 www.etf.ac.me Polja za potvrdu i Radio tasteri Polja za potvrdu i radio tasteri nijesu uzajamno isključivi, što znači da ako imate pet polja za potvrdu u jednom

More information

Desktop IKONE START MENI. TASK BAR traka zadataka RADNA POVRŠINA

Desktop IKONE START MENI. TASK BAR traka zadataka RADNA POVRŠINA Windows XP Windows XP Operativni Sistem koji podržava multi-tasking Kompatibilan sa prethodnim verzijama Windows-a Koristi grafičko okruženje Jednostavan za instalaciju i upotrebu Desktop IKONE START MENI

More information

Kodiranje GUI aplikacija u Visual C#

Kodiranje GUI aplikacija u Visual C# Kodiranje GUI aplikacija u Visual C# UVOD Uvod Kodiranje grafičke aplikacije u Visual C#: Ova lekcija se bavi dogadjajima, programiranjem dogadjaja. Daćemo jedan primer event-driven-programming-a, u vidu

More information

Proširena stvarnost - Augmented Reality (AR) Dr Nenad Gligorić

Proširena stvarnost - Augmented Reality (AR) Dr Nenad Gligorić Proširena stvarnost - Augmented Reality (AR) Dr Nenad Gligorić Šta je Augmented Reality? Termin Augmented Reality prvi put se pominje 1990 od strane istraživača u Boingu Augmented Rality su nazivali aplikaciju

More information

Editovanje registra u Windowsu

Editovanje registra u Windowsu Editovanje registra u Windowsu Pre bilo kakvog menjanja registra,pravljenja novih kljuceva u njemu,menjanja vrednosti u raznoraznim kljucevima preporuka je da se uradi beckup registra.beckup registra mozete

More information

Case Study Hrvatska pošta: Korisničko iskustvo iz snova. Tomislav Turk Samostalni sistem inženjer, Combis d.o.o. Zagreb,

Case Study Hrvatska pošta: Korisničko iskustvo iz snova. Tomislav Turk Samostalni sistem inženjer, Combis d.o.o. Zagreb, Case Study Hrvatska pošta: Korisničko iskustvo iz snova Tomislav Turk Samostalni sistem inženjer, Combis d.o.o. Zagreb, 27.12.2018. Sadržaj Hrvatska pošta prije projekta Izazovi projekta Tehnologije korištene

More information

Prirodno-matematički fakultet u Nišu Departman za fiziku. dr Dejan S. Aleksić Programiranje u fizici

Prirodno-matematički fakultet u Nišu Departman za fiziku. dr Dejan S. Aleksić Programiranje u fizici Programiranje u fizici Prirodno-matematički fakultet u Nišu Departman za fiziku dr Dejan S. Aleksić Programiranje u fizici 7-8 Definicija, inicijalizacija promenljivih 2/21 u C-u Program napisan u programskog

More information

var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); begin ListBox1.Items.LoadFromFile('d:\brojevi.

var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); begin ListBox1.Items.LoadFromFile('d:\brojevi. 1 PANEL komponenta kontejnerska, slična GropBox. Roditeljska komponenta za komp. postavljene na nju. Zajedno se pomeraju. Caption svojstvo za naziv; Alighment pomera svojstvo Caption levo i desno; Align

More information

Programski jezici. leto

Programski jezici. leto Programski jezici leto 2010-11 Grafički programi Koriste grafičke mogućnosti: boje, fontove, geometrijske oblike, slike,... Komuniciraju sa korisnikom preko grafičkog korisničkog interfejsa koji se sastoji

More information

IV SQL. Slika 1. SQL*Plus ikona. Slika 2. Dijalog provere identifikacije korisnika. Slika 3. Prozor SQL*Plus programa

IV SQL. Slika 1. SQL*Plus ikona. Slika 2. Dijalog provere identifikacije korisnika. Slika 3. Prozor SQL*Plus programa IV SQL SQL (Structured Query Language) je jezik koji je Američki Institut za Nacionalne Standarde (ANSI - American National Standards Institute) prihvatio kao standardni jezik za relacione baze podataka.

More information

Uvod u relacione baze podataka

Uvod u relacione baze podataka Uvod u relacione baze podataka Ana Spasić 5. čas 1 Podupiti, operatori exists i in 1. Izdvojiti imena i prezimena studenata koji su položili predmet čiji je identifikator 2001. Rešenje korišćenjem spajanja

More information

KONTROLE IZBORA_- Kontrola ListBox

KONTROLE IZBORA_- Kontrola ListBox KONTROLE IZBORA_- Kontrola ListBox ili okvir sa listom prikazuje listu elemenat od kojih može da bude izabran jedan ili više elemenata. Elementi liste mogu se dodavati korišćenjem svojstva Items (Properties)

More information

PITANJA ZA II KOLOKVIJUM KLASE I OBJEKTI

PITANJA ZA II KOLOKVIJUM KLASE I OBJEKTI PITANJA ZA II KOLOKVIJUM KLASE I OBJEKTI 1. Enkapsulacija je podataka. skrivanje apstrakcija nasledivanje 2. Unutar deklaracije klase navode se: definicije funkcija clanica prototipovi (deklaracije) funkcija

More information

Selenium. Selenium Integrated Development Environment (IDE) Selenium Remote Control (RC) WebDriver Selenium Grid

Selenium. Selenium Integrated Development Environment (IDE) Selenium Remote Control (RC) WebDriver Selenium Grid Testiranje softvera Selenium Selenium besplatni, open source alat za automatsko testiranje web aplikacija, sa podrškom za različite web čitače i platforme http://www.seleniumhq.org Selenium Skripte koje

More information

QRadar & StealthINTERCEPT

QRadar & StealthINTERCEPT QRadar & StealthINTERCEPT Windows Security Intelligence Nađa Halebić security Sadržaj QRadar QRadar arhitektura StealthINTERCEPT Scenariji zaštite 8.6.2015 security 2 QRadar SIEM nove generacije Prije

More information

AROS. 8čas Softver i OS za prenosive uređaje

AROS. 8čas Softver i OS za prenosive uređaje AROS 8čas Softver i OS za prenosive uređaje 1 Zbog velike popularnosti pametnih telefona i tablet uređaja očekuje se da će vrednost tržišta mobilnih aplikacija u narednim godinama iznositi preko 50 milijardi

More information

For. 1) program ispis; {ispisuje brojeve od 1 do 5 jedan ispod drugog} uses wincrt; var s,i:integer; begin for i:=1 to 5do writeln(i); end.

For. 1) program ispis; {ispisuje brojeve od 1 do 5 jedan ispod drugog} uses wincrt; var s,i:integer; begin for i:=1 to 5do writeln(i); end. For 1) program ispis; {ispisuje brojeve od 1 do 5 jedan ispod drugog} for i:=1 to 5do writeln(i); 2) program ispis; {ispisuje brojeve od 5 do 1 jedan ispod drugog} for i:=5 downto 1 do writeln(i); 3) program

More information

Cascading Style Sheets (CSS)

Cascading Style Sheets (CSS) Cascading Style Sheets (CSS) 2 Cascading Style Sheets Cascading Style Sheets CSS omogućava efikasno formatiranje HTML stranica u okviru neke aplikacije. Pogodnosti koje pruža CSS su: fleksibilno formatiranje

More information

dr. sc.. Josip Musić Originalne slideove izradio:

dr. sc.. Josip Musić Originalne slideove izradio: Uvod u programiranje Programiranje 1 (450) Poglavlje 1 Uvod u računala, Microsoft.NET i VB.NET (dio 2 od 2): Pregled.NET platforme dr. sc.. Josip Musić jmusic@fesb.hr 1 Originalne slideove izradio: Teo

More information

APLIKATIVNI SOFTVER Front End: HTML, CSS, JavaScript

APLIKATIVNI SOFTVER Front End: HTML, CSS, JavaScript APLIKATIVNI SOFTVER Front End: HTML, CSS, JavaScript dr Miloš Dobrojević školska 2013/14. godina Sadržaj HTML Struktura stranice Formatiranje teksta Linkovi Često korišćeni tagovi Grupisanje i rasporeďivanje

More information

Hipertekst - nastavak. 2. vježbe iz WEB programiranja. Dodavanje slika. Ćelija, redak i ćelija zaglavlja. Struktura tablice 8.3.

Hipertekst - nastavak. 2. vježbe iz WEB programiranja. Dodavanje slika. Ćelija, redak i ćelija zaglavlja. Struktura tablice 8.3. 2. vježbe iz WEB programiranja četvrtak, 8. ožujka 2012. XHTML i CSS 2. dio Hipertekst - nastavak ZADATAK: Kreirajte HTML dokument web_prog.html na kome ćete koristiti link prema web stranici kolegija

More information

UNIX & UNIX-u slični OS Uvod u Linux

UNIX & UNIX-u slični OS Uvod u Linux UNIX & UNIX-u slični OS Uvod u Linux Željko Jeričević, Ph.D. www.riteh.hr/~zeljkoj/zeljko_jericevic.html zeljkoj@medri.hr UNIX Što je UNIX i zašto je važan Povijesni pregled Osnove Linux-a 2 November 2009

More information

PHP? PHP (recursive acronym "PHP: Hypertext Preprocessor") Open Source general-purpose scripting language Web development

PHP? PHP (recursive acronym PHP: Hypertext Preprocessor) Open Source general-purpose scripting language Web development Intro to PHP PHP? PHP (recursive acronym "PHP: Hypertext Preprocessor") Open Source general-purpose scripting language Web development Ugrađen u HTML. HTML script sa kodom koji nešto radi Izvršavanje na

More information

Programiranje III razred

Programiranje III razred Tehnička škola 9. maj Bačka Palanka Programiranje III razred Konverzija tipova Konverzija tipova Prilikom komunikacije aplikacije sa korisnikom, korisnik najčešće unosi ulazne podatke koristeći tastaturu.

More information

Operativni Sistem koji podržava multitasking

Operativni Sistem koji podržava multitasking Windows Windows Operativni Sistem koji podržava multitasking Kompatibilan sa prethodnim verzijama Windows-a Koristi grafičko okruženje Jednostavan za instalaciju i upotrebu IKONE Desktop START MENI TASK

More information

PKI Applet Desktop Application Uputa za instalaciju programske potpore

PKI Applet Desktop Application Uputa za instalaciju programske potpore 1 SADRŽAJ 1. UVOD 3 2. PODRŽANI OPERATIVNI SUSTAVI 3 3. PROGRAMSKI PREDUVJETI ZA INSTALACIJU PROGRAMSKE POTPORE 3 4. INSTALACIJA PROGRAMSKE POTPORE 3 5. DEINSTALACIJA PROGRAMSKE POTPORE 6 2 1. Uvod PKI

More information

PITANJA ZA II KOLOKVIJUM NASLJEĐIVANJE, VIRTUELNE FUNKCIJE I POLIMORFIZAM

PITANJA ZA II KOLOKVIJUM NASLJEĐIVANJE, VIRTUELNE FUNKCIJE I POLIMORFIZAM PITANJA ZA II KOLOKVIJUM NASLJEĐIVANJE, VIRTUELNE FUNKCIJE I 1. Definicija svake klase sadrzi kljucnu rec iza koje se navodi ime klase: class public extends 2. Kada je funkcija clanica definisana izvan

More information

1/42 SQL DDL. CREATE ALTER DROP Schema Table Tablespace Index View Domain Constraint... DECLARE TABLE (DB2)

1/42 SQL DDL. CREATE ALTER DROP Schema Table Tablespace Index View Domain Constraint... DECLARE TABLE (DB2) 1/42 SQL DDL CREATE ALTER DROP Schema Table Tablespace Index View Domain Constraint... DECLARE TABLE (DB2) 2/42 SQL DDL: CREATE SCHEMA CREATE SCHEMA ime-sheme [ AUTHORIZATION ime-vlasnika-sheme] [ CREATE

More information

Informacioni sistemi i baze podataka

Informacioni sistemi i baze podataka Fakultet tehničkih nauka, Novi Sad Predmet: Informacioni sistemi i baze podataka Dr Slavica Kordić Milanka Bjelica Vojislav Đukić Rad u učionici (1/2) Baze podataka (db2015): Studentska korisnička šema

More information