„Angular vs Vue.js“ - patogus palyginimo vadovas

Šiuolaikinė „front-end“ plėtra per pastaruosius kelis dešimtmečius labai pasikeitė. Būdamas „front-end“ kūrėjas, galvodamas apie šiuolaikinį „front-end“ kūrimą, mano galvoje ateina trys perspektyvios technologijos, kurias, tikiu, dauguma jūsų gali lengvai atspėti -

  1. „Google“ kampinis
  2. „Facebook“ reakcija
  3. Vue.js

Kiekvienas iš jų turi savo privalumų ir trūkumų rinkinį. Ką turėčiau naudoti kitame savo projekte, jei tai būtų „React“ ar „Angular“ arba „Vue.js“, yra labai dažnas klausimas, kuris sukyla kiekvieno priekinio programuotojo galvoje.

Remdamasis savo patirtimi, rašau šį tinklaraštį, kad galėčiau palyginti du didžiausius rinkos dalyvius plėtros srityje, ty „Angular“ (būti vyresniu iš trijų iš jų) ir „Vue“ (būti jauniausiu iš nurodytos grupės) ir bandysiu sužinoti atsakymą, ką turėtumėte naudoti kitame projekte. Jei norite rasti palyginimą su „React“ ir „Vue.js“, jį galite rasti čia, šiame tinklaraštyje.

Prieš pradėdami diskusiją apie šių dviejų privalumus ir trūkumus, panagrinėkime Vue ir Angular istoriją.

Kampinis

„Angular“ yra „TypeScript“ pagrindu sukurta „Java“ sistema. Sukurtas ir prižiūrimas „Google“, „Angular“ yra perrašytas, nesuderinamas su „AngularJS“ įpėdiniu. Nors „AngularJS“ iš pradžių buvo išleista 2010 m. Spalio mėn., O „Angular“ buvo pristatyta 2016 m. Rugsėjo mėn. Kaip 2 versija.

Yra daugybė „Angular“ naudojimo internetinių svetainių kūrimo pranašumų -

  • Tai yra visas MVC

„Model View Controller“ arba MVC pagrindinė idėja yra atskirti programą į 3 pagrindinius loginius komponentus, ty. modelį, vaizdą ir valdiklį, kad būtų galima atskirti programos logiką nuo vartotojo sąsajos sluoksnio.

  • Neįrengtas „TypeScript“ palaikymas

„TypeScript“ yra „JavaScript“ papildomas rinkinys su projektavimo laiko palaikymu, užtikrinančiu tipo saugumą ir įrankius. Dėl tipų prieinamumo „TypeScript“ parašytas kodas yra mažiau jautrus vykdymo laiko klaidoms.

  • Priklauso „Google“

Palaikoma technologijų milžinės „Google“. Kas šešis mėnesius pateikia naują kampinę versiją.

  • Priklausomybės Įpurškimas

„AngularJS“ yra su įmontuotu priklausomybės įpurškimo posistemiu, kuris supaprastina vieneto testavimo procesą.

Vue

„Vue“ taip pat yra „JavaScript“ sistema, kurią pirmą kartą išleido 2014 m. Vasario mėn. Buvęs „Google“ darbuotojas Evanas You. „Vue“ yra sparčiausiai auganti JS sistema, ypač be jokios didelės įmonės paramos. „Vue“ paveldi daugumą gerų dalykų tiek iš „React“, tiek iš „Angular“, todėl kai kurie technikai mano, kad tai neoficialus „Angular and React“ vaikas.

Yra keli „Vue“ naudojimo internetinių svetainių kūrimo pranašumai -

  • Tai mažas dydis

Šios struktūros dydis yra 18–21 KB, ir vartotojui nereikia laiko ją atsisiųsti ir naudoti. Tai nereiškia, kad jo veikimas nėra pažeistas - iš tikrųjų jis įveikia visus tokius didelių gabaritų kadrus kaip React.js, Angular.js ir Ember.js.

  • Tai gana lengva

Asmeniškai aš esu didelis „Vue“ gerbėjas. Tai labai lengva išmokti - iš tikrųjų aš sugebėjau išmokti ir pritaikyti Vue kasdienėse tobulinimo užduotyse per mažiau nei dvi savaites.

  • „Vue“ dokumentai yra pagirtini

Nepaisant to, kad to nepalaiko kelių milijardų dolerių organizacijos, tokios kaip „Google“ ar FB, vis tiek pavyko vystytis per labai trumpą laiką ir užtikrinta, kad atnaujinimai nėra tokie sudėtingi, kaip buvo kai kurių kitų atveju iš kitų rinkoje dominuojančių pavadinimų.

  • Siūlo didelį lankstumą

Tai suteikia vartotojams galimybę rašyti savo šabloną „Java“ rinkmenoje, HTML faile ir gryname „Java“ faile, naudojant virtualius mazgus. Šis lankstumas taip pat verčia suprasti „React“, „Angular“ ar bet kuriuos kitus JS kūrėjus.

Palyginimas

Čia yra keletas pagrindinių parametrų, pagal kuriuos mes palyginsime kampinius ir vue rėmus -

  • Kokios brandos yra šios sistemos?
  • Kiek jie suderinami su skirtingo dydžio programomis?
  • O kaip kiekvienos iš šių sistemų mokymosi kreivė?
  • Kiek kūrėjams / plėtrai palankios yra šios sistemos?
  • Kokio spektaklio tikitės iš programos?
  • Kaip galite pradėti sisteminti savo paraišką pasirinkta sistema?
  • Ar ši sistema gali patenkinti jūsų projekto mastelį?

Pasiruošt dėmesio marš!

1. Bendruomeniškumas ir populiarumas

Be abejo, kampinis yra labiau populiarus tarp didelių kompanijų. Jis turi didelę bendruomenę ir „Google“ palaikymą.

„Vue“ taip pat greitai auga ir pastaraisiais metais kūrėjai sulaukė daug traukos.

Tai maža bendruomenė ir ji neturi jokios didelės įmonės paramos

Kalbant apie statistiką-

„Github“ svetainėje „Angular“ turi> 41 000 žvaigždžių ir 730 pagalbininkų, o Vue turi beveik 114 000 žvaigždžių ir tik 193 pagalbininkus.

„Github Stars“, „Angular“, „React“ ir „Vue“ istorija vėl atrodo, kad „Vue“ tendencijos yra labai geros. Remiantis bestof.js, kampinis vidutiniškai gauna 37 žvaigždes, o Vue - 135 žvaigždes per dieną.

Šaltinis: Vidutinis

2. Sintaksė ir kodo ilgis

Dirbdamas abiejuose rėmuose, aš pastebėjau, kad kampinis naudoja sudėtingesnę sintaksę, o Vue yra lengva išmokti dėl savo sintaksės paprastumo. Laiko, kurį aš sunaudojau paprastiems darbams atlikti „Angular“, yra daugiau. Kartais jos sudėtingumas dažnai sukelia painiavą.

Vue lengva išmokti dėl nesudėtingos sintaksės pobūdžio. Čia sintaksė yra tvarkinga ir švari. Žvelgiant iš „JavaScript“ fono, man gana lengva išmokti Vue. Kadangi kampinis naudoja „TypeScript“ (dekoratyvinių elementų ir purkštuvų naudojimas), todėl žmogus turėtų žinoti pagrindines „TypeScript“ žinias arba dirbti su OOPS koncepcija.

3. Struktūra

Kampas yra labiau struktūruotas ir ištobulintas. Tai verčia kūrėją padaryti viską standartiškai. Iš esmės stambių įmonių projektai priklauso nuo kampo dėl iš anksto nustatytos struktūros, kuri užtikrina, kad kiekvienas kūrėjas laikosi tos pačios architektūros.

Vue yra lankstesnė ir ji leidžia kūrėjui struktūruoti projektą taip, kaip jūs norite. Tai leidžia vartotojui parašyti savo šabloną HTML faile arba „Javascript“ faile. Galite naudoti kampinį, jei asmeninis pasirinkimas yra „TypeScript“ ir OOPS. Be to, „Vue“ taip pat teikia mašinraštį projekto plėtrai, tačiau jame nėra daug bibliotekų.

4. Kodo mastelio keitimas

Kai ketinate naudoti didelę kodo bazę, „Angular“ yra tinkamas kodo mastelio keitimas, nes, būdamas visaverte sistema, kūrėjas įpareigojamas kurti kodą konkrečioje kodo struktūroje.

Kita vertus, „Vue.js“ trūksta geriausios mastelio keitimo praktikos sąrašų. „Vue.js“ vartotojams nėra taikoma jokia speciali programos struktūra, kuri yra labai svarbi, kai turite didelę kodų bazę.

5. Integruotos bibliotekos

Kadangi „Vue“ yra nauja, joje yra mažiau specifinių rėmų bibliotekų, todėl jūs turite aiškiai įtraukti didžiąją dalį trečiųjų šalių bibliotekų.

„Anglis“ turi tiek daug specifinių rėmų bibliotekų, be to, dauguma bibliotekų anksčiau įtrauktos į projektą „Anglis-CLI“.

Pvz., Biblioteka, tokia kaip RxJS, yra įmontuota į kampinius CLI projektus, tačiau, norėdami, kad ji veiktų, Vue turite aiškiai įdiegti kitas bibliotekas, įskaitant RxJS.

Be to, „Angular“ turi integruotas API bibliotekas, kurių kūrėjas neprivalo jos aiškiai įdiegti. „Vue“ nėra su specifinės API biblioteka, todėl API skambučiams ji turi naudoti AXIOS biblioteką.

6. Spektaklis

Naudojant „Virtual-DOM“ koncepciją, „Vue“ tampa labiau performatyvi, palyginti su kampine.

Kita vertus, „Angular“ duomenų perdavimui naudoja stebėtojus.

Pradėkime nuo virtualiojo DOM. Tarkime, kad turite dinaminę n eilučių lentelę.

Dabar kažkas pasikeičia pirmoje eilėje. Tai, ką daro dauguma rėmų, yra atkurti ir perdaryti visą sąrašą. Tai n kartų daugiau darbo, nei būtina, nes turime atnaujinti tik pirmą eilutę.

Neatsakysime, ką virtuali DOM veiks šioje situacijoje.

Prieš bet kokį atnaujinimą jis sukuria DOM kopiją ir dirba su šia kopija. Kai virtualus DOM buvo atnaujintas, jis lygina tą patį su senesne versija, kuri buvo užfiksuota prieš atnaujinant, ir randa elementus, kuriuos reikia atnaujinti. Patikrinę skirtumą, realiame DOM atnaujinamos tik tos dalys, kurios yra pakeistos.

7. Ne internete

„Kampinis“ yra su joniškuoju ir vietiniu scenarijais, skirtu mobiliųjų programų plėtrai. „Vue“ yra geriausias pasirinkimas kūrėjams, kuriems patinka gimtoji mobiliųjų telefonų plėtra, naudojantiems „Alibaba Weex“ ir „Vue-Native“, tačiau, palyginti su „Ionic“, visa tai yra gana nauja.

Bet nė vienas iš šių mobiliųjų rėmų neleidžia jiems pasiekti „React Native“.

Santrauka

„Vue.js“ yra labai lengva ir lengvai išmokstama sistema, leidžianti savo jėgomis sukurti nuostabias programas. Jis nėra toks garsus kaip „Angular“ (prižiūri „Google“) tarp kūrėjų, tačiau neabejotinai sukuria dideles permainų bangas. Galbūt nežinote, bet „Laravel“ bendruomenė taip pat laikė ją vienu iš jų pageidaujamų sąsajų. Kampas yra labai patobulinta sistema, turinti keletą įrankių. Galite nuspręsti, ką pasirinkti, remdamiesi žemiau pateiktais pagrindiniais punktais -

Jei vis tiek negalite nuspręsti, pirmiausia išmokite Vue, tada - kampinį.

Mes, „Systango“, yra ekspertų grupės, turinčios visą paslaugų paketą, komanda, kuri puikiai sugeba suprojektuoti viską aptakiai ir tiksliai. Mes naudojame visas pažangiausias technologijas, įskaitant „React“, „Angular“ ir „Vue.js“.

Aptarkite kitą projektą - norėtume išgirsti jus!

Šis straipsnis iš pradžių buvo išspausdintas „Systango Technologies“.