Nurk 2,0 vs polümeer

Tere kutid! Enne kui ma hakkan neid kahte javascripti raamistikku / teeki võrdlema, on oluline mõista, kuidas veebiarenduse viis muutub ja kuidas uued raamistikud üritavad seda muutust hõlbustada.

Uus veebiarenduse viis

Komponendid

  • Moodulkujundus ja arendus on arendajate seas populaarsed põhimõtted. Veebiarenduse maailmas on komponentidel põhinev arendus arenenud modulaarsuse põhimõttel.
  • Moodulkoodi on lihtne hooldada ja uuesti kasutada. Väiksema, isoleeritud ja paremini kontrollitava koodbaasi tõttu on vigade esinemise tõenäosus väiksem.
  • Raamraamid, nagu Angular, Ember, React, Backbone ja teised, on veebis pakkunud oma lahendusi komponentide komplekteerimiseks.

Veebikomponendid

  • Veebikomponendid on komponentide kontseptsiooni brauseritesse loomulikult viinud. Ehkki saame endiselt kasutada raamistike pakutavaid komponentlahendusi, pakuvad looduslikud veebikomponendid teatud määral korduvkasutatavust, mida teised raamistikud ei suuda saavutada.
  • Veebikomponendid kapseldavad funktsionaalsuse moodulid HTML-i kõige elementaarsemasse üksusesse, mis on DOM-element. Veebikomponentide osas tehtud edusammudega on neist saanud moodulkoodide otsimise viis veebis.
  • Kõik brauserid pole veel veebikomponentide spetsifikatsioone täielikult rakendanud. Kuid brauseritarnijad rakendavad aktiivselt spetsifikatsioonide erinevaid osi, mis tähendab, et veebikomponentide tugi läheb ainult paremaks.

Sild veebikomponentide juurde

Nurk 2.0

  • Nurk on arendajate seas üks populaarsemaid javascripti raamistikke. Angular (Angular 2) uusim versioon töötab ka komponentide kontseptsiooni kallal.
  • Nurk 2 on täieõiguslik javascripti raamistik, mis mitte ainult ei võimalda komponente üles ehitada, vaid aitab hallata ka veebirakenduste erinevaid aspekte, näiteks marsruutimist ja olekuhaldust.
  • Nurga 2 saab konfigureerida ka veebikomponentide genereerimiseks.

Polümeer

  • Raamatukogu Polymer on Web Components API-de peal olev kerge suhkrukiht. Polymer on raamatukogu, mis aitab meil ära kasutada veebikomponentide täielikku potentsiaali.
  • Erinevalt tüüpilisest javascripti raamistikust on Polymer kavandatud veebiplatvormile küpsetatud funktsioonide võimendamiseks, et saaksite komponente luua.
  • #UseThePlatform on nimi, mille Polymer annab, et esindada brauseri soovi teha kõik rasked tõstetud teekideta.

Kuidas nad võrdlevad

Suurus:

Veebirakenduse suurusel on otsene mõju laadimisaja toimivusele. Lisaks rakenduse koodile ja varadele suurendavad rakenduse mahtu ka välised raamistikud ja teegid. Seega soovitakse, et väliste raamatukogude panus oleks võimalikult väike.

Nurk 2.0: 566 KB - 766 KB. Minified Angular 2 pakendi suurus on 566K. Nurk 2 tugineb jälgitavale mustrile, mille edastab Rxjsi raamatukogu. Rxjsi raamatukoguga nurga 2 suurus on 766K.

Polümeer: ​​127 KB - 168 KB. Minimeeritud polümeeri 1.6 suurus on 127 KB. See nõuab ka brauserite jaoks veebitäidet.js, mida nimetatakse veebikomponentideks.js, kui veebikomponente ei toetata loomulikult. Veebikomponentide-lite.js suurus on 41 KB

Taaskasuta:

Komponentide muster annab taaskasutatavusele palju võimalusi. Komponendid on väikesed ja eraldatud kooditükid, mida saab kasutada sama rakenduse mitmes kohas või rakenduste vahel.

Nurk 2.0: toetab komponente ja taaskasutamist. Nurga 2 komponente saab kasutada ainult nurga2 rakendustes

Polümeer: ​​toetab komponente ja taaskasutamist. Polümeerkomponente saab ideaalis kasutada mis tahes veebirakendustes. Polümeerideta polümeerikomponentide taaskasutamiseks peaks polümeeri mittepäritav rakendus importima polümeeride raamatukogu.

Rakenduse struktuur:

Suurte rakenduste puhul on oluline, et koodil oleks struktuur. Raamid aitavad koodil struktuuri ja mustrit pakkuda.

Nurk 2.0: määrab koodi struktuuri. Nurk 2 on täieõiguslik raamistik. See annab võimaluse rakenduse struktureerimiseks. Kaasas sisseehitatud rakenduste marsruutimine, riigihaldus ja andmeside

Polümeer: ​​struktuurilt ei öelda. Polümeer hõlbustab ainult komponentide loomist. Kuid polümeeride meeskond on loonud vähe komponente, mida saab marsruutimiseks kasutada. Andmeside haldamiseks saab kasutada eraldi teeki. nt. Redux või mõni muu Fluxil põhinev teek.

Pikaealisus:

Tehnoloogiapaketi valimisel on oluline arvestada raamistike / raamatukogude pikaealisusega. Raamistik, mis võib peagi vananeda või seisma jääda, on rakenduste loomise jaoks vale valik.

Nurk 2.0: Nurga versiooni versiooniuuendus 1.x-lt 2-le oli täielik uuendamine ja põhjustab praktiliselt rakenduste täieliku ümberkirjutamise. Nurk andis uuendustee vahemikus 1.4–1.5–2. Kuid uuendustee järgimine oleks võinud olla samaväärne ümberkirjutamisega.

Polümeer: ​​polümeer kavatseb veebiplatvormi arenguga kergem olla. Polymer 2 eelvaate versioon on väljas. Polümeeril on hübriidrežiim, kus 1 ja 2 saavad koos töötada. Kuna polümeer ei ole karkassiga, peaks versiooniuuendused olema lihtsamad.

Õppimine:

Nurk 2.0: Typescript on uus keel ja ka selle "dekoraatori" moodus koodi kirjutada pole JavaScripti arendajatele hästi teada. Kuigi JavaScripti tulevastel versioonidel on dekoraatorite kontseptsioon. Arendaja peab õppima nii raamistikku kui ka keelt.

Polümeer: ​​polümeerikomponendid saab / tavaliselt kirjutada ES5 / ES6 javascriptiga. Arendajad peavad harjuma komponentide mõistega (kehtib ka nurga 2 puhul). Polümeer tagab veebikomponentide kohaldamise korral minimaalse süntaktilise suhkru, mis ei nõua järsku õppimiskõverat.

Serveripoolne renderdamine:

Serveripoolne renderdamine on oluline SEO sõbralikkuse, sotsiaalmeedia eelvaadete ja lehe kiire kuvamisvõimaluse osas. Siiski on palju tehnikaid kiire esma renderdamise saavutamiseks isegi kliendi poolel renderdamise korral. Samuti saab Google indekseerida kliendi poolt pakutavaid veebisaite, kuid teistel otsingumootoritel võib sellega probleeme tekkida.

Nurk 2.0: nurga all tegutsev meeskond töötab välja nurga universaalne seade, mida saab kasutada nurga 2 abil serveripoole renderdamiseks.

Polümeer: ​​polümeeril pole veel serveripoolset renderdamist toetatud.

Soovitatav pinu

Ülaltoodud võrdluse põhjal, kui peaksin täna valima esiotsa, valiksin selle:

  • Polümeeride kogu on kergem kui nurga 2 raamistiku raamatukogu.
  • Polümeerkomponente saab kasutada mis tahes rakenduses, samas kui nurga 2 komponente saab kasutada ainult nurga 2 rakendustes
  • Polümeer kavatseb veebiplatvormi arenguga muutuda leebemaks, st kui brauserid täiustavad oma veebikomponentide spetsifikatsioonide tuge, saab polümeer vähendada selle suurust
  • Redux põhineb Fluxi mustril. See annab juhiseid andmevoo juhtimiseks rakenduses. See aitab luua ettearvatavaid ja skaleeritavaid rakendusi.

Tänud !! Lõbutse hästi!

Selle kirjutise pisut üksikasjalik versioon on minu ajaveebis http://dotjsfile.blogspot.in/2017/04/angular2-vs-polymer.html