Սկզբնապես տեղադրվել է այստեղ՝ https://imtiaz101325.notion.site/Mastering-the-Art-of-Lightning-Application-Development-91eda44f21894d56ac0d6369d94d542f

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

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

Lightning UI հավելված ստեղծելու հիմնական հմտությունները.

  • Ժամանակակից JavaScript հավելվածներ ստեղծելու իմացություն:
  • Ծանոթություն Lightning և հարակից գրադարաններին, ինչպիսիք են Lightning-SDK, Lightning-UI, Metrological-SDK և այլն:
  • Հասկանալով փոխզիջումները լավ գրված կոդի և արագ կատարող կոդի միջև:
  • Կոդի վրա ապարատային ազդեցության մասին տեղեկացվածություն:
  • Սարքավորումներով սահմանափակ միջավայրերում օգտագործողի գերազանց փորձի համար օպտիմալացնելու ունակություն:

Վիդեո նվագարկման ոլորտը, որը հաճախ հավելվածի առանցքն է, ուսումնասիրելու հաջորդ շերտն է: Այս տարածքը մեծապես հենվում է զննարկիչի վրա հիմնված գործիքների վրա, ինչպիսիք են հայրենի ‹վիդեո /› պիտակը, Մեդիա աղբյուրի ընդլայնումը և գրադարանները, որոնք իրականացնում են հոսքային արձանագրություններ այս պարզունակների վրա:

Համապատասխան հմտություններ.

  • Հասկանալով, թե ինչպես են բրաուզերները կառավարում վիդեո նվագարկումը բնիկ:
  • Գիտելիք այն մասին, թե ինչու ենք մենք օգտագործում հոսքային պրոտոկոլներ և ցանցի միջոցով տեսանյութ և աուդիո առաքման հետևանքները:
  • Տեղական նվագարկման և հոսքի ապարատային սահմանափակումների իրազեկում:
  • Մեդիա կոդավորման և բրաուզերի նվագարկման հասանելիության հիմնական ըմբռնումը:

🔗 ProTip. կարդացեք այս հիանալի գրառումները՝ https://web.dev/media/

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

Պահանջվող հմտություններ.

  • JavaScript շարժիչների, դրանց գործողությունների և տարբեր շարժիչներից ակնկալիքների մասին պատկերացում:
  • Ծանոթություն WebKit-ին և դրա ժողովրդականության պատճառները մշակողների շրջանում: 🙂
  • Բրաուզերների վրա ապարատային և ծրագրային սահմանափակումների իմացություն:

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

Այս և հաջորդող բլոգների համար ուշադրության կենտրոնում կլինի RDK էկոհամակարգը:

Հմտություններ:

  • Սարքավորումների տեխնիկական բնութագրերի իմացություն՝ ապարատային կոդավորիչ/ապակոդավորիչ, օպերատիվ հիշողություն, պրոցեսոր, պրոցեսոր:
  • Հասկանալով որոնվածը, որը գործում է այս ապարատային մասերի վրա:

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

Հմտություն:

  • Ծանոթություն զարգացման տարբեր միջավայրերին:
  • Շրջակա միջավայրի կողմից առաջարկվող մշակողի գործիքների իմացություն:
  • Տարբեր հարթակների նրբությունների և դրանց աշխարհագրական բաշխվածության պատկերացում:

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