Tehnološki trendovi web razvoja 2019

Uvod

Digitalna transformacija svake godine pokriva sve više različitih područja života i poslovanja. Ako poduzeće želi biti konkurentno, obične informacijske stranice više nisu dovoljne, potrebne su mobilne i web aplikacije koje korisnicima ne samo da pružaju informacije, već im omogućuju i obavljanje određenih funkcija: primanje ili naručivanje roba i usluga, pružanje alata.

Tehnološki trendovi web razvoja 2019

Primjerice, modernim bankama više nije dovoljno imati web stranicu s informacijama, već moraju imati online alate za svoje klijente, osobni račun na kojem korisnik može upravljati računima, investicijama i kreditima. Čak i male tvrtke trebaju praktične alate za povećanje konverzija, kao što je zakazivanje termina kod liječnika ili frizera, ili rezerviranje stola u restoranu ili dječjoj igraonici za rođendansku proslavu.

I sami vlasnici trebaju pravodobno primati informacije u prikladnom obliku o stanju svoje tvrtke, na primjer, prikupljanje statističkih podataka i analitiku za različite proizvodne odjele ili produktivnost odjela. Često svaki odjel prikuplja te podatke na svoj način, a možda čak i koristi različite alate i vlasnik treba potrošiti puno osobnog vremena da sve to shvati, neizravno ili izravno to može utjecati na učinkovitost tvrtke iu konačnici na profit. Tu će također pomoći digitalna transformacija i razvoj web ili mobilnih aplikacija.

Tehnologije ne miruju i stalno se razvijaju, a ono što se koristilo prije nekoliko godina danas možda više nije relevantno ili je ono što se nije moglo učiniti prije nekoliko godina već postalo stvarnost. Postoje moderniji alati koji vam pomažu da brže i bolje izradite web i mobilne aplikacije. Na temelju osobnih zapažanja i iskustva, želim podijeliti svoju viziju o tome koje će tehnologije i alati biti traženi u bliskoj budućnosti i zašto biste trebali obratiti pozornost na njih pri izradi moderne web aplikacije.

Aplikacija na jednoj stranici

Idemo malo definirati terminologiju. Single Page Application (SPA) je web aplikacija čije se komponente učitavaju jednom na jednoj stranici, a sadržaj se učitava po potrebi. A kada se krećete između odjeljaka aplikacije, stranica se ne učitava u potpunosti, već samo učitava i prikazuje potrebne podatke.

Jednostrane aplikacije uvelike su u prednosti od klasičnih web aplikacija u pogledu brzine i jednostavnosti korištenja. Uz pomoć SPA-a možete postići učinak da web stranica radi kao aplikacija na radnoj površini, bez ponovnog pokretanja i značajnih kašnjenja.

Ako prije nekoliko godina jednostrane aplikacije praktički nisu podržavale optimizaciju za tražilice i koristile su se uglavnom za kreiranje osobnih računa i administracijskih panela, danas je izrada jednostrane aplikacije s potpunom podrškom za optimizaciju za tražilice (SEO) postala puno lakša. Današnjim korištenjem jednostraničkih aplikacija izrađenih na poslužitelju ovaj je problem potpuno nestao. Drugim riječima, ovo je ista aplikacija s jednom stranom, ali na prvi zahtjev poslužitelj ne generira samo podatke, već stvara HTML stranicu spremnu za prikaz, a tražilice primaju gotove stranice sa svim meta informacijama i semantičkim oznakama .

S razvojem alata za izradu klijentskih web aplikacija, razvoj i prijelaz na single-page aplikacije samo će rasti u ovoj i narednim godinama. Ako imate staru aplikaciju koja je zastarjela i radi sporo, pa čak i s potpunim ponovnim učitavanjem stranice prilikom prebacivanja između odjeljaka, onda ove godine možete sigurno nadograditi na brzu jednostraničnu aplikaciju - sada je dobro vrijeme, tehnologija vam već omogućuje da to učinite prilično brzo i učinkovito.

Imati modernu i brzu web stranicu jako je dobro, ali dopustite mi da vam iskreno kažem: ne mogu se sve aplikacije lako pretvoriti u jednostrane aplikacije, a prijelaz može biti skup! Stoga morate razumjeti kome je potreban takav prijelaz i zašto.

Da biste lakše razumjeli, u donjoj tablici navest ću neke primjere kada je razvoj ili prelazak na SPA prikladno i opravdano, a kada nije.

O

Ako želite napraviti modernu, brzu aplikaciju i želite koristiti ne samo web verziju, već i mobilnu ili čak desktop verziju, a svi procesi i izračuni se odvijaju na udaljenom ili cloud serveru. Štoviše, tako da svi klijenti imaju jedno interakcijsko sučelje i nema potrebe za svakim uređivanjem koda poslužitelja prilikom dodavanja novog klijenta.

Na primjer: društvena mreža, agregatori, SaaS platforme (softver kao usluga u oblaku), tržišta

Ako imate trgovinu ili web uslugu, znate da je spora i da ljudi odlaze, želite je ubrzati, razumijete vrijednost kupaca i spremni ste platiti više od milijun rubalja za nadogradnju.

Imate mobilnu aplikaciju koja koristi API web-lokacije, ali je web-lokacija spora i potpuno se ponovno učitava prilikom prelaska s jedne stranice na drugu

PROTIV

Ako vaša ciljana publika ne koristi moderne preglednike i uređaje.

Na primjer: specifična korporativna područja, kao što je razvoj internih sustava za banke, medicinske ustanove i obrazovanje.

Svoje glavne aktivnosti obavljate offline i niste spremni pružati nikakve usluge online, a samo trebate privući kupce.

Ako imate online trgovinu ili web uslugu koja se već dobro prodaje, ne vidite odljev kupaca ili pritužbe

Ako imate radnu aplikaciju koja se ne može prilagoditi za SPA i samo trebate sve prepisati ispočetka i koristiti druge tehnologije, a niste spremni potrošiti nekoliko milijuna na ovo.

Na primjer: Postoji mjesto u kutiji ili neka vrsta doma pisanog drevnog, monolitnog koda.

Progresivne web aplikacije

Progresivne web aplikacije proizvod su zajedničke evolucije izvorne aplikacije i web stranice. U biti, ovo je web aplikacija koja izgleda i ponaša se kao prava nativna aplikacija, može primati push obavijesti, raditi u offline modu itd. U tom slučaju korisnik ne treba preuzeti aplikaciju s AppStorea ili Google Playa, već ju jednostavno spremiti na radnu površinu.

Kao tehnologija ili pristup razvoju, PWA se razvija od 2015. godine, a nedavno je stekao ogromnu popularnost u području e-trgovine.

Neki primjeri iz stvarnog života:

  • prošle godine, hotel Best Western River North uspio je povećati prihod za 300% nakon pokretanja nove web stranice s omogućenom PWA;
  • Arapski Avito OpenSooq.com, nakon što je stvorio PWA podršku na svojoj web stranici, uspio je povećati vrijeme posjećivanja stranice za 25% i broj potencijalnih kupaca za 260%;
  • poznata usluga za upoznavanje Tinder uspjela je smanjiti brzinu učitavanja s 11.91 s na 4.69 s razvojem PWA; štoviše, aplikacija je 90% lakša od svog izvornog Android pandana.

Koliko vrijedi obratiti pažnju na ovu tehnologiju govori i činjenica da je jedan od najvećih pokretača za kreiranje e-commerce projekata, Magento, lansirao ranu razvojnu verziju PWA Studija 2018. godine. Platforma vam omogućuje da odmah stvorite sučelje temeljeno na Reactu za svoja rješenja za e-trgovinu s PWA podrškom.

Savjet za one koji već imaju internetski projekt ili samo ideju za novu uslugu s podrškom za mobilne uređaje: nemojte žuriti s pisanjem punopravne izvorne aplikacije, već prvo pogledajte PWA tehnologiju. Ovo bi moglo biti najbolje rješenje za vaš proizvod u odnosu na vrijednost za novac.

Malo iz prakse. Za izradu jednostavne izvorne mobilne aplikacije za vijesti, pod uvjetom da već imate gotov REST poslužitelj, potrebno vam je otprilike 200-300 radnih sati po platformi. Uz prosječnu tržišnu cijenu za sat razvoja od 1500-2000 rubalja/sat, aplikacija može koštati oko milijun rubalja. Ako razvijete web aplikaciju s punom podrškom za PWA: push obavijesti, izvanmrežni način rada i druge dobrote, tada će razvoj trajati 1-200 radnih sati, ali će proizvod odmah biti dostupan na svim platformama. Odnosno ušteda od otprilike 300 puta, a da ne spominjemo činjenicu da nećete morati plaćati naknade za postavljanje u trgovine aplikacija.

serverless

Ovo je još jedan moderan pristup razvoju. Mnogi ljudi zbog naziva misle da je ovo doista razvoj bez poslužitelja, nema potrebe za pisanjem pozadinskog koda, a svaki front-end programer može stvoriti potpunu web aplikaciju. Ali to nije istina!

Kada kreirate aplikaciju bez poslužitelja, još uvijek trebate poslužitelj i bazu podataka. Glavna razlika ovog pristupa je u tome što je pozadinski kod predstavljen u obliku funkcija oblaka (drugi naziv za bez poslužitelja je FaaS, funkcije kao usluga ili Funkcije-kao-usluga) i omogućuje aplikaciji brzo skaliranje i lako. Prilikom izrade takve aplikacije programer se može fokusirati na poslovne probleme i ne razmišljati o skaliranju i postavljanju infrastrukture, što posljedično ubrzava razvoj aplikacije i smanjuje njenu cijenu. Štoviše, pristup bez poslužitelja pomoći će vam uštedjeti na najmu poslužitelja, budući da koristi točno onoliko resursa koliko je potrebno za izvršenje zadatka, a ako nema opterećenja, tada se vrijeme poslužitelja uopće ne koristi i ne plaća.

Primjerice, velika američka medijska tvrtka Bustle uspjela je smanjiti troškove hostinga za više od 60% prelaskom na Serverless. A tvrtka Coca-Cola, razvijajući automatizirani sustav za prodaju pića putem automata, uspjela je smanjiti troškove hostinga sa 13000 USD na 4500 USD godišnje prelaskom na Serverless.

Tijekom proteklih nekoliko godina, zbog svoje novosti i ograničenja, Serverless se uglavnom koristio za male projekte, startupe i MVP-ove, ali danas, zahvaljujući evoluciji softvera, svestranosti i snazi ​​kontejnerizacije poslužitelja, pojavljuju se alati koji omogućuju vam da uklonite ograničenja, pojednostavite i ubrzate razvoj aplikacija u oblaku.
To znači da su poslovni scenariji poduzeća u kojima se modernizacija oblaka prije smatrala nemogućom (na primjer, za rubne uređaje, podatke u prijenosu ili aplikacije sa statusom) sada stvarnost. Dobri alati koji mnogo obećavaju su kNative i Serverless enterprise.

No unatoč svemu tome, Serverless nije srebrni metak za razvoj web aplikacija. Kao i svaka druga tehnologija, i ona ima svoje prednosti i nedostatke, te ovaj alat trebate odabrati s razumijevanjem, a ne “zabijati čavle mikroskopom” samo zato što je tehnološki napredniji.

Kako bismo vam pomogli da to shvatite, evo nekoliko primjera kada biste mogli razmotriti opciju Bez poslužitelja kada razvijate novu ili poboljšavate trenutnu web uslugu:

  • Kada je opterećenje poslužitelja periodično i plaćate za neaktivan kapacitet. Na primjer, imali smo klijenta s mrežom aparata za kavu i bilo je potrebno obraditi zahtjeve i prikupiti statistiku samo nekoliko stotina ili tisuća puta dnevno, a noću je broj zahtjeva pao na nekoliko desetaka. U ovom slučaju puno je učinkovitije plaćati samo za stvarno korištenje resursa, stoga smo predložili i implementirali rješenje na Serverless;
  • Ako ne planirate zaroniti u tehničke detalje infrastrukture i preplatiti za postavljanje i održavanje poslužitelja i balansera. Na primjer, kada razvijate tržište, ne znate točno koliki će promet biti ili obrnuto - planirate puno prometa i kako bi vaša aplikacija sigurno izdržala opterećenje, onda je Serverless odličan izbor.
  • Ako trebate izvesti neke streaming događaje u glavnoj aplikaciji, zapišite sporedne podatke u tablice, izvršite neke izračune. Na primjer, prikupiti analitičke podatke o radnjama korisnika, obraditi ih na određeni način i spremiti u bazu podataka;
  • Ako trebate pojednostaviti, unificirati ili ubrzati trenutni rad aplikacije. Na primjer, stvorite usluge za poboljšanje performansi za rad sa slikama ili videozapisima, kada korisnik postavlja video u oblak, a zasebna funkcija obrađuje transkodiranje, dok glavni poslužitelj nastavlja normalno raditi.

Ako trebate obraditi događaje iz usluga trećih strana. Na primjer, obradite odgovore iz sustava plaćanja ili preusmjerite korisničke podatke u CRM kako biste ubrzali obradu zahtjeva potencijalnih klijenata
Ako imate veliku aplikaciju i neki dijelovi aplikacije mogu se optimalnije implementirati korištenjem jezika različitog od glavnog. Na primjer, imate projekt na Javi i trebate dodati novu funkcionalnost, ali nemate slobodne ruke ili implementacija na određenom jeziku može trajati dulje, a već postoji rješenje na drugom jeziku, tada vam može pomoći Serverless s ovim također.

Ovo nije cijeli popis alata i tehnologija koji zaslužuju pozornost, samo sam podijelio ono što mi sami svakodnevno koristimo u svom radu i znamo kako točno mogu pomoći poslovanju.

Izvor: www.habr.com

Dodajte komentar