Վեբ զարգացման տեխնոլոգիաների միտումները 2019 թ

Ներածություն

Թվային տրանսֆորմացիան ամեն տարի ընդգրկում է կյանքի և բիզնեսի ավելի ու ավելի տարբեր ոլորտներ: Եթե ​​բիզնեսը ցանկանում է մրցունակ լինել, սովորական տեղեկատվական կայքերն այլևս բավարար չեն, անհրաժեշտ են բջջային և վեբ հավելվածներ, որոնք ոչ միայն տեղեկատվություն են տրամադրում օգտատերերին, այլև թույլ են տալիս նրանց կատարել որոշակի գործառույթներ՝ ստանալ կամ պատվիրել ապրանքներ և ծառայություններ, տրամադրել գործիքներ:

Վեբ զարգացման տեխնոլոգիաների միտումները 2019 թ

Օրինակ, ժամանակակից բանկերին այլևս բավարար չէ տեղեկատվություն պարունակող կայք ունենալը, նրանք պետք է ունենան առցանց գործիքներ իրենց հաճախորդների համար, անձնական հաշիվ, որտեղ օգտագործողը կարող է կառավարել հաշիվները, ներդրումները և վարկերը: Նույնիսկ փոքր բիզնեսին անհրաժեշտ են հարմար գործիքներ՝ փոխակերպումները մեծացնելու համար, ինչպես օրինակ՝ բժշկի կամ վարսահարդարի հետ հանդիպում, կամ ռեստորանում կամ մանկական խաղասենյակում սեղան պատվիրելը ծննդյան խնջույքի համար:

Իսկ սեփականատերերն իրենք պետք է ժամանակին տեղեկատվություն ստանան իրենց ընկերության վիճակի մասին հարմար ձևով, օրինակ՝ տարբեր արտադրական ստորաբաժանումների վիճակագրական տվյալների և վերլուծությունների հավաքագրում կամ բաժինների արտադրողականության մասին: Հաճախ յուրաքանչյուր բաժին հավաքում է այս տվյալները յուրովի, և նույնիսկ կարող է օգտագործել տարբեր գործիքներ, և սեփականատերը պետք է շատ անձնական ժամանակ ծախսի այս ամենը հասկանալու համար, անուղղակի կամ ուղղակիորեն դա կարող է ազդել ընկերության արդյունավետության և, ի վերջո, շահույթի վրա: Այստեղ կօգնեն նաև թվային փոխակերպումը և վեբ կամ բջջային հավելվածների մշակումը:

Տեխնոլոգիաները տեղում չեն կանգնած և անընդհատ զարգանում են, և այն, ինչ օգտագործվում էր մի քանի տարի առաջ, կարող է այլևս ակտուալ լինել այսօր, կամ այն, ինչ հնարավոր չէր անել մի քանի տարի առաջ, արդեն իրականություն է դարձել։ Կան ավելի ժամանակակից գործիքներ, որոնք օգնում են ձեզ ստեղծել վեբ և բջջային հավելվածներ ավելի արագ և ավելի լավ: Ելնելով անձնական դիտարկումներից և փորձից՝ ես ուզում եմ կիսվել իմ տեսլականով, թե որ տեխնոլոգիաներն ու գործիքները պահանջված կլինեն մոտ ապագայում և ինչու պետք է ուշադրություն դարձնել դրանց վրա ժամանակակից վեբ հավելված ստեղծելիս:

Մեկ էջանոց հավելված

Եկեք մի փոքր սահմանենք տերմինաբանությունը. Single Page Application (SPA) վեբ հավելված է, որի բաղադրիչները մեկ էջի վրա բեռնվում են մեկ անգամ, և բովանդակությունը բեռնվում է ըստ անհրաժեշտության: Իսկ հավելվածի բաժինների միջեւ շարժվելիս էջն ամբողջությամբ չի վերաբեռնվում, այլ միայն բեռնում եւ ցուցադրում է անհրաժեշտ տվյալները։

Մեկ էջանոց հավելվածները մեծապես օգուտ են քաղում դասական վեբ հավելվածներից՝ արագության և օգտագործման հեշտության առումով: SPA-ի օգնությամբ դուք կարող եք հասնել աշխատասեղանի վրա հավելվածի պես աշխատող կայքի էֆեկտի՝ առանց վերագործարկման և էական ուշացումների։

Եթե ​​մի քանի տարի առաջ մեկ էջանոց հավելվածները գործնականում չէին աջակցում որոնման համակարգի օպտիմալացմանը և օգտագործվում էին հիմնականում անձնական հաշիվների և ադմինիստրատիվ վահանակների ստեղծման համար, ապա այսօր որոնման համակարգի օպտիմալացման (SEO) ամբողջական աջակցությամբ մեկ էջանոց հավելված ստեղծելը շատ ավելի հեշտ է դարձել: Օգտագործելով սերվերի կողմից մատուցված մեկ էջի հավելվածներն այսօր՝ այս խնդիրն ամբողջությամբ անհետացել է: Այլ կերպ ասած, սա նույն մեկ էջանոց հավելվածն է, բայց առաջին իսկ խնդրանքով սերվերը ստեղծում է ոչ միայն տվյալներ, այլ ստեղծում է ցուցադրման համար պատրաստ HTML էջ, և որոնիչները ստանում են պատրաստի էջեր՝ բոլոր մետա տեղեկատվությամբ և իմաստային նշումներով։ .

Հաճախորդի կողմից վեբ հավելվածներ ստեղծելու գործիքների մշակմամբ զարգացումը և անցումը մեկ էջանոց հավելվածների կաճի միայն այս և հետագա տարիներին: Եթե ​​ունեք հին հավելված, որը հնացած է և դանդաղ է աշխատում, և նույնիսկ էջերի ամբողջական վերաբեռնումով, երբ անցնում եք բաժինների միջև, ապա այս տարի կարող եք ապահով կերպով թարմացնել արագ մեկ էջանոց հավելվածի. այժմ լավ ժամանակ է, տեխնոլոգիան արդեն թույլ է տալիս ձեզ: դա անել բավականին արագ և արդյունավետ:

Ժամանակակից և արագ կայք ունենալը շատ լավ է, բայց թույլ տվեք անկեղծորեն ասել. ոչ բոլոր հավելվածները կարող են հեշտությամբ փոխակերպվել մեկ էջանոց հավելվածների, և անցումը կարող է թանկ լինել: Հետեւաբար, դուք պետք է հասկանաք, թե ում եւ ինչու է պետք նման անցումը:

Որպեսզի օգնեմ ձեզ հասկանալու, ստորև բերված աղյուսակում ես կտամ մի քանի օրինակներ, թե երբ է SPA-ի մշակումը կամ անցումը տեղին և հիմնավորված, և երբ՝ ոչ:

FOR

Եթե ​​ցանկանում եք ստեղծել ժամանակակից, արագ հավելված և ցանկանում եք օգտագործել ոչ միայն վեբ տարբերակը, այլ նաև բջջային կամ նույնիսկ աշխատասեղանի տարբերակը, և բոլոր գործընթացներն ու հաշվարկները տեղի են ունենում հեռավոր կամ ամպային սերվերի վրա: Ավելին, այնպես, որ բոլոր հաճախորդներն ունենան մեկ փոխազդեցության ինտերֆեյս և կարիք չունենա սերվերի կոդի յուրաքանչյուր խմբագրում կատարել նոր հաճախորդ ավելացնելիս:

Օրինակ՝ սոցիալական ցանց, ագրեգատորներ, SaaS հարթակներ (ծրագրային ապահովում՝ որպես ամպային ծառայություն), շուկաներ

Եթե ​​դուք ունեք խանութ կամ վեբ ծառայություն, գիտեք, որ այն դանդաղ է, և մարդիկ հեռանում են, ցանկանում եք այն ավելի արագ դարձնել, հասկանում եք հաճախորդների արժեքը և պատրաստ եք վճարել ավելի քան մեկ միլիոն ռուբլի արդիականացման համար:

Դուք ունեք բջջային հավելված, որն օգտագործում է կայքի API-ն, սակայն կայքը դանդաղ է աշխատում և ունի ամբողջական բովանդակության վերաբեռնում էջերի միջև շարժվելիս։

ԴԵՄ

Եթե ​​ձեր թիրախային լսարանը չի օգտագործում ժամանակակից բրաուզերներ և սարքեր:

Օրինակ՝ կոնկրետ կորպորատիվ ոլորտներ, ինչպիսիք են բանկերի, բժշկական հաստատությունների և կրթության ներքին համակարգերի զարգացումը:

Դուք ձեր հիմնական գործունեությունը անցկացնում եք օֆլայն և պատրաստ չեք որևէ ծառայություն մատուցել առցանց, և պարզապես անհրաժեշտ է գրավել հաճախորդներին:

Եթե ​​դուք ունեք առցանց խանութ կամ վեբ ծառայություն, որն արդեն լավ է վաճառվում, դուք չեք տեսնում հաճախորդների արտահոսք կամ բողոքներ

Եթե ​​դուք ունեք աշխատող ծրագիր, որը չի կարող հարմարվել SPA-ին, և դուք պարզապես պետք է ամեն ինչ վերաշարադրեք զրոյից և օգտագործեք այլ տեխնոլոգիաներ, և դուք պատրաստ չեք դրա վրա ծախսել մի քանի միլիոն:

Օրինակ՝ կա արկղային կայք կամ տնային հնագույն, միաձույլ կոդ:

Պրոգրեսիվ վեբ հավելվածներ

Պրոգրեսիվ վեբ հավելվածները տեղական հավելվածի և վեբկայքի համատեղ էվոլյուցիայի արդյունք են: Ըստ էության, սա վեբ հավելված է, որն ունի իրական բնիկ հավելվածի տեսք և վարքագիծ, կարող է ստանալ push ծանուցումներ, աշխատել օֆլայն ռեժիմում և այլն: Այս դեպքում օգտատերը կարիք չունի ներբեռնելու հավելվածը AppStore-ից կամ Google Play-ից, այլ պարզապես այն պահել աշխատասեղանին:

Որպես զարգացման տեխնոլոգիա կամ մոտեցում, PWA-ն զարգանում է 2015 թվականից և վերջերս հսկայական ժողովրդականություն է ձեռք բերել էլեկտրոնային առևտրի ոլորտում:

Որոշ իրական կյանքի օրինակներ.

  • Անցյալ տարի Best Western River North հյուրանոցը կարողացավ 300%-ով ավելացնել եկամուտը՝ PWA-ով միացված նոր կայք գործարկելուց հետո;
  • Արաբական Avito OpenSooq.com-ը, իր կայքում PWA աջակցություն ստեղծելուց հետո, կարողացավ ավելացնել կայք այցելելու ժամանակը 25%-ով, իսկ առաջատարների քանակը՝ 260%-ով;
  • Ծանոթությունների հանրահայտ Tinder ծառայությունը կարողացել է նվազեցնել բեռնման արագությունը 11.91 վրկ-ից մինչև 4.69 վրկ՝ մշակելով PWA, ընդ որում, հավելվածը 90%-ով ավելի քիչ է կշռում, քան իր հայրենի Android գործընկերոջը:

Այն, որ արժե ուշադրություն դարձնել այս տեխնոլոգիային, վկայում է նաև այն փաստը, որ էլեկտրոնային առևտրի նախագծեր ստեղծելու ամենամեծ շարժիչներից մեկը՝ Magento-ն, 2018 թվականին գործարկել է PWA Studio-ի վաղ զարգացման տարբերակը։ Պլատֆորմը թույլ է տալիս ստեղծել React-ի վրա հիմնված ֆրոնդ՝ ձեր էլեկտրոնային առևտրի լուծումների համար՝ PWA աջակցությամբ:

Խորհուրդ նրանց համար, ովքեր արդեն ունեն ինտերնետ նախագիծ կամ պարզապես գաղափար նոր ծառայության համար՝ բջջային սարքերի աջակցությամբ. մի շտապեք գրել լիարժեք հայրենական հավելված, այլ նախ նայեք PWA տեխնոլոգիային: Սա կարող է լինել ձեր արտադրանքի լավագույն արժեքի լուծումը:

Մի քիչ պրակտիկայից. Բջջային նորությունների պարզ հավելված ստեղծելու համար, պայմանով, որ դուք արդեն ունեք պատրաստի REST սերվեր, ձեզ անհրաժեշտ է մոտավորապես 200-300 աշխատաժամանակ մեկ հարթակում: Զարգացման մեկ ժամվա միջին շուկայական գինը 1500-2000 ռուբլի/ժամ է, դիմումը կարող է արժենալ մոտ 1 միլիոն ռուբլի: Եթե ​​դուք մշակում եք վեբ հավելված PWA-ի ամբողջական աջակցությամբ՝ push ծանուցումներ, օֆլայն ռեժիմ և այլ առավելություններ, ապա մշակումը կտևի 200-300 աշխատաժամանակ, բայց արտադրանքը անմիջապես հասանելի կլինի բոլոր հարթակներում: Այսինքն՝ մոտավորապես 2 անգամ խնայողություն, էլ չեմ խոսում այն ​​մասին, որ դուք ստիպված չեք լինի վճարել հավելվածների խանութներում տեղաբաշխման համար։

Serverless

Սա զարգացման ևս մեկ ժամանակակից մոտեցում է: Անվան պատճառով շատերը կարծում են, որ սա իսկապես առանց սերվերի մշակում է, կարիք չկա back-end կոդ գրելու, և ցանկացած front-end ծրագրավորող կարող է ստեղծել լիարժեք վեբ հավելված։ Բայց դա ճիշտ չէ։

Երբ ստեղծում եք Serverless հավելված, ձեզ դեռ պետք է սերվեր և տվյալների բազա: Այս մոտեցման հիմնական տարբերությունն այն է, որ հետին ծածկագիրը ներկայացվում է ամպային ֆունկցիաների տեսքով (առանց սերվերի մեկ այլ անուն է FaaS, գործում է որպես ծառայություն կամ Գործառույթներ որպես ծառայություն) և թույլ է տալիս հավելվածին արագորեն և մասշտաբավորել: հեշտությամբ. Նման հավելված ստեղծելիս ծրագրավորողը կարող է կենտրոնանալ բիզնես խնդիրների վրա և չմտածել ենթակառուցվածքի մասշտաբավորման և ստեղծման մասին, ինչը հետագայում արագացնում է հավելվածի մշակումը և նվազեցնում դրա արժեքը։ Ավելին, առանց սերվերի մոտեցումը կօգնի ձեզ խնայել սերվերի վարձույթը, քանի որ այն օգտագործում է ճիշտ այնքան ռեսուրսներ, որքան անհրաժեշտ է առաջադրանքը կատարելու համար, և եթե բեռ չկա, ապա սերվերի ժամանակը ընդհանրապես չի օգտագործվում և չի վճարվում:

Օրինակ, խոշոր ամերիկյան Bustle մեդիա ընկերությունը կարողացել է ավելի քան 60%-ով նվազեցնել հոսթինգի ծախսերը Serverless-ին անցնելիս։ Իսկ Coca-Cola ընկերությունը, երբ մշակում էր ըմպելիքների վաճառքի ավտոմատացված համակարգ ավտոմատների միջոցով, կարողացավ նվազեցնել հոսթինգի ծախսերը տարեկան $13000-ից մինչև $4500՝ անցնելով Serverless-ի:

Վերջին մի քանի տարիների ընթացքում, իր նորության և իր սահմանափակումների պատճառով, Serverless-ը հիմնականում օգտագործվել է փոքր նախագծերի, ստարտափների և MVP-ների համար, սակայն այսօր, ծրագրային ապահովման էվոլյուցիայի, սերվերի կոնտեյներացման բազմակողմանիության և հզորության շնորհիվ, ի հայտ են գալիս գործիքներ, որոնք թույլ է տալիս հեռացնել սահմանափակումները, պարզեցնել և արագացնել ամպային հավելվածների զարգացումը:
Սա նշանակում է, որ ձեռնարկությունների բիզնես սցենարները, որտեղ ամպի արդիականացումը նախկինում անհնարին էր համարվում (օրինակ՝ եզրային սարքերի, տարանցիկ տվյալների կամ պետական ​​ծրագրերի համար), այժմ իրականություն են: Լավ գործիքները, որոնք խոստումնալից են, kNative և Serverless ձեռնարկությունն են:

Բայց չնայած այս ամենին, Serverless-ը վեբ հավելվածների մշակման համար արծաթե փամփուշտ չէ: Ինչպես ցանկացած այլ տեխնոլոգիա, այն ունի իր առավելություններն ու թերությունները, և դուք պետք է ընտրեք այս գործիքը ըմբռնումով, և «ոչ թե մանրադիտակով մեխեր մեխեք», միայն այն պատճառով, որ այն տեխնոլոգիապես ավելի առաջադեմ է:

Որպեսզի օգնենք ձեզ պարզել դա, ահա մի քանի օրինակներ, երբ դուք կարող եք հաշվի առնել Serverless-ը նոր վեբ ծառայություն մշակելիս կամ կատարելագործելիս.

  • Երբ սերվերի բեռնվածությունը պարբերական է, և դուք վճարում եք պարապ հզորության համար: Օրինակ՝ մենք ունեինք հաճախորդ՝ սրճի մեքենաների ցանցով, և անհրաժեշտ էր հարցումները մշակել և վիճակագրություն հավաքել օրական ընդամենը մի քանի հարյուր կամ հազար անգամ, իսկ գիշերը հարցումների թիվը իջել է մի քանի տասնյակի։ Այս դեպքում շատ ավելի արդյունավետ է վճարել միայն ռեսուրսների փաստացի օգտագործման համար, ուստի մենք առաջարկել և ներդրել ենք լուծում Serverless-ի վրա;
  • Եթե ​​դուք չեք նախատեսում սուզվել ենթակառուցվածքի տեխնիկական մանրամասների մեջ և գերավճար վճարել սերվերների և հավասարակշռողի տեղադրման և պահպանման համար: Օրինակ, շուկա մշակելիս դուք հստակ չգիտեք, թե որն է լինելու երթևեկը, կամ հակառակը, դուք պլանավորում եք մեծ երթևեկություն և որպեսզի ձեր հավելվածը վստահ լինի, որ կդիմանա ծանրաբեռնվածությանը, ապա Serverless-ը հիանալի ընտրություն է:
  • Եթե ​​Ձեզ անհրաժեշտ է իրականացնել որոշ հոսքային իրադարձություններ հիմնական հավելվածում, գրեք կողմնակի տվյալներ աղյուսակներում, կատարեք որոշ հաշվարկներ: Օրինակ՝ հավաքել օգտատերերի գործողությունների վերլուծական տվյալներ, մշակել դրանք որոշակի ձևով և պահպանել տվյալների բազայում;
  • Եթե ​​Ձեզ անհրաժեշտ է պարզեցնել, միավորել կամ արագացնել հավելվածի ընթացիկ աշխատանքը: Օրինակ՝ ստեղծեք պատկերների կամ տեսանյութերի հետ աշխատելու համար կատարողականի բարելավման ծառայություններ, երբ օգտատերը տեսանյութ է վերբեռնում ամպի մեջ, և առանձին ֆունկցիան կարգավորում է տրանսկոդավորումը, մինչդեռ հիմնական սերվերը շարունակում է աշխատել սովորական ռեժիմով:

Եթե ​​Ձեզ անհրաժեշտ է մշակել իրադարձությունները երրորդ կողմի ծառայություններից: Օրինակ՝ մշակել վճարային համակարգերից ստացվող պատասխանները կամ օգտվողի տվյալները վերահղել դեպի CRM՝ պոտենցիալ հաճախորդների հարցումների մշակումն արագացնելու համար։
Եթե ​​դուք ունեք մեծ հավելված, և հավելվածի որոշ հատվածներ կարող են ավելի օպտիմալ կերպով իրականացվել՝ օգտագործելով հիմնականից տարբերվող լեզուն: Օրինակ, դուք Java-ում նախագիծ ունեք և պետք է նոր ֆունկցիոնալություն ավելացնեք, բայց դուք չունեք ազատ ձեռքեր, կամ տվյալ լեզվով իրականացումը կարող է ավելի երկար տևել, և արդեն կա լուծում այլ լեզվով, ապա Serverless-ը կարող է օգնել: սրա հետ էլ.

Սա այն գործիքների և տեխնոլոգիաների ամբողջ ցանկը չէ, որոնք արժանի են ուշադրության, ես պարզապես կիսվել եմ այն ​​ամենով, ինչ մենք ինքներս ենք օգտագործում ամեն օր մեր աշխատանքում և հստակ գիտենք, թե դրանք ինչպես կարող են օգնել բիզնեսին:

Source: www.habr.com

Добавить комментарий