{"id":36689,"date":"2019-10-31T22:13:11","date_gmt":"2019-10-31T19:13:11","guid":{"rendered":"https:\/\/prohoster.info\/blog\/krasota-v-glazah-smotryashhego\/"},"modified":"2019-10-31T22:13:11","modified_gmt":"2019-10-31T19:13:11","slug":"krasota-v-glazah-smotryashhego","status":"publish","type":"post","link":"https:\/\/prohoster.info\/hr\/blog\/news\/krasota-v-glazah-smotryashhego","title":{"rendered":"Ljepota je u o\u010dima promatra\u010da","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Ve\u0107 dugo se bavim razvojem web aplikacija. Zaista dugo. Svoja prva web aplikacija u okru\u017eenju <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/IBM_Notes\">Lotus Domino<\/a><\/noindex> napravio sam u vreme kada re\u010d <em>\u00abgoogle\u00bb<\/em> jo\u0161 nije bila glagol, a za pretra\u017eivanje informacija na internetu ljudi su koristili Yahoo! i Rambler. Ja sam koristio <noindex><a rel=\"nofollow\" href=\"https:\/\/en.wikipedia.org\/wiki\/Infoseek\">Infoseek<\/a><\/noindex>\u2018om \u2014 imali su su\u017eeno pretra\u017eivanje i nisu imali tako pretrpan interfejs kao Yahoo!<\/p>\n<p><\/p>\n<p>Razvoj aplikacija, bilo kakvih aplikacija, ne samo za web \u2014 to je kreativni rad. Malo tko \u0107e se s tim izjavom posva\u0111ati. A ljepota u kreativnosti, ba\u0161 kao praksa u znanstvenom poznavanju \u2014 kriterij istine. No, dok je znanstvena praksa objektivna i temelji se na mjerenjima, ljepota je subjektivna stvar, koja ovisi o onome tko gleda. Tako da sam se zapitao, \u0161to za mene osobno \u010dini lijepu web-aplikaciju? <\/p>\n<p>\n<img decoding=\"async\" alt=\"Ljepota je u o\u010dima promatra\u010da\" src=\"\/wp-content\/uploads\/2019\/08\/36411160412b286dd6191aa5baa6ee83.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><em>(na KDPV moj pogled nije moj, ve\u0107 \u017eenski, ali, IMHO, \u017eenski pogled na KDPV je prikladniji od mu\u0161kog, jer je to \u2014 <noindex><a rel=\"nofollow\" href=\"https:\/\/2ch.hk\/s\/src\/2616513\/15633579017010.png\">KDPV<\/a><\/noindex>!)<\/em><\/p>\n<p><\/p>\n<p>Ispod je mojih vlastitih kriterijuma onoga \u0161to trenutno mo\u017ee da se smatra lepom web aplikacijom. Veoma subjektivna izjava, uslovljena mojim li\u010dnim iskustvom. Mogu\u0107e je da \u0107e nekome moji kriterijumi lepote delovati kao kriterijumi ru\u017eno\u0107e. Ne iznena\u0111ujte se, jednostavno imate druga\u010dije iskustvo.<\/p>\n<p><noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<p>I budu\u0107i da ste krenuli ispod, molim vas budite oprezni u komentarima. Naime, ako mo\u017eete prestati da \u010ditate \u010dlanak \u010dim vam se ono \u0161to je izlo\u017eeno u\u010dini nekrasnim ili \u010dak ru\u017enim, ja, kao autor, moram \u010ditati sve komentare.<\/p>\n<p><\/p>\n<h1 id=\"sreda-obitaniya\">Okru\u017eenje<\/h1>\n<p><\/p>\n<h3 id=\"protokoly\">Protokoli<\/h3>\n<p><\/p>\n<p>\u010cak ne znam ni da li vredi posebno istaknuti ovaj kriterijum. Web aplikacije \u017eive na mre\u017ei i moraju se pridr\u017eavati Zakona mre\u017ee (protokola). Glavni protokoli na mre\u017ei su <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/Transmission_Control_Protocol\">TCP<\/a><\/noindex> i <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/IP\">IP<\/a><\/noindex>. Na njima se osniva mnogo drugih protokola, ali za web aplikacije smatram da je najva\u017eniji <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/HTTP\">HTTP<\/a><\/noindex> (odnosno, njegovo pro\u0161irenje <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/HTTPS\">HTTPS<\/a><\/noindex> na bazi <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/TLS\">TLS<\/a><\/noindex>). To jest, lijepa web-aplikacija dostupna je putem HTTPS\/TLS (kao opcija \u2014 putem HTTP-a), dok ostali protokoli (LDAP, RPC, IMAP4, POP3, SMTP, FTP, NNTP, \u2026) \u010dine je manje lijepom s svakim dodatno podr\u017eanim protokolom. Sama aplikacija mo\u017ee koristiti vanjske resurse putem tih dodatnih protokola. <\/p>\n<p><\/p>\n<p>\u0160to se ti\u010de <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/WebSocket\">WebSocket<\/a><\/noindex>, nisam imao dovoljno iskustva sa kori\u0161\u0107enjem ovog protokola s web aplikacijama. Izgleda lepo i perspektivno, ali koliko je to stabilno i prakti\u010dno \u2014 ne mogu da ka\u017eem. <\/p>\n<p><\/p>\n<h3 id=\"brauzery\">Pregleda\u010di<\/h3>\n<p><\/p>\n<p>Web aplikacija stoji na poslu\u017eiteljskoj strani s jednom nogom, dok je druga noga na klijentskoj strani. Klijentska strana je preglednik. Moderni preglednik pru\u017ea <noindex><a rel=\"nofollow\" href=\"https:\/\/developer.mozilla.org\/en-US\/docs\/Web\/API\">mnogo toga<\/a><\/noindex>, \u0161to moderna web aplikacija mo\u017ee i treba iskoristiti u svoje svrhe. Prekrasna web aplikacija koristi moderne mogu\u0107nosti preglednika i ne mora raditi u preglednicima koji ne podr\u017eavaju moderne funkcionalnosti. Razumijem da su <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%9F%D0%BE%D0%BB%D0%B8%D1%84%D0%B8%D0%BB\">polifili<\/a><\/noindex> \u2014 to prisilna mjera, ali je to neuredno. Na kraju krajeva, ne samo da se programeri moraju dr\u017eati korak s modernim tehnologijama, to se tako\u0111er odnosi na korisnike i biznis.<\/p>\n<p><\/p>\n<h3 id=\"yap\">Jezik<\/h3>\n<p><\/p>\n<p>Sa programskim jezicima koji se koriste za izradu web aplikacija, situacija je vrlo zbunjuju\u0107a. Postoji mno\u0161tvo tehnologija za klijentski dio web aplikacija koje olak\u0161avaju programerima stvaranje triade HTML\/CSS\/JS (to je ono \u0161to svi moderni preglednici razumiju). No, u svoje vrijeme, blisko sam se susreo s <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/Google_Web_Toolkit\">GWT<\/a><\/noindex> i smatram lijepim kada programer mo\u017ee vidjeti izvorni kod u pregledniku, a ne rezultat kompilacije ili transpikacije. Stoga je kori\u0161tenje <noindex><a rel=\"nofollow\" href=\"https:\/\/webpack.js.org\/\">webpack<\/a><\/noindex>\u2018a i njemu sli\u010dnih proizvoda za generiranje klijentskog koda, IMHO, nije lijepo. \u0160to vi\u0161e izvr\u0161ni kod u pregledniku nalikuje izvornom kodu koji je stvorio programer, to je bolje. Ne vjerujete? Poku\u0161ajte debagirati kod stvoren GWT-om u produkciji.<\/p>\n<p><\/p>\n<p>Na serverskoj strani ima vi\u0161e slobode (Java, PHP, perl, python, C#, Ruby, \u2026), ali mislim da je lijepo kada se na serverskoj strani i u pregledniku koristi jedan jezik programiranja \u2014 JavaScript. U svakom slu\u010daju, <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%93%D0%B8%D0%BF%D0%BE%D1%82%D0%B5%D0%B7%D0%B0_%D0%BB%D0%B8%D0%BD%D0%B3%D0%B2%D0%B8%D1%81%D1%82%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%BE%D0%B9_%D0%BE%D1%82%D0%BD%D0%BE%D1%81%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D1%81%D1%82%D0%B8\">jezik oblikuje misli<\/a><\/noindex>, a timovi istomi\u0161ljenika su produktivniji.<\/p>\n<p><\/p>\n<h1 id=\"chelovechnost\">Humanost<\/h1>\n<p><\/p>\n<p>Prekrasna web aplikacija mora biti korisna. Korisna, prije svega, za osobu kao krajnjeg korisnika. Zato ne mogu nazivati prekrasnom web aplikaciju <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%92%D0%B5%D0%B1-%D1%81%D0%BB%D1%83%D0%B6%D0%B1%D0%B0\">web servise<\/a><\/noindex>. Obi\u010dnoj osobi (ne web programeru) te\u0161ko je s tim. Web servisi su lijepi na svoj na\u010din,<\/p>\n<p><\/p>\n<p>Prekrasna web aplikacija treba imati intuitivno razumljiv su\u010delje. Mo\u017eemo raspravljati o <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%98%D0%BD%D1%82%D0%B5%D1%80%D1%84%D0%B5%D0%B9%D1%81_%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D1%82%D0%B5%D0%BB%D1%8F\">UI<\/a><\/noindex>\u2018e \u2014 to je prili\u010dno subjektivna stvar. No s <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%94%D0%B8%D0%B7%D0%B0%D0%B9%D0%BD_%D0%B2%D0%B7%D0%B0%D0%B8%D0%BC%D0%BE%D0%B4%D0%B5%D0%B9%D1%81%D1%82%D0%B2%D0%B8%D1%8F_%D1%81_%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D1%82%D0%B5%D0%BB%D0%B5%D0%BC\">UX<\/a><\/noindex> je sve jednostavnije; ako korisnik ne mo\u017ee koristiti aplikaciju bez zlatnog <noindex><a rel=\"nofollow\" href=\"http:\/\/lurkmore.to\/RTFM\">RTFM<\/a><\/noindex> \u2014 lo\u0161 UX, neuredna web aplikacija. Najljep\u0161e web aplikacije prema ovom kriteriju mogu se lako koristiti od strane djece koja jo\u0161 nisu nau\u010dila \u010ditati. <\/p>\n<p><\/p>\n<h1 id=\"obratnaya-masshtabiruemost\">Povratna Skalabilnost<\/h1>\n<p><\/p>\n<p>Nekad su se programi mogli prenositi na disketama, sada \u2014 na fle\u0161 disku ili odmah preuzimanjem s Interneta. Kopirati obi\u010dnu aplikaciju i pokrenuti je na drugom ra\u010dunalu \u2014 trivijalni je zadatak. Situacija s web-aplikacijama je malo posebna. Mre\u017ea predstavlja globalno okru\u017eenje gdje nije potrebno imati klonove istog web-aplikacije. U mre\u017ei je dovoljan jedan Facebook, Twitter, Instagram, Mail.ru ili Yandex. Mo\u017ee postojati razli\u010dite web-aplikacije unutar iste tematske ni\u0161e, ali s razli\u010ditim publikama (kao Facebook i Vkontakte, Mail.ru i Gmail, Google Maps i Azure Maps). Hardverski resursi potrebni za osiguravanje globalne dostupnosti takvih web-aplikacija su potrebni, recimo, <noindex><a rel=\"nofollow\" href=\"https:\/\/bigpicture.ru\/?p=404950\">netrivijalni<\/a><\/noindex>.<\/p>\n<p><\/p>\n<p>Nikada nisam radio s web-aplikacijama tog nivoa kao programer i ne mogu zamisliti kako su one strukturirane iznutra. Za osiguranje funkcionalnosti takvih web-aplikacija potrebni su timovi odgovaraju\u0107ih stru\u010dnjaka i odvojeni data centri. Odu\u0161evljava me sposobnost ljudi za suradnju u takvim razmjerima i stvaranje sli\u010dnih proizvoda, ali moj ideal ljepote je web-aplikacija koja se mo\u017ee pokrenuti na zasebnom laptopu.<\/p>\n<p><\/p>\n<p>Lijepa web-aplikacija skalira se ne samo prema gore i u \u0161irinu (za korisnike), ve\u0107 i prema dolje i unutar (za programere).<\/p>\n<p><\/p>\n<h1 id=\"zemnovodnost\">\u201eAmfibijalnost\u201c<\/h1>\n<p><\/p>\n<p>Za pristup modernim web-aplikacijama koriste se ure\u0111aji dvaju tipova:<\/p>\n<p><\/p>\n<ul>\n<li>ra\u010dunala (laptopi, desktop ra\u010dunala);<\/li>\n<li>mobilni ure\u0111aji (pametan telefoni i tableti);<\/li>\n<\/ul>\n<p><\/p>\n<p>Negdje na horizontu se nazire jo\u0161 \u201e<noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%98%D0%BD%D1%82%D0%B5%D1%80%D0%BD%D0%B5%D1%82_%D0%B2%D0%B5%D1%89%D0%B5%D0%B9\">internet stvari<\/a><\/noindex>\u201e, ali zasad je tako.<\/p>\n<p><\/p>\n<p>Ra\u010dunala se od mobilnih ure\u0111aja razlikuju toliko koliko se su kopneni organizmi razlikuju od vodenih. To su razli\u010dita okru\u017eenja i postavljaju razli\u010dite zahtjeve prema bi\u0107ima (programima) koja u njima obitavaju. Lijepe web-aplikacije nisu one koje su sli\u010dne <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%97%D0%B5%D0%BC%D0%BD%D0%BE%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B5\">amfibijama<\/a><\/noindex>, nego one koje u vodi - poput riba, na kopnu - poput \u017eivotinja, a u zraku (<noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%9F%D0%BE%D0%B8%D1%81%D0%BA%D0%BE%D0%B2%D0%B0%D1%8F_%D0%BE%D0%BF%D1%82%D0%B8%D0%BC%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D1%8F\">SEO<\/a><\/noindex>) - poput ptica.<\/p>\n<p><\/p>\n<p>Smatram neprivla\u010dnim \u201e<noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%90%D0%B4%D0%B0%D0%BF%D1%82%D0%B8%D0%B2%D0%BD%D1%8B%D0%B9_%D0%B2%D0%B5%D0%B1-%D0%B4%D0%B8%D0%B7%D0%B0%D0%B9%D0%BD\">amfibijalnost<\/a><\/noindex>\u201e, to je kao poku\u0161aj sjediti na dva (s SEO \u2014 tri) stolice. Bolje je kao Fiona iz \u0160reka \u2014 danju jedna, a no\u0107u druga. Da, skuplje. Ali bolje.<\/p>\n<p><\/p>\n<h1 id=\"cross-sharing\">Cross-sharing<\/h1>\n<p><\/p>\n<p>Ve\u0107 sam spomenuo u to\u010dki \u00abPovratna Skalabilnost\u00bb da globalnost Mre\u017ee omogu\u0107ava postojanje jedne web-aplikacije na Planeti. Stoga svaka web-aplikacija mora se barem ne\u010dim razlikovati od drugih kako bi osigurala svoje pre\u017eivljavanje. Ipak, moje vi\u0161egodi\u0161nje iskustvo s <noindex><a rel=\"nofollow\" href=\"https:\/\/magento.com\/\">Magento<\/a><\/noindex> (okvir za izgradnju e-commerce trgovina) govori da izme\u0111u pojedinih web aplikacija mo\u017ee biti vi\u0161e zajedni\u010dkog nego razlika. Lijepa web aplikacija ne samo da trebala bi biti modularna, ve\u0107 tako\u0111er trebala bi dijeliti svoje module s drugim web aplikacijama. Na neki na\u010din, ova ideja odra\u017eena je u <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%A1%D0%BF%D0%B5%D1%86%D0%B8%D1%84%D0%B8%D0%BA%D0%B0%D1%86%D0%B8%D1%8F_Java-%D0%BF%D0%BE%D1%80%D1%82%D0%BB%D0%B5%D1%82%D0%BE%D0%B2\">specifikacijama<\/a><\/noindex> JSR 168 i JSR 286 i takvim framework-ima kao \u0161to su <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/WordPress\">WordPress<\/a><\/noindex>, <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/Django\">Django<\/a><\/noindex> i istom Magento. \u0160to vi\u0161e modula web aplikacije koriste druge web aplikacije, to je ona po mom mi\u0161ljenju ljep\u0161a. Cross-sharing omogu\u0107ava izradu kvalitetnijih modula i, kao posljedicu, stabilnijih web aplikacija.<\/p>\n<p><\/p>\n<p>Pod modulom ne podrazumijevam biblioteke poput jQuery ili RequireJS \u2014 radije mislim na ve\u0107e entitete, poput pluginova u <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wordpress.org\/plugins\/\">WordPress<\/a><\/noindex> i <noindex><a rel=\"nofollow\" href=\"https:\/\/djangopackages.org\/categories\/apps\/\">Django<\/a><\/noindex>. No, za biblioteke tako\u0111er vrijedi teza da \u0161iroka rasprostranjenost biblioteke omogu\u0107ava da ona bude kvalitetnija i otpornija. <\/p>\n<p><\/p>\n<h1 id=\"garvardskaya-arhitektura\">Harvardska arhitektura<\/h1>\n<p><\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%93%D0%B0%D1%80%D0%B2%D0%B0%D1%80%D0%B4%D1%81%D0%BA%D0%B0%D1%8F_%D0%B0%D1%80%D1%85%D0%B8%D1%82%D0%B5%D0%BA%D1%82%D1%83%D1%80%D0%B0\">Harvardska arhitektura<\/a><\/noindex>, za razliku od trenutno dominantne bal <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%90%D1%80%D1%85%D0%B8%D1%82%D0%B5%D0%BA%D1%82%D1%83%D1%80%D0%B0_%D1%84%D0%BE%D0%BD_%D0%9D%D0%B5%D0%B9%D0%BC%D0%B0%D0%BD%D0%B0\">prinstonjske<\/a><\/noindex>, podrazumijeva razdvajanje koda i podataka. Arhitektura nije uspjela, ali sama ideja mi se osobno \u010dini lijepom. Posebno za web-aplikacije. Svaka statika (HTML\/CSS\/JS\/Slike\/\u2026) \u2014 to je kod. Treba ga i mo\u017ee se ke\u0161irati bilo na serverskoj strani, bilo na klijentskoj. A podaci su <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/REST\">REST<\/a><\/noindex>\/<noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/JSON\">JSON<\/a><\/noindex> (lijepo) ili <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/SOAP\">SOAP<\/a><\/noindex>\/<noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/XML\">XML<\/a><\/noindex> (malo manje lijepo). Ili WebSockets\/JSON (mo\u017eda najbolja opcija, ali nisam probao).<\/p>\n<p><\/p>\n<h1 id=\"lokalizaciya\">Lokalizacija<\/h1>\n<p><\/p>\n<p>Postoje dvije stvari koje me posebno mu\u010de pri razvoju web aplikacija \u2014 to su vi\u0161ejezi\u010dni su\u010delja i vremenske zone. Sam dolazim iz Latvije, gdje se koriste tri jezika: LV, RU, EN. Lijepa web aplikacija trebala bi omogu\u0107iti ne samo kori\u0161tenje vi\u0161e jezika u samoj aplikaciji, ve\u0107 i omogu\u0107iti pro\u0161irenje broja kori\u0161tenih jezika putem vanjskih resursa, poput <noindex><a rel=\"nofollow\" href=\"https:\/\/crowdin.com\/\">Crowdina<\/a><\/noindex>. To vrijedi i za module od kojih se sastavlja web aplikacija.<\/p>\n<p><\/p>\n<p>\u0160to se ti\u010de vremenskih zona, sve je jednostavno: sve \u0161to je na serveru, odlazi na server i dolazi sa servera \u2014 UTC, dok se sve \u0161to se prikazuje na klijentu prikazuje prema vremenskoj zoni iz korisni\u010dkog profila. To je lijepo.<\/p>\n<p><\/p>\n<h1 id=\"kuznicy-vmesto-zvezd-smerti\">Kova\u010dnice umjesto \u00abZvijezda Smrti\u00bb<\/h1>\n<p><\/p>\n<p>Davno je u svakom malo ve\u0107em gradu postojala vlastita kova\u010dnica. Mogu\u0107e i vi\u0161e njih. Neke bolje, neke lo\u0161ije. Bilo je kova\u010da poznatih \u0161irom svijeta, a bilo je i onih kod kojih se i\u0161lo iz nu\u017ede. Ratovi, epidemije, prirodne katastrofe su se doga\u0111ale. Neki gradovi su nestajali zajedno s populacijom. No, kova\u010dki zanat je pre\u017eivio. Umjesto nestalih gradova, gradili su se novi i u njima su se ponovno otvarale kova\u010dnice. <\/p>\n<p><\/p>\n<p>A sada pogledajte na uslugu kao \u0161to je <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/DNS\">DNS<\/a><\/noindex>. Kada padnu korijenski serveri, <noindex><a rel=\"nofollow\" href=\"https:\/\/en.wikipedia.org\/wiki\/Distributed_denial-of-service_attacks_on_root_nameservers\">sve zemlje se tresu<\/a><\/noindex>.<\/p>\n<p><\/p>\n<p>Po mom mi\u0161ljenju, lijepa web-aplikacija ne mo\u017ee biti veli\u010dine Facebooka ili Mail.ru. To je bli\u017ee \u00ab<noindex><a rel=\"nofollow\" href=\"https:\/\/www.wikiwand.com\/ru\/%D0%97%D0%B2%D0%B5%D0%B7%D0%B4%D0%B0_%D0%A1%D0%BC%D0%B5%D1%80%D1%82%D0%B8\">Zvijezdi smrti<\/a><\/noindex>\u00bb i po resursima potrebnim za izgradnju, i po resursima potrebnim za odr\u017eavanje funkcionalnosti. Da, u slu\u010daju uni\u0161tenja Facebooka, \u010dovje\u010danstvo ne\u0107e nestati, njegove funkcije brzo \u0107e preuzeti druge aplikacije (iste <noindex><a rel=\"nofollow\" href=\"https:\/\/vk.com\/\">VK<\/a><\/noindex> na teritoriju RF i okolnih, Instagram, Twitter, \u2026). Ipak, zatvaranje zna\u010dajnog dijela populacije Planete na jednu aplikaciju \u2014 to je neugledno. Tim vi\u0161e, s postojanjem mnogo odr\u017eivijih alternativa (npr., <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/The_Pirate_Bay\">torrenti<\/a><\/noindex>).<\/p>\n<p><\/p>\n<h1 id=\"rezyume\">Sa\u017eetak<\/h1>\n<p><\/p>\n<p>Ako ste do\u0161li do kraja i osje\u0107ate zbunjenost \u2014 \u00ab<em>\u0161to je to bilo?<\/em>\u00bb, izra\u017eavam vam svoje iskreno suosje\u0107anje. Nisam vas natjerao da to \u010ditate. Samo sam poku\u0161ao izraziti svoje misli u rije\u010di kako bih prona\u0161ao one koji misle sli\u010dno. Mo\u017eda \u0107u mo\u0107i razgovarati s njima o nekim aspektima stvaranja lijepih web-aplikacija i saznati odgovore na svoja pitanja. A njih imam mnogo.<\/p>\n<p><\/p>\n<p>Hvala na \u010ditanju.<\/p>\n<p>Izvor: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/461749\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u042f \u0434\u0430\u0432\u043d\u043e \u0443\u0436\u0435 \u0437\u0430\u043d\u0438\u043c\u0430\u044e\u0441\u044c \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u043e\u0439 web-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439. \u041e\u0447\u0435\u043d\u044c \u0434\u0430\u0432\u043d\u043e. \u0421\u0432\u043e\u0438 \u043f\u0435\u0440\u0432\u044b\u0435 web-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0432 \u0441\u0440\u0435\u0434\u0435 Lotus Domino \u044f \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u043b \u0432 \u0442\u0435 \u0432\u0440\u0435\u043c\u0435\u043d\u0430, \u043a\u043e\u0433\u0434\u0430 \u0441\u043b\u043e\u0432\u043e &#171;google&#187; \u0435\u0449\u0451 \u043d\u0435 \u0431\u044b\u043b\u043e \u0433\u043b\u0430\u0433\u043e\u043b\u043e\u043c, \u0430 \u0434\u043b\u044f \u043f\u043e\u0438\u0441\u043a\u0430 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u0432 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0435 \u043b\u044e\u0434\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b\u0438 Yahoo! \u0438 Rambler. \u042f \u0436\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b\u0441\u044f Infoseek&#8216;\u043e\u043c \u2014 \u0443 \u043d\u0438\u0445 \u0431\u044b\u043b \u0441\u0443\u0436\u0430\u044e\u0449\u0438\u0439\u0441\u044f \u043f\u043e\u0438\u0441\u043a \u0438 \u043d\u0435 \u0442\u0430\u043a\u043e\u0439 \u0431\u0435\u0437\u043e\u0431\u0440\u0430\u0437\u043d\u043e \u043f\u0435\u0440\u0435\u0433\u0440\u0443\u0436\u0435\u043d\u043d\u044b\u0439 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441, \u043a\u0430\u043a [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":27480,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-36689","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.4 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u042f \u0434\u0430\u0432\u043d\u043e \u0443\u0436\u0435 \u0437\u0430\u043d\u0438\u043c\u0430\u044e\u0441\u044c \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u043e\u0439 web-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439. \u041e\u0447\u0435\u043d\u044c \u0434\u0430\u0432\u043d\u043e.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/hr\/blog\/news\/krasota-v-glazah-smotryashhego\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.4\" \/>\n\t\t<meta property=\"og:locale\" content=\"hr_HR\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u041a\u0440\u0430\u0441\u043e\u0442\u0430 \u0432 \u0433\u043b\u0430\u0437\u0430\u0445 \u0441\u043c\u043e\u0442\u0440\u044f\u0449\u0435\u0433\u043e | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u042f \u0434\u0430\u0432\u043d\u043e \u0443\u0436\u0435 \u0437\u0430\u043d\u0438\u043c\u0430\u044e\u0441\u044c \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u043e\u0439 web-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439. \u041e\u0447\u0435\u043d\u044c \u0434\u0430\u0432\u043d\u043e.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/hr\/blog\/news\/krasota-v-glazah-smotryashhego\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T19:13:11+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T19:13:11+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Lijepota je u o\u010dima promatra\u010da | ProHoster","description":"Dugo se ve\u0107 bavim razvojem web-aplikacija. Jako dugo.","canonical_url":"https:\/\/prohoster.info\/hr\/blog\/news\/krasota-v-glazah-smotryashhego","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"hr_HR","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u041a\u0440\u0430\u0441\u043e\u0442\u0430 \u0432 \u0433\u043b\u0430\u0437\u0430\u0445 \u0441\u043c\u043e\u0442\u0440\u044f\u0449\u0435\u0433\u043e | ProHoster","og:description":"\u042f \u0434\u0430\u0432\u043d\u043e \u0443\u0436\u0435 \u0437\u0430\u043d\u0438\u043c\u0430\u044e\u0441\u044c \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u043e\u0439 web-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439. \u041e\u0447\u0435\u043d\u044c \u0434\u0430\u0432\u043d\u043e.","og:url":"https:\/\/prohoster.info\/hr\/blog\/news\/krasota-v-glazah-smotryashhego","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T19:13:11+00:00","article:modified_time":"2019-10-31T19:13:11+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"36689","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-22 04:26:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 01:40:23","updated":"2026-01-22 04:26:19","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/posts\/36689","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/comments?post=36689"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/posts\/36689\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/media\/27480"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/media?parent=36689"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/categories?post=36689"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/tags?post=36689"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}