Ievads
DigitÄlÄ transformÄcija katru gadu aptver arvien dažÄdas dzÄ«ves un biznesa jomas. Ja bizness vÄlas bÅ«t konkurÄtspÄjÄ«gs, vairs nepietiek ar parastajÄm informÄcijas vietnÄm, nepiecieÅ”amas mobilÄs un tÄ«mekļa aplikÄcijas, kas lietotÄjiem ne tikai sniedz informÄciju, bet arÄ« ļauj veikt noteiktas funkcijas: saÅemt vai pasÅ«tÄ«t preces un pakalpojumus, nodroÅ”inÄt rÄ«kus.
PiemÄram, mÅ«sdienu bankÄm vairs nepietiek tikai ar tÄ«mekļa vietni ar informÄciju, tÄm ir jÄbÅ«t tieÅ”saistes rÄ«kiem saviem klientiem, personÄ«gajam kontam, kurÄ lietotÄjs var pÄrvaldÄ«t kontus, ieguldÄ«jumus un aizdevumus. Pat maziem uzÅÄmumiem ir nepiecieÅ”ami Ärti rÄ«ki, lai palielinÄtu reklÄmguvumu skaitu, piemÄram, pierakstÄ«ties pie Ärsta vai friziera vai rezervÄt galdiÅu restorÄnÄ vai bÄrnu rotaļu istabÄ dzimÅ”anas dienas svinÄ«bÄm.
Un paÅ”iem Ä«paÅ”niekiem ir jÄsaÅem savlaicÄ«ga informÄcija ÄrtÄ formÄ par sava uzÅÄmuma stÄvokli, piemÄram, statistikas datu un analÄ«tikas apkopoÅ”ana dažÄdÄm ražoÅ”anas nodaļÄm vai nodaļu produktivitÄte. Bieži vien katra nodaļa Å”os datus vÄc savÄ veidÄ un var pat izmantot dažÄdus rÄ«kus un Ä«paÅ”niekam ir jÄtÄrÄ daudz personÄ«gÄ laika, lai to visu saprastu, netieÅ”i vai tieÅ”i tas var ietekmÄt uzÅÄmuma efektivitÄti un galu galÄ arÄ« peļÅu. Å eit palÄ«dzÄs arÄ« digitÄlÄ transformÄcija un tÄ«mekļa vai mobilo aplikÄciju izstrÄde.
TehnoloÄ£ijas nestÄv uz vietas un nepÄrtraukti attÄ«stÄs, un tas, kas tika izmantots pirms vairÄkiem gadiem, Å”odien var vairs nebÅ«t aktuÄls, vai arÄ« tas, ko nevarÄja izdarÄ«t pirms vairÄkiem gadiem, jau ir kļuvis par realitÄti. Ir mÅ«sdienÄ«gÄki rÄ«ki, kas palÄ«dz ÄtrÄk un labÄk izveidot tÄ«mekļa un mobilÄs lietojumprogrammas. Balstoties uz personÄ«gajiem novÄrojumiem un pieredzi, vÄlos dalÄ«ties ar savu redzÄjumu par to, kuras tehnoloÄ£ijas un rÄ«ki bÅ«s pieprasÄ«ti tuvÄkajÄ nÄkotnÄ un kÄpÄc tiem bÅ«tu jÄpievÄrÅ” uzmanÄ«ba, veidojot modernu tÄ«mekļa aplikÄciju.
Vienas lapas pieteikums
Nedaudz definÄsim terminoloÄ£iju. Single Page Application (SPA) ir tÄ«mekļa lietojumprogramma, kuras komponenti tiek ielÄdÄti vienu reizi vienÄ lapÄ, un saturs tiek ielÄdÄts pÄc vajadzÄ«bas. Un, pÄrvietojoties starp aplikÄcijas sadaļÄm, lapa netiek pilnÄ«bÄ pÄrlÄdÄta, bet tikai ielÄdÄ un parÄda nepiecieÅ”amos datus.
Vienas lapas lietojumprogrammas lielÄ mÄrÄ gÅ«st labumu no klasiskajÄm tÄ«mekļa lietojumprogrammÄm Ätruma un lietoÅ”anas vienkÄrŔības ziÅÄ. Ar SPA palÄ«dzÄ«bu jÅ«s varat panÄkt tÄdu efektu, ka vietne darbojas kÄ lietojumprogramma uz darbvirsmas, bez pÄrstartÄÅ”anas un ievÄrojamas kavÄÅ”anÄs.
Ja pirms dažiem gadiem vienas lapas aplikÄcijas praktiski neatbalstÄ«ja meklÄtÄjprogrammu optimizÄciju un tika izmantotas galvenokÄrt personÄ«go kontu un administrÄcijas paneļu izveidei, tad Å”odien vienas lapas aplikÄcijas izveide ar pilnu meklÄtÄjprogrammu optimizÄcijas (SEO) atbalstu ir kļuvusi daudz vienkÄrÅ”Äka. MÅ«sdienÄs, izmantojot servera renderÄtas vienas lapas lietojumprogrammas, Ŕī problÄma ir pilnÄ«bÄ izzudusi. Citiem vÄrdiem sakot, Ŕī ir tÄ pati vienas lapas lietojumprogramma, taÄu pÄc pirmÄ pieprasÄ«juma serveris Ä£enerÄ ne tikai datus, bet arÄ« izveido HTML lapu, kas ir gatava attÄloÅ”anai, un meklÄtÄjprogrammas saÅem gatavas lapas ar visu meta informÄciju un semantisko marÄ·Äjumu. .
AttÄ«stoties klienta puses tÄ«mekļa lietojumprogrammu izveidei, izstrÄde un pÄreja uz vienas lapas lietojumprogrammÄm tikai pieaugs Å”ajÄ un turpmÄkajos gados. Ja jums ir veca aplikÄcija, kas ir novecojusi un darbojas lÄni, un pat ar pilnÄ«gu lapas pÄrlÄdÄÅ”anu, pÄrslÄdzoties starp sadaļÄm, tad Å”ogad varat droÅ”i jauninÄt uz Ätru vienas lapas aplikÄciju - tagad ir labs laiks, tehnoloÄ£ijas jau ļauj lai to izdarÄ«tu diezgan Ätri un efektÄ«vi.
MÅ«sdienÄ«ga un Ätra vietne ir ļoti labi, taÄu teikÅ”u jums godÄ«gi: ne visas lietojumprogrammas var viegli pÄrveidot par vienas lapas lietojumprogrammÄm, un pÄreja var bÅ«t dÄrga! TÄpÄc jums ir jÄsaprot, kam un kÄpÄc ir vajadzÄ«ga Å”Äda pÄreja.
Lai palÄ«dzÄtu jums saprast, zemÄk esoÅ”ajÄ tabulÄ sniegÅ”u dažus piemÄrus, kad SPA izveide vai pÄreja uz to ir piemÄrota un pamatota un kad tÄ nav.
FOR
Ja vÄlies uztaisÄ«t modernu, Ätru aplikÄciju un vÄlies izmantot ne tikai web versiju, bet arÄ« mobilo vai pat desktop versiju un visi procesi un aprÄÄ·ini notiek attÄlinÄtÄ vai mÄkoÅa serverÄ«. TurklÄt, lai visiem klientiem bÅ«tu viens mijiedarbÄ«bas interfeiss un, pievienojot jaunu klientu, nav nepiecieÅ”ams veikt katru servera koda labojumu.
PiemÄram: sociÄlais tÄ«kls, agregatori, SaaS platformas (programmatÅ«ra kÄ mÄkoÅpakalpojums), tirgus
Ja jums ir veikals vai interneta pakalpojums, jÅ«s zinÄt, ka tas ir lÄns un cilvÄki aiziet, vÄlaties to padarÄ«t ÄtrÄku, jÅ«s saprotat klientu vÄrtÄ«bu un esat gatavs maksÄt vairÄk nekÄ miljonu rubļu par jauninÄÅ”anu.
Jums ir mobilÄ lietojumprogramma, kas izmanto vietnes API, taÄu vietne darbojas lÄni un, pÄrejot no vienas lapas uz otru, tiek veikta pilnÄ«ga satura atkÄrtota ielÄde.
PRET
Ja jÅ«su mÄrÄ·auditorija neizmanto modernas pÄrlÅ«kprogrammas un ierÄ«ces.
PiemÄram: specifiskas korporatÄ«vÄs jomas, piemÄram, banku, medicÄ«nas iestÄžu un izglÄ«tÄ«bas iekÅ”Äjo sistÄmu izstrÄde.
JÅ«s veicat savas galvenÄs darbÄ«bas bezsaistÄ un neesat gatavs sniegt nekÄdus pakalpojumus tieÅ”saistÄ, un jums vienkÄrÅ”i jÄpiesaista klienti.
Ja jums ir tieÅ”saistes veikals vai tÄ«mekļa pakalpojums, kas jau labi pÄrdod, jÅ«s neredzat klientu aizplÅ«Å”anu vai sÅ«dzÄ«bas
Ja jums ir kÄda darba programma, kuru nevar pielÄgot SPA, un jums vienkÄrÅ”i ir jÄpÄrraksta viss no nulles un jÄizmanto citas tehnoloÄ£ijas, un jÅ«s neesat gatavs tam tÄrÄt vairÄkus miljonus.
PiemÄram: ir ielikts vietne vai kaut kÄds mÄjÄs rakstÄ«ts sens, monolÄ«ts kods.
ProgresÄ«vÄs tÄ«mekļa lietojumprogrammas
ProgresÄ«vÄs tÄ«mekļa lietojumprogrammas ir vietÄjÄs lietojumprogrammas un vietnes kopÄ«gas attÄ«stÄ«bas produkts. BÅ«tÄ«bÄ Å”Ä« ir tÄ«mekļa lietojumprogramma, kas izskatÄs un darbojas kÄ Ä«sta vietÄjÄ lietojumprogramma, var saÅemt push paziÅojumus, strÄdÄt bezsaistes režīmÄ utt. Å ajÄ gadÄ«jumÄ lietotÄjam nav nepiecieÅ”ams lejupielÄdÄt aplikÄciju no AppStore vai Google Play, bet vienkÄrÅ”i saglabÄt to darbvirsmÄ.
KÄ tehnoloÄ£ija vai pieeja attÄ«stÄ«bai PWA tiek attÄ«stÄ«ta kopÅ” 2015. gada un pÄdÄjÄ laikÄ ir ieguvusi milzÄ«gu popularitÄti e-komercijas jomÄ.
Daži reÄlÄs dzÄ«ves piemÄri:
- pagÄjuÅ”ajÄ gadÄ Best Western River North viesnÄ«ca spÄja palielinÄt ieÅÄmumus par 300% pÄc tam, kad tika atvÄrta jauna vietne, kurÄ ir iespÄjota PWA;
- Arabic Avito OpenSooq.com pÄc PWA atbalsta izveides savÄ tÄ«mekļa vietnÄ spÄja palielinÄt vietnes apmeklÄjuma laiku par 25% un potenciÄlo pirkumu skaitu par 260%;
- Slavenais iepazÄ«Å”anÄs serviss Tinder spÄja samazinÄt ielÄdes Ätrumu no 11.91 s uz 4.69 s, izstrÄdÄjot PWA, turklÄt lietojumprogramma sver par 90% mazÄk nekÄ tÄs vietÄjais Android lÄ«dzinieks.
Par to, ka Å”ai tehnoloÄ£ijai ir vÄrts pievÄrst uzmanÄ«bu, liecina arÄ« tas, ka viens no lielÄkajiem e-komercijas projektu veidoÅ”anas dzinÄjiem Magento 2018. gadÄ laida klajÄ PWA Studio agrÄ«nÄs izstrÄdes versiju. Platforma ļauj jums izveidot uz React balstÄ«tu priekÅ”pusi jÅ«su e-komercijas risinÄjumiem ar PWA atbalstu.
Padoms tiem, kam jau ir interneta projekts vai vienkÄrÅ”i ideja jaunam pakalpojumam ar mobilo ierÄ«Äu atbalstu: nesteidzieties rakstÄ«t pilnvÄrtÄ«gu vietÄjo aplikÄciju, bet vispirms apskatiet PWA tehnoloÄ£iju. Tas var bÅ«t jÅ«su produkta cenas un kvalitÄtes attiecÄ«bu labÄkais risinÄjums.
Mazliet no prakses. Lai izveidotu vienkÄrÅ”u vietÄjo mobilo ziÅu aplikÄciju, ar nosacÄ«jumu, ka jums jau ir gatavs REST serveris, nepiecieÅ”amas aptuveni 200-300 cilvÄkstundas vienai platformai. VidÄjÄ tirgus cena par izstrÄdes stundu ir 1500-2000 rubļu stundÄ, lietojumprogramma var maksÄt aptuveni 1 miljonu rubļu. Ja izstrÄdÄjat tÄ«mekļa aplikÄciju ar pilnu PWA atbalstu: push paziÅojumi, bezsaistes režīms un citi labumi, tad izstrÄde prasÄ«s 200-300 darba stundas, bet produkts uzreiz bÅ«s pieejams visÄs platformÄs. Tas ir, ietaupÄ«jums aptuveni 2 reizes, nemaz nerunÄjot par to, ka jums nebÅ«s jÄmaksÄ nodeva par ievietoÅ”anu aplikÄciju veikalos.
Bez serveriem
Å Ä« ir vÄl viena moderna pieeja attÄ«stÄ«bai. Nosaukuma dÄļ daudzi cilvÄki domÄ, ka Ŕī patieÅ”Äm ir izstrÄde bez serveriem, nav jÄraksta aizmugures kods, un jebkurÅ” priekÅ”gala izstrÄdÄtÄjs var izveidot pilnvÄrtÄ«gu tÄ«mekļa lietojumprogrammu. Bet tÄ nav taisnÄ«ba!
Veidojot lietojumprogrammu bez serveriem, jums joprojÄm ir nepiecieÅ”ams serveris un datu bÄze. Å Ä«s pieejas galvenÄ atŔķirÄ«ba ir tÄda, ka aizmugures kods tiek parÄdÄ«ts mÄkoÅfunkciju veidÄ (cits bezservera nosaukums ir FaaS, kas darbojas kÄ pakalpojums vai Functions-as-a-Service) un ļauj lietojumprogrammai Ätri mÄrogot un viegli. Veidojot Å”Ädu lietojumprogrammu, izstrÄdÄtÄjs var koncentrÄties uz biznesa problÄmÄm un nedomÄt par infrastruktÅ«ras mÄrogoÅ”anu un iestatÄ«Å”anu, kas pÄc tam paÄtrina aplikÄciju izstrÄdi un samazina tÄs izmaksas. TurklÄt bez servera pieeja palÄ«dzÄs ietaupÄ«t uz servera nomas rÄÄ·ina, jo tÄ izmanto tieÅ”i tik daudz resursu, cik nepiecieÅ”ams uzdevuma veikÅ”anai, un, ja nav slodzes, tad servera laiks vispÄr netiek izmantots un par to netiek maksÄts.
PiemÄram, lielais amerikÄÅu mediju uzÅÄmums Bustle, pÄrejot uz bez servera, spÄja samazinÄt hostinga izmaksas par vairÄk nekÄ 60%. Un uzÅÄmums Coca-Cola, izstrÄdÄjot automatizÄtu sistÄmu dzÄrienu pÄrdoÅ”anai, izmantojot tirdzniecÄ«bas automÄtus, spÄja samazinÄt hostinga izmaksas no 13000 4500 USD lÄ«dz XNUMX XNUMX USD gadÄ, pÄrejot uz bez servera.
PÄdÄjo pÄris gadu laikÄ, pateicoties tÄ novitÄtei un ierobežojumiem, Serverless galvenokÄrt tika izmantots maziem projektiem, jaunuzÅÄmumiem un MVP, taÄu Å”odien, pateicoties programmatÅ«ras attÄ«stÄ«bai, serveru konteinerizÄcijas daudzpusÄ«bai un jaudai, parÄdÄs rÄ«ki, kas. ļauj noÅemt ierobežojumus, vienkÄrÅ”ot un paÄtrinÄt mÄkoÅa lietojumprogrammu izstrÄdi.
Tas nozÄ«mÄ, ka uzÅÄmumu biznesa scenÄriji, kuros mÄkoÅu modernizÄcija iepriekÅ” tika uzskatÄ«ta par neiespÄjamu (piemÄram, malÄm ierÄ«cÄm, datiem, kas tiek sÅ«tÄ«ti, vai lietojumprogrammÄm ar statusu), tagad ir realitÄte. Labi rÄ«ki, kas ir daudzsoloÅ”i, ir kNative un bez serveru uzÅÄmums.
Bet, neskatoties uz to visu, Serverless nav sudraba lode tÄ«mekļa lietojumprogrammu izstrÄdei. TÄpat kÄ jebkurai citai tehnoloÄ£ijai, tai ir savas priekÅ”rocÄ«bas un trÅ«kumi, un Å”is rÄ«ks ir jÄizvÄlas ar izpratni, nevis ānevis naglas ar mikroskopuā tikai tÄpÄc, ka tas ir tehnoloÄ£iski progresÄ«vÄks.
Lai palÄ«dzÄtu jums to noskaidrot, Å”eit ir daži piemÄri, kad, izstrÄdÄjot jaunu vai uzlabojot paÅ”reizÄjo tÄ«mekļa pakalpojumu, ieteicams apsvÄrt iespÄju izmantot bez servera.
- Kad servera slodze ir periodiska un jÅ«s maksÄjat par dÄ«kstÄves jaudu. PiemÄram, mums bija klients ar kafijas automÄtu tÄ«klu un bija nepiecieÅ”ams apstrÄdÄt pieprasÄ«jumus un vÄkt statistiku tikai dažus simtus vai tÅ«kstoÅ”us reižu dienÄ, un naktÄ« pieprasÄ«jumu skaits nokritÄs lÄ«dz vairÄkiem desmitiem. Å ajÄ gadÄ«jumÄ daudz efektÄ«vÄk ir maksÄt tikai par reÄlo resursu izmantoÅ”anu, tÄpÄc piedÄvÄjÄm un ieviesÄm risinÄjumu uz Serverless;
- Ja neplÄnojat ienirt infrastruktÅ«ras tehniskajÄs detaļÄs un pÄrmaksÄt par serveru un balansÄtÄja uzstÄdÄ«Å”anu un uzturÄÅ”anu. PiemÄram, veidojot tirgu, jÅ«s precÄ«zi nezinÄt, kÄda bÅ«s trafika, vai otrÄdi - jÅ«s plÄnojat lielu trafiku un lai jÅ«su lietojumprogramma noteikti izturÄtu slodzi, tad bez servera ir lieliska izvÄle.
- Ja jums ir jÄveic daži straumÄÅ”anas notikumi galvenajÄ lietojumprogrammÄ, ierakstiet blakus datus tabulÄs, veiciet dažus aprÄÄ·inus. PiemÄram, apkopot lietotÄja darbÄ«bu analÄ«tiskos datus, apstrÄdÄt tos noteiktÄ veidÄ un saglabÄt datu bÄzÄ;
- Ja jums ir nepiecieÅ”ams vienkÄrÅ”ot, apvienot vai paÄtrinÄt lietojumprogrammas paÅ”reizÄjo darbÄ«bu. PiemÄram, izveidojiet veiktspÄjas uzlaboÅ”anas pakalpojumus darbam ar attÄliem vai videoklipiem, kad lietotÄjs augÅ”upielÄdÄ video mÄkonÄ«, un atseviŔķa funkcija apstrÄdÄ pÄrkodÄÅ”anu, bet galvenais serveris turpina darboties kÄ parasti.
Ja jums ir nepiecieÅ”ams apstrÄdÄt notikumus no treÅ”o puÅ”u pakalpojumiem. PiemÄram, apstrÄdÄt atbildes no maksÄjumu sistÄmÄm vai novirzÄ«t lietotÄja datus uz CRM, lai paÄtrinÄtu potenciÄlo klientu pieprasÄ«jumu apstrÄdi.
Ja jums ir liela lietojumprogramma un dažas lietojumprogrammas daļas var ieviest optimÄlÄk, izmantojot valodu, kas atŔķiras no galvenÄs. PiemÄram, jums ir projekts Java valodÄ un jums ir jÄpievieno jauna funkcionalitÄte, bet jums nav brÄ«vu roku, vai arÄ« ievieÅ”ana noteiktÄ valodÄ var aizÅemt ilgÄku laiku un jau ir risinÄjums citÄ valodÄ, tad bez servera var palÄ«dzÄt arÄ« ar Å”o.
Å is nav viss to rÄ«ku un tehnoloÄ£iju saraksts, kam jÄpievÄrÅ” uzmanÄ«ba; es tikai dalÄ«jos ar to, ko mÄs paÅ”i ikdienÄ izmantojam savÄ darbÄ un precÄ«zi zinÄm, kÄ tie var palÄ«dzÄt uzÅÄmÄjdarbÄ«bai.
Avots: www.habr.com