Roko Roić
Autor:
Roko Roić

Direktor softverskih isporuka

Poslovne aplikacije vs HTML

Navala Weba

Web aplikacije postoje od kad je Weba. Poslovne aplikacije postoje od kad je, erm, aplikacija. Prethode Webu za nekoliko desetljeća i, u trenutku kada je web nastao, već su živjele svoje zrele godine i imale upotrebu u svim segmentima poslovanja. Od banaka, preko države, vojske, automobilske industrije pa sve do malih poduzeća i organizacija. Konceptualno su se mijenjale, od izvršavanja na centralnim računalima u dijeljenim operativnim sustavima do izvedbi na osobnom računalu u obliku desktop aplikacije. Kuglica se zaustavila na Webu i danas najveći broj poslovnih aplikacija funkcionira (barem jednim svojim modulom) kao Web aplikacije.

Neke ključne prednosti Web aplikacija bi bile:

  • Dostupne sa svakog standardnog računala, bez potrebe za instalacijom, gdje god da se zateknete
  • Uvijek dostupna posljednja verzija
  • Centralno upravljanje i nadogradnje

Postoje i neke mane:

  • Relativna sporost u odnosu na desktop aplikacije
  • Nedovoljno bogato sučelje u odnosu na moderne desktop aplikacije
  • Nedostatak offline rada
  • Povremena nestabilnost uzrokovana nekompatibilnošću preglednika kojeg koristite

No, svijet se odlučio da su prednosti veće od mana i lavina se zakotrljala. Toliko se zakotrljala, da je HTML počeo prodirati i u desktop aplikacije. Glavni razlog ovoj agresivi HTML-a prema desktopu je dostupnost znanja, jer teško je pronaći programera koji ne zna barem osnove HTML-a. Ima jedna poslovica vezana uz temu: Kad imate čekić, sve vam izgleda kao čavao.

Imamo li problem?

Imamo nekoliko problema s Web aplikacijama. Prvi i najveći je HTML. HTML je implementacija jezika za hipertekstualno povezivanje i formatiranje teksta. Povijest mu seže u 1970-e godine, a hipertekstualnih jezika ima više nego nekoliko, HTML je samo jedan od njih. Unixaši, primjerice, znaju za man stranice, Unixov defaultni sustav pomoći. HTML je nastao na CERN-u, a danas s njim upravlja tijelo koje se zove W3C. W3C na relativno konzervativan način unaprjeđuje ovaj markup, trudeći se da ga održi standardnim prije svega. I vrlo malo se zamara potrebama poslovnih aplikacija. Na HTML možemo gledati kao na WWW verziju PDF-a. Odličan je za prijelom teksta, makar još uvijek ne kao PDF. Gdje je problem? HTML nema ključne elemente potrebne za izgradnju Web aplikacija, poput Menija, Gridova, Modalnih prozora i slično. A on je jedini standard koji na Webu imamo.

Da bi se popravila ova slika, nad HTML-om se stvorio vrlo živi ekosustav proizvođača frameworka za poslovne aplikacije. Imamo toliko MVC frameworka i Widget setova, da ih je nemoguće pobrojati na jednom mjestu. A uz njih i nebrojeno helpera, build sustava, modula za sigurnost aplikacija i ostalih kockica s kojima bi trebali graditi poslovne Web aplikacije. Nisam jedino siguran nastaju li brže nego li nestaju.

Našim korisnicima ovo nije prevelik problem. Na kraju krajeva, dobiju lijepu i upotrebljivu Web aplikaciju, zadržavajući sve prednosti weba koje smo gore naveli. Ali za produkciju Web aplikacija koja se događa u ICT kompanijama ovo jest veliki problem. Ne postoje standardni alati za frontend, a i trajnost znanja je sve kraća i kraća. Softverske kompanije oslanjaju se na ne-standardizirane elemente, za koje nemaju jamstvo o tome koliko će dugo biti podržavane u browseru. Na backendu su stvari puno uređenije, a alati konkretniji i stabilniji, bez obzira programirali vi u .Net-u, Javi ili Rubyju.

Uz nestandardnost, tu je i spor razvoj Web prezentacijskih elemenata. Usporedite Excel grid komponentu s grid komponentama u web sustavima. Usporedite mogućnosti dinamičke grafike na Desktopu i Webu. Primjera ima bezbroj, akceleracija razvoja GUI elemenata na webu nije dobra. Koliko god ih mi zvali Rich Internet aplikacijama, dug je još put do pravog bogatstva Desktopa.

Web 4.0, 5.0, 6.0?

Web 2.0, Web 3.0, Semantički web... Apple je rekao: too little too late. Kad se činilo da Web aplikacije mogu mirno spavati i imaju zajamčenu budućnost, iOS platforma ih je gotovo potpuno izbacila iz svog područja. Apple je forsirao Nativne aplikacije (pandan Desktop aplikacijama) i danas one uvjerljivo dominiraju na iOS-u, a onda posljedično i na Android platformi. Kad su korisnici navikli na veću responsivnost i kvalitetnije elemente sučelja, više nije bilo natrag. Kad su developeri naučili novi jezik, više nije bilo potrebe da po svemu lupaju čekićem. Posljedica ovog je veća svjesnost da Web možda ipak nije sveto pismo i da ga treba još jednom promisliti u kontekstu Poslovnih aplikacija.

Mobilne aplikacije zadržale su uspješno sve prednosti Weba kroz pametan update sustav. Kopirajući ovaj model centralnog updatea, Apple pokušava pozicionirati App store i na Desktop. Java i .Net također imaju update sustave. Ali, mobiteli imaju jednu prednost u odnosu na laptope i desktop računala - uvijek su s vama, a onda su tu i njihove aplikacije. Ostaje, dakle, jedna prednost weba koje Desktop aplikacije nisu riješile, a to je stalna dostupnost na svakom računalu na kojem se zateknete. Unix je to nekad davno riješio s korisničkim računima na dijeljenom serveru, a taj isti koncept danas se rješava u raznim vizijama Clouda.

Što će biti s webom kad osobni Cloudovi dožive sljedeći kvantni skok, viditi ćemo svi skupa. I prilagoditi se.

Popularne teme
.NET ABAP ADFS Agile Always On Anemic Model Angular Azure Backbone BI Bootstrap building people business inteligence Business Intelligence Change Chrome CI CITCON Claims compile continuous deployment Continuous Integration CSR d3js data visualization DDD dekompozicija dependency injection dinamička forma dinamički parametri dinamički query distribuirani razvoj Domain-Driven design DOP društvena odgovornost edge-based video analytics Eliminating waste enkapsulacija enterprise razvoj softvera ERP ETL Excel FIORI Frontend game Geopackage GPKG GIS Git Groovy heat map HICCUPS Hichert HTML IBCS interoperability IoT IPSO izvještavanje java JavaFX Javascript Jazz Build Engine JBE Jenkins jquery jqueryui jsfiddle JVM Kaizen Kanban KING ICT Kingovci Knockout kvaliteta leadership Lean M language Management Maven Metodologija microservices Microsoft mobile Mobility moć monday game NetWeaver network nodejs OGC OKR open source optimizacija organizacija organizacijska struktura OutOfMemoryError outsourcing paginacija Performance performanse PERT PMI podatkovni skup pouzdanost Power BI Power Map Power Pivot Power Query Power View pretraga proces procjena Product Owner programming proizvod Project manager projektni plan radar Rational Team Concert razvoj tima resize responsive charts REST retrospektiva Rich-Domain model Roko Roić rolling wave planning RTC SAP scale scatterplot chart Scrum scrum team scrum tim service boundaries single responsibility principle Single Sign-On smart metering SoapUI social responsibility softver Software Software Testing Club Spring Boot SQL standard sustav videonadzora svg Team team building team development terminski plan Testing tim timesheet timovi Toggl.com touch transakcijski nadzor tražilica Visual Studio vodstvo vodstvo leadership moć društvena odgovornost DOP social responsibility CSR vođenje projekata WBS Web Zagreb STC

PRIJAVA NA NEWSLETTER

Najnovije novosti iz ICT svijeta