Technologické trendy vývoja webu 2019

Úvod

Digitálna transformácia každým rokom pokrýva čoraz viac rôznych oblastí života a podnikania. Ak chce byť podnik konkurencieschopný, obyčajné informačné weby už nestačia, sú potrebné mobilné a webové aplikácie, ktoré používateľom poskytujú nielen informácie, ale umožňujú im vykonávať určité funkcie: prijímať alebo objednávať tovary a služby, poskytovať nástroje.

Technologické trendy vývoja webu 2019

Moderným bankám už napríklad nestačí mať internetovú stránku s informáciami, potrebujú mať pre svojich klientov online nástroje, osobný účet, na ktorom môže používateľ spravovať účty, investície, úvery. Dokonca aj malé podniky potrebujú pohodlné nástroje na zvýšenie konverzií, ako je napríklad dohodnutie si stretnutia s lekárom alebo kaderníkom alebo rezervácia stola v reštaurácii alebo v detskej herni na narodeninovú oslavu.

A samotní majitelia potrebujú dostávať včasné informácie vo vhodnej forme o stave ich spoločnosti, napríklad o zbere štatistických údajov a analýz pre rôzne výrobné oddelenia alebo o produktivite oddelení. Často každé oddelenie zhromažďuje tieto údaje vlastným spôsobom a môže dokonca používať rôzne nástroje a majiteľ musí stráviť veľa osobného času, aby to všetko pochopil, nepriamo alebo priamo to môže ovplyvniť efektivitu spoločnosti a v konečnom dôsledku aj zisk. Tu pomôže aj digitálna transformácia a vývoj webových či mobilných aplikácií.

Technológie nestoja a neustále sa vyvíjajú a to, čo sa používalo pred niekoľkými rokmi, už dnes nemusí byť aktuálne alebo to, čo sa pred niekoľkými rokmi nedalo urobiť, sa už stalo realitou. Existujú modernejšie nástroje, ktoré vám pomôžu rýchlejšie a lepšie vytvárať webové a mobilné aplikácie. Na základe osobných postrehov a skúseností sa chcem podeliť o svoju víziu, ktoré technológie a nástroje budú v blízkej budúcnosti žiadané a prečo by ste im mali venovať pozornosť pri tvorbe modernej webovej aplikácie.

Jednostránková aplikácia

Poďme si trochu definovať terminológiu. Single Page Application (SPA) je webová aplikácia, ktorej komponenty sa načítajú raz na jednu stránku a obsah sa načíta podľa potreby. A pri pohybe medzi sekciami aplikácie sa stránka nenačíta úplne znova, ale iba načíta a zobrazí potrebné údaje.

Jednostránkové aplikácie výrazne ťažia z klasických webových aplikácií z hľadiska rýchlosti a jednoduchosti používania. Pomocou SPA môžete dosiahnuť efekt webovej stránky fungujúcej ako aplikácia na ploche, bez reštartov a výrazného oneskorenia.

Ak pred niekoľkými rokmi jednostránkové aplikácie prakticky nepodporovali optimalizáciu pre vyhľadávače a slúžili najmä na vytváranie osobných účtov a administračných panelov, dnes sa tvorba jednostránkovej aplikácie s plnou podporou optimalizácie pre vyhľadávače (SEO) stala oveľa jednoduchšou. Pri použití jednostránkových aplikácií vykresľovaných serverom dnes tento problém úplne zmizol. Inými slovami, toto je tá istá jednostránková aplikácia, ale pri prvej požiadavke server vygeneruje nielen údaje, ale vytvorí HTML stránku pripravenú na zobrazenie a vyhľadávacie nástroje dostanú hotové stránky so všetkými metainformáciami a sémantickým označením. .

S rozvojom nástrojov na tvorbu webových aplikácií na strane klienta bude vývoj a prechod na jednostránkové aplikácie v tomto a nasledujúcich rokoch len rásť. Ak máte starú aplikáciu, ktorá je zastaraná a funguje pomaly a dokonca aj s úplným opätovným načítaním stránky pri prepínaní medzi sekciami, tento rok môžete bezpečne prejsť na rýchlu jednostránkovú aplikáciu - teraz je ten správny čas, technológia vám to už umožňuje urobiť to pomerne rýchlo a efektívne.

Mať moderný a rýchly web je veľmi dobré, ale poviem vám úprimne: nie všetky aplikácie sa dajú ľahko previesť na jednostránkové aplikácie a prechod môže byť drahý! Preto musíte pochopiť, kto potrebuje takýto prechod a prečo.

Aby ste to pochopili, v tabuľke nižšie uvediem niekoľko príkladov, kedy je rozvoj alebo prechod na SPA vhodný a opodstatnený a kedy nie.

FOR

Ak chcete robiť modernú, rýchlu aplikáciu a chcete využívať nielen webovú, ale aj mobilnú či dokonca desktopovú verziu a všetky procesy a výpočty prebiehajú na vzdialenom alebo cloudovom serveri. Navyše, aby všetci klienti mali jedno interakčné rozhranie a pri pridávaní nového klienta nebolo potrebné vykonávať každú úpravu kódu servera.

Napríklad: sociálna sieť, agregátory, platformy SaaS (softvér ako cloudová služba), trhoviská

Ak máte obchod alebo webovú službu, viete, že je pomalá a ľudia odchádzajú, chcete to urýchliť, rozumiete hodnote zákazníkov a ste pripravení zaplatiť viac ako milión rubľov za upgrade.

Máte mobilnú aplikáciu, ktorá používa API stránky, ale stránka je pomalá a pri prechode medzi stránkami sa znova načítava celý obsah

PROTI

Ak vaša cieľová skupina nepoužíva moderné prehliadače a zariadenia.

Napríklad: špecifické korporátne oblasti, ako je vývoj interných systémov pre banky, zdravotnícke inštitúcie a vzdelávanie.

Svoje hlavné činnosti vykonávate offline a nie ste pripravení poskytovať žiadne služby online a potrebujete len prilákať zákazníkov.

Ak máte internetový obchod alebo webovú službu, ktorá sa už dobre predáva, nevidíte odliv zákazníkov ani sťažnosti

Ak máte fungujúcu aplikáciu, ktorá sa nedá prispôsobiť pre SPA a potrebujete všetko prepísať od začiatku a používať iné technológie, a nie ste pripravení minúť na to niekoľko miliónov.

Napríklad: Existuje stránka v rámčeku alebo nejaký druh podomácky napísaný starobylý, monolitický kód.

Progresívne webové aplikácie

Progresívne webové aplikácie sú produktom spoločného vývoja natívnej aplikácie a webovej stránky. V podstate ide o webovú aplikáciu, ktorá vyzerá a správa sa ako skutočná natívna aplikácia, môže prijímať push notifikácie, pracovať v offline režime atď. V tomto prípade používateľ nemusí sťahovať aplikáciu z AppStore alebo Google Play, ale jednoducho si ju uloží na plochu.

Ako technológia alebo prístup k vývoju sa PWA vyvíja od roku 2015 a v poslednej dobe si získala obrovskú popularitu v oblasti e-commerce.

Niekoľko príkladov zo skutočného života:

  • v minulom roku bol hotel Best Western River North schopný zvýšiť príjmy o 300 % po spustení novej webovej stránky s podporou PWA;
  • Arabic Avito OpenSooq.com po vytvorení podpory PWA na svojej webovej stránke dokázal zvýšiť čas návštevy stránky o 25 % a počet potenciálnych zákazníkov o 260 %;
  • slávna zoznamovacia služba Tinder dokázala vývojom PWA znížiť rýchlosť načítania z 11.91 s na 4.69 s, navyše aplikácia váži o 90 % menej ako jej natívny náprotivok pre Android.

O tom, že sa tejto technológii oplatí venovať pozornosť, nasvedčuje aj fakt, že jeden z najväčších motorov na vytváranie e-commerce projektov, Magento, spustil v roku 2018 rannú vývojovú verziu PWA Studio. Platforma vám umožňuje vytvoriť frontend založený na Reacte pre vaše riešenia elektronického obchodu s podporou PWA.

Rada pre tých, ktorí už majú internetový projekt alebo len nápad na novú službu s podporou pre mobilné zariadenia: neponáhľajte sa s napísaním plnohodnotnej natívnej aplikácie, ale najprv si pozrite technológiu PWA. Toto môže byť najlepšie riešenie pomeru ceny a kvality pre váš produkt.

Trochu z praxe. Na vytvorenie jednoduchej natívnej mobilnej spravodajskej aplikácie za predpokladu, že už máte pripravený REST server, potrebujete približne 200-300 človekohodín na platformu. Pri priemernej trhovej cene za hodinu vývoja 1500-2000 rubľov/hodinu môže aplikácia stáť asi 1 milión rubľov. Ak vyvíjate webovú aplikáciu s plnou podporou PWA: push notifikácie, offline režim a ďalšie vychytávky, tak vývoj zaberie 200-300 človekohodín, no produkt bude okamžite dostupný na všetkých platformách. Teda približne 2-násobná úspora, nehovoriac o tom, že nebudete musieť platiť poplatky za umiestnenie v obchodoch s aplikáciami.

bez servera

Ide o ďalší moderný prístup k rozvoju. Kvôli názvu si veľa ľudí myslí, že ide skutočne o vývoj bez servera, nie je potrebné písať back-end kód a každý front-end vývojár môže vytvoriť plnohodnotnú webovú aplikáciu. Ale to nie je pravda!

Pri vytváraní bezserverovej aplikácie stále potrebujete server a databázu. Hlavným rozdielom tohto prístupu je, že back-end kód je prezentovaný vo forme cloudových funkcií (iný názov pre bezserverové je FaaS, funguje ako služba alebo Funkcie ako služba) a umožňuje aplikácii rýchlo a rýchlo škálovať. ľahko. Pri tvorbe takejto aplikácie sa vývojár môže sústrediť na obchodné problémy a nemyslieť na škálovanie a nastavovanie infraštruktúry, čo následne urýchľuje vývoj aplikácie a znižuje jej náklady. Okrem toho vám prístup bez servera pomôže ušetriť na prenájme servera, pretože využíva presne toľko zdrojov, koľko je potrebných na dokončenie úlohy, a ak nie je zaťaženie, čas servera sa vôbec nevyužíva a neplatí sa zaň.

Napríklad veľká americká mediálna spoločnosť Bustle dokázala pri prechode na Serverless znížiť náklady na hosting o viac ako 60 %. A spoločnosť Coca-Cola pri vývoji automatizovaného systému na predaj nápojov prostredníctvom predajných automatov dokázala prechodom na Serverless znížiť náklady na hosting z 13000 4500 USD na XNUMX XNUMX USD ročne.

Za posledných pár rokov sa Serverless vďaka svojej novosti a obmedzeniam používal hlavne pre malé projekty, startupy a MVP, ale dnes sa vďaka vývoju softvéru, všestrannosti a sile kontajnerizácie serverov objavujú nástroje, ktoré umožňujú odstrániť obmedzenia, zjednodušiť a urýchliť vývoj cloudových aplikácií.
To znamená, že podnikové obchodné scenáre, v ktorých sa modernizácia cloudu predtým považovala za nemožnú (napríklad pre okrajové zariadenia, prenos údajov alebo stavové aplikácie), sú teraz realitou. Dobré nástroje, ktoré ukazujú veľa sľubov, sú kNative a Serverless enterprise.

Napriek tomu všetkému však Serverless nie je striebornou guľkou pre vývoj webových aplikácií. Rovnako ako každá iná technológia má svoje výhody a nevýhody a musíte si tento nástroj vybrať s porozumením a „nezabíjať klince mikroskopom“ len preto, že je technologicky vyspelejší.

Aby sme vám to pomohli zistiť, tu je niekoľko príkladov, kedy by ste mali zvážiť možnosť Serverless pri vývoji novej alebo vylepšovaní súčasnej webovej služby:

  • Keď je zaťaženie servera pravidelné a platíte za nevyužitú kapacitu. Mali sme napríklad klienta so sieťou kávovarov a bolo potrebné vybavovať požiadavky a zbierať štatistiky len niekoľko sto či tisíckrát za deň a v noci počet požiadaviek klesol na niekoľko desiatok. V tomto prípade je oveľa efektívnejšie platiť len za skutočné využitie zdrojov, preto sme navrhli a implementovali riešenie na Serverless;
  • Ak sa neplánujete ponoriť do technických detailov infraštruktúry a preplatiť za nastavenie a údržbu serverov a balancera. Napríklad pri vývoji trhoviska neviete presne, aká bude návštevnosť, alebo naopak – plánujete veľkú návštevnosť a aby vaša aplikácia určite odolala záťaži, potom je Serverless vynikajúcou voľbou.
  • Ak potrebujete vykonať nejaké streamingové udalosti v hlavnej aplikácii, zapísať vedľajšie údaje do tabuliek, vykonať nejaké výpočty. Napríklad zhromažďovať analytické údaje o akciách používateľov, spracovávať ich určitým spôsobom a ukladať ich do databázy;
  • Ak potrebujete zjednodušiť, zjednotiť alebo zrýchliť doterajší chod aplikácie. Napríklad vytvorte služby zlepšujúce výkon pre prácu s obrázkami alebo videami, keď používateľ nahrá video do cloudu, a samostatná funkcia sa postará o prekódovanie, zatiaľ čo hlavný server funguje normálne.

Ak potrebujete spracovať udalosti zo služieb tretích strán. Napríklad spracovať odpovede z platobných systémov alebo presmerovať údaje používateľov do CRM, aby sa urýchlilo spracovanie požiadaviek od potenciálnych klientov
Ak máte veľkú aplikáciu a niektoré časti aplikácie je možné implementovať optimálnejšie pomocou jazyka odlišného od hlavného. Napríklad máte projekt v Jave a potrebujete pridať novú funkcionalitu, no nemáte voľné ruky, alebo implementácia v danom jazyku môže trvať dlhšie a už existuje riešenie v inom jazyku, potom vám môže pomôcť Serverless aj s týmto.

Toto nie je celý zoznam nástrojov a technológií, ktoré si zaslúžia pozornosť; len som sa podelil o to, čo my sami každodenne používame pri našej práci a presne vieme, ako môžu pomôcť podnikaniu.

Zdroj: hab.com

Pridať komentár