Tendencat e teknologjisë së zhvillimit të uebit 2019

Paraqitje

Transformimi dixhital mbulon çdo vit gjithnjë e më shumë fusha të ndryshme të jetës dhe biznesit. Nëse një biznes dëshiron të jetë konkurrues, faqet e zakonshme të informacionit nuk mjaftojnë më, nevojiten aplikacione celulare dhe ueb që jo vetëm u ofrojnë përdoruesve informacion, por gjithashtu i lejojnë ata të kryejnë funksione të caktuara: të marrin ose të porosisin mallra dhe shërbime, të ofrojnë mjete.

Tendencat e teknologjisë së zhvillimit të uebit 2019

Për shembull, nuk mjafton më që bankat moderne të kenë një faqe interneti me informacion, ato duhet të kenë mjete online për klientët e tyre, një llogari personale ku përdoruesi mund të menaxhojë llogaritë, investimet dhe kreditë. Edhe bizneset e vogla kanë nevojë për mjete të përshtatshme për të rritur konvertimet, si për shembull të caktoni një takim me një mjek ose parukier, ose të rezervoni një tavolinë në një restorant ose në një sallë lojërash për fëmijë për një festë ditëlindjeje.

Dhe vetë pronarët duhet të marrin informacion në kohë në një formë të përshtatshme për gjendjen e kompanisë së tyre, për shembull, mbledhjen e të dhënave statistikore dhe analitike për departamente të ndryshme prodhimi, ose produktivitetin e departamenteve. Shpesh, çdo departament i mbledh këto të dhëna në mënyrën e vet, madje mund të përdorë mjete të ndryshme dhe pronari duhet të shpenzojë shumë kohë personale për të kuptuar të gjitha këto, në mënyrë indirekte ose direkte kjo mund të ndikojë në efikasitetin dhe, në fund të fundit, fitimin e kompanisë. Transformimi dixhital dhe zhvillimi i aplikacioneve në internet ose celular do të ndihmojnë gjithashtu këtu.

Teknologjitë nuk qëndrojnë ende dhe po evoluojnë vazhdimisht, dhe ajo që është përdorur disa vite më parë mund të mos jetë më e rëndësishme sot, ose ajo që nuk mund të bëhej disa vite më parë tashmë është bërë realitet. Ka mjete më moderne që ju ndihmojnë të krijoni aplikacione në ueb dhe celularë më shpejt dhe më mirë. Bazuar në vëzhgimet dhe përvojën personale, dua të ndaj vizionin tim se cilat teknologji dhe mjete do të jenë të kërkuara në të ardhmen e afërt dhe pse duhet t'u kushtoni vëmendje atyre kur krijoni një aplikacion modern në internet.

Aplikim me një faqe

Le të përcaktojmë pak terminologjinë. Aplikacioni Single Page (SPA) është një aplikacion ueb, komponentët e të cilit ngarkohen një herë në një faqe dhe përmbajtja ngarkohet sipas nevojës. Dhe kur lëvizni midis seksioneve të aplikacionit, faqja nuk ringarkohet plotësisht, por vetëm ngarkon dhe shfaq të dhënat e nevojshme.

Aplikacionet me një faqe përfitojnë shumë nga aplikacionet klasike në ueb për sa i përket shpejtësisë dhe lehtësisë së përdorimit. Me ndihmën e SPA, mund të arrini efektin e një faqe interneti që funksionon si një aplikacion në desktop, pa rindezje dhe vonesa të konsiderueshme.

Nëse disa vite më parë aplikacionet me një faqe praktikisht nuk mbështesnin optimizimin e motorëve të kërkimit dhe përdoreshin kryesisht për krijimin e llogarive personale dhe paneleve të administrimit, sot krijimi i një aplikacioni me një faqe me mbështetje të plotë për optimizimin e motorëve të kërkimit (SEO) është bërë shumë më i lehtë. Duke përdorur aplikacionet me një faqe të prodhuar nga serveri sot, ky problem është zhdukur plotësisht. Me fjalë të tjera, ky është i njëjti aplikacion me një faqe, por me kërkesën e parë, serveri gjeneron jo vetëm të dhëna, por krijon një faqe HTML të gatshme për shfaqje dhe motorët e kërkimit marrin faqe të gatshme me të gjitha informacionet meta dhe shënimin semantik. .

Me zhvillimin e mjeteve për krijimin e aplikacioneve në internet nga ana e klientit, zhvillimi dhe kalimi në aplikacione me një faqe do të rritet vetëm në këtë dhe vitet e mëvonshme. Nëse keni një aplikacion të vjetër që është i vjetëruar dhe funksionon ngadalë, madje edhe me një ringarkim të plotë të faqes kur kaloni midis seksioneve, atëherë këtë vit mund të përmirësoni me siguri në një aplikacion të shpejtë me një faqe - tani është një kohë e mirë, teknologjia tashmë ju lejon për ta bërë këtë mjaft shpejt dhe me efikasitet.

Të kesh një faqe interneti moderne dhe të shpejtë është shumë e mirë, por më lejoni t'ju them sinqerisht: jo të gjitha aplikacionet mund të konvertohen lehtësisht në aplikacione me një faqe dhe kalimi mund të jetë i shtrenjtë! Prandaj, duhet të kuptoni se kujt i duhet një tranzicion i tillë dhe pse.

Për t'ju ndihmuar të kuptoni, në tabelën e mëposhtme do të jap disa shembuj se kur zhvillimi ose kalimi në një SPA është i përshtatshëm dhe i justifikuar, dhe kur nuk është.

PËR

Nëse dëshironi të bëni një aplikacion modern, të shpejtë dhe dëshironi të përdorni jo vetëm versionin e ueb-it, por edhe versionin celular apo edhe desktop, dhe të gjitha proceset dhe llogaritjet zhvillohen në një server të largët ose cloud. Për më tepër, në mënyrë që të gjithë klientët të kenë një ndërfaqe ndërveprimi dhe nuk ka nevojë të bëni çdo modifikim në kodin e serverit kur shtoni një klient të ri.

Për shembull: rrjetet sociale, grumbulluesit, platformat SaaS (software si shërbim cloud), tregjet

Nëse keni një dyqan ose shërbim në internet, ju e dini që është i ngadalshëm dhe njerëzit po largohen, doni ta bëni më shpejt, kuptoni vlerën e klientëve dhe jeni gati të paguani mbi një milion rubla për një përmirësim.

Ju keni një aplikacion celular që përdor API-në e sajtit, por faqja është e ngadaltë dhe ka ringarkime të plota të përmbajtjes kur lëviz midis faqeve

KUNDËR

Nëse audienca juaj e synuar nuk përdor shfletues dhe pajisje moderne.

Për shembull: fusha specifike të korporatës, si zhvillimi i sistemeve të brendshme për bankat, institucionet mjekësore dhe arsimin.

Ju i kryeni aktivitetet tuaja kryesore jashtë linje dhe nuk jeni gati të ofroni ndonjë shërbim në internet, dhe thjesht duhet të tërheqni klientë.

Nëse keni një dyqan në internet ose shërbim në internet që tashmë shitet mirë, nuk do të shihni dalje ose ankesa të klientëve

Nëse keni një aplikacion funksional që nuk mund të përshtatet për SPA dhe thjesht duhet të rishkruani gjithçka nga e para dhe të përdorni teknologji të tjera, dhe nuk jeni gati të shpenzoni disa milionë për këtë.

Për shembull: Ekziston një vend në kuti ose një lloj kodi i lashtë, monolit i shkruar në shtëpi.

Aplikacione Progresive Web

Aplikacionet progresive në ueb janë produkt i evolucionit të përbashkët të një aplikacioni vendas dhe një faqe interneti. Në thelb, ky është një aplikacion ueb që duket dhe sillet si një aplikacion i vërtetë vendas, mund të marrë njoftime push, të punojë në modalitetin offline, etj. Në këtë rast, përdoruesi nuk ka nevojë të shkarkojë aplikacionin nga AppStore ose Google Play, por thjesht ta ruajë atë në desktop.

Si një teknologji ose qasje ndaj zhvillimit, PWA është zhvilluar që nga viti 2015 dhe së fundmi ka fituar një popullaritet të madh në fushën e tregtisë elektronike.

Disa shembuj të jetës reale:

  • vitin e kaluar, hoteli Best Western River North ishte në gjendje të rriste të ardhurat me 300% pas lançimit të një uebsajti të ri të aktivizuar me PWA;
  • Arabisht Avito OpenSooq.com, pasi krijoi mbështetje PWA në faqen e saj të internetit, ishte në gjendje të rriste kohën e vizitës së sajtit me 25% dhe numrin e klientëve me 260%;
  • shërbimi i famshëm i takimeve Tinder ishte në gjendje të zvogëlonte shpejtësinë e ngarkimit nga 11.91 në 4.69s duke zhvilluar një PWA; për më tepër, aplikacioni peshon 90% më pak se homologu i tij vendas Android.

Fakti që ia vlen t'i kushtohet vëmendje kësaj teknologjie tregohet edhe nga fakti se një nga motorët më të mëdhenj për krijimin e projekteve të tregtisë elektronike, Magento, lançoi një version të hershëm të zhvillimit të PWA Studio në 2018. Platforma ju lejon të krijoni një front të bazuar në React nga kutia për zgjidhjet tuaja të tregtisë elektronike me mbështetjen e PWA.

Këshilla për ata që tashmë kanë një projekt në internet ose thjesht një ide për një shërbim të ri me mbështetje për pajisjet celulare: mos nxitoni të shkruani një aplikacion vendas të plotë, por së pari shikoni teknologjinë PWA. Kjo mund të jetë zgjidhja më e mirë me vlerë për para për produktin tuaj.

Pak nga praktika. Për të krijuar një aplikacion të thjeshtë celular të lajmeve, me kusht që të keni tashmë një server të gatshëm REST, ju nevojiten afërsisht 200-300 orë pune për platformë. Me çmimin mesatar të tregut për një orë zhvillimi 1500-2000 rubla/orë, një aplikim mund të kushtojë rreth 1 milion rubla. Nëse zhvilloni një aplikacion në internet me mbështetje të plotë për PWA: njoftime shtytëse, modalitet offline dhe të mira të tjera, atëherë zhvillimi do të zgjasë 200-300 orë pune, por produkti do të jetë menjëherë i disponueshëm në të gjitha platformat. Kjo është, një kursim prej afërsisht 2 herë, për të mos përmendur faktin që nuk do të duhet të paguani tarifa për vendosjen në dyqanet e aplikacioneve.

pa server

Kjo është një tjetër qasje moderne ndaj zhvillimit. Për shkak të emrit, shumë njerëz mendojnë se ky është me të vërtetë zhvillim pa server, nuk ka nevojë të shkruhet kodi i fundit dhe çdo zhvillues i frontit mund të krijojë një aplikacion të plotë në internet. Por kjo nuk është e vërtetë!

Kur krijoni një aplikacion pa server, ju duhet ende një server dhe një bazë të dhënash. Dallimi kryesor i kësaj qasjeje është se kodi i fundit paraqitet në formën e funksioneve cloud (një emër tjetër për pa server është FaaS, funksionon si shërbim ose Funksionet-as-a-Service) dhe lejon aplikacionin të shkallëzohet shpejt dhe lehtë. Kur krijon një aplikacion të tillë, zhvilluesi mund të fokusohet në problemet e biznesit dhe të mos mendojë për shkallëzimin dhe vendosjen e infrastrukturës, e cila më pas përshpejton zhvillimin e aplikacionit dhe ul koston e tij. Për më tepër, qasja pa server do t'ju ndihmojë të kurseni në qiratë e serverëve, pasi përdor saktësisht aq burime sa nevojiten për të përfunduar detyrën, dhe nëse nuk ka ngarkesë, atëherë koha e serverit nuk përdoret fare dhe nuk paguhet.

Për shembull, kompania e madhe amerikane e mediave Bustle ishte në gjendje të reduktonte kostot e pritjes me më shumë se 60% kur kalonte në Serverless. Dhe kompania Coca-Cola, kur zhvilloi një sistem të automatizuar për shitjen e pijeve përmes makinave shitëse, ishte në gjendje të reduktonte kostot e pritjes nga 13000 dollarë në 4500 dollarë në vit duke kaluar në Serverless.

Gjatë dy viteve të fundit, për shkak të risisë dhe kufizimeve të tij, Serverless është përdorur kryesisht për projekte të vogla, startup dhe MVP, por sot, falë evolucionit të softuerit, shkathtësisë dhe fuqisë së kontejnerizimit të serverëve, po shfaqen mjetet që ju lejon të hiqni kufizimet, të thjeshtoni dhe përshpejtoni zhvillimin e aplikacioneve cloud.
Kjo do të thotë se skenarët e biznesit të ndërmarrjeve ku modernizimi i cloud më parë konsiderohej i pamundur (për shembull, për pajisjet e skajshme, të dhënat në tranzit ose aplikacionet shtetërore) tani janë realitet. Mjetet e mira që tregojnë shumë premtime janë ndërmarrjet kNative dhe pa server.

Por pavarësisht gjithë kësaj, Serverless nuk është një plumb argjendi për zhvillimin e aplikacioneve në internet. Si çdo teknologji tjetër, ajo ka avantazhet dhe disavantazhet e saj, dhe ju duhet ta zgjidhni këtë mjet me mirëkuptim, dhe "jo të godasni me çekiç me mikroskop" vetëm sepse është më i avancuar teknologjikisht.

Për t'ju ndihmuar ta kuptoni, këtu janë disa shembuj se kur mund të dëshironi të merrni parasysh Serverless kur zhvilloni një shërbim të ri ose përmirësoni një shërbim aktual në internet:

  • Kur ngarkesa në server është periodike dhe ju paguani për kapacitetin boshe. Për shembull, kishim një klient me një rrjet aparatesh kafeje dhe ishte e nevojshme të përpunoheshin kërkesat dhe të mblidheshin statistika vetëm disa qindra ose mijëra herë në ditë, dhe natën numri i kërkesave binte në disa dhjetëra. Në këtë rast, është shumë më efikase të paguhet vetëm për përdorimin aktual të burimeve, kështu që ne propozuam dhe zbatuam një zgjidhje në Serverless;
  • Nëse nuk planifikoni të zhyteni në detajet teknike të infrastrukturës dhe të paguani tepër për vendosjen dhe mirëmbajtjen e serverëve dhe një balancuesi. Për shembull, kur zhvilloni një treg, ju nuk e dini saktësisht se cili do të jetë trafiku, ose anasjelltas - po planifikoni shumë trafik dhe në mënyrë që aplikacioni juaj të jetë i sigurt se do t'i rezistojë ngarkesës, atëherë "Serverless" është një zgjedhje e shkëlqyer.
  • Nëse keni nevojë të kryeni disa ngjarje transmetimi në aplikacionin kryesor, shkruani të dhënat anësore në tabela, kryeni disa llogaritje. Për shembull, mblidhni të dhëna analitike të veprimeve të përdoruesit, përpunoni ato në një mënyrë të caktuar dhe ruani ato në një bazë të dhënash;
  • Nëse keni nevojë të thjeshtoni, unifikoni ose shpejtoni funksionimin aktual të aplikacionit. Për shembull, krijoni shërbime për përmirësimin e performancës për të punuar me imazhe ose video, kur përdoruesi ngarkon video në cloud dhe një funksion i veçantë trajton transkodimin, ndërkohë që serveri kryesor vazhdon të funksionojë si zakonisht.

Nëse keni nevojë të përpunoni ngjarje nga shërbimet e palëve të treta. Për shembull, përpunoni përgjigjet nga sistemet e pagesave, ose ridrejtoni të dhënat e përdoruesit në CRM për të shpejtuar përpunimin e kërkesave nga klientët e mundshëm
Nëse keni një aplikacion të madh dhe disa pjesë të aplikacionit mund të zbatohen në mënyrë më optimale duke përdorur një gjuhë të ndryshme nga ajo kryesore. Për shembull, ju keni një projekt në Java dhe duhet të shtoni funksionalitet të ri, por nuk keni duar të lira, ose zbatimi në një gjuhë të caktuar mund të zgjasë më shumë dhe tashmë ka një zgjidhje në një gjuhë tjetër, atëherë Serverless mund të ndihmojë edhe me këtë.

Kjo nuk është e gjithë lista e mjeteve dhe teknologjive që meritojnë vëmendje; Unë thjesht tregova atë që ne vetë përdorim çdo ditë në punën tonë dhe e dimë saktësisht se si ato mund të ndihmojnë biznesin.

Burimi: www.habr.com

Shto një koment