Angular vs. Vue.js - Ръчно ръководство за сравнение

Съвременното развитие на предния край драстично се промени много през последните няколко десетилетия. Като преден разработчик, когато се сетя за съвременна разработка на преден план, ми хрумват три обещаващи технологии, които вярвам, че повечето от вас могат да гадаят с лекота -

  1. Google е ъглова
  2. Facebook реагира
  3. Vue.js

Всяко от тях идва със собствен набор от силни и слаби страни. Какво трябва да използвам за следващия си проект, трябва ли да е React или Angular или Vue.js е много често срещан въпрос, който трепне в съзнанието на всеки преден програмист.

Въз основа на моя опит, аз пиша този блог, за да сравня двама от най-големите играчи на пазара за разработка отпред, т.е. Angular (Като най-възрастният сред трите от тях) и Vue (Като най-младият сред дадената кохорта) и ще се опитам за да разберете отговора какво трябва да използвате в следващия си проект. Ако искате да намерите сравнение между и React и Vue.js, можете да го намерите тук в този блог.

Преди да започнем дебат за плюсовете и минусите на тези два, нека разгледаме историята на Vue и Angular.

ъглов

Angular е базирана на TypeScript JavaScript рамка. Разработен и поддържан от Google, Angular е пренаписаният, несъвместим наследник на AngularJS. Докато AngularJS първоначално беше пуснат през октомври 2010 г., а Angular беше представен през септември 2016 г. като версия 2.

Съществуват многобройни предимства на използването на Angular в уеб разработката на предния край -

  • Всичко е MVC

Основната идея зад Model View Controller или MVC е да се раздели приложението на 3 основни логически компонента. модела, изгледа и контролера, така че да изолира логиката на приложението от слоя на потребителския интерфейс.

  • Поддръжка на OutScript извън кутията

TypeScript е суперкомплект от JavaScript с поддръжка за проектиране и време за безопасност и инструменти. Наличието на типове прави кода, написан на TypeScript, по-малко податлив на грешки по време на изпълнение.

  • Собственост на Google

Поддържа се от технологичния гигант Google. Дава ъглова нова версия след всеки шест месеца.

  • Инжектиране на зависимости

AngularJS се предлага с вградена подсистема за инжектиране на зависимост, която опростява процеса на тестване на единица.

Vue

Vue също е рамка на JavaScript, която беше пусната за първи път през февруари 2014 г. от бивш служител на Google Evan You. Vue е най-бързо развиващата се JS рамка, особено без подкрепата на която и да е голяма компания. Vue наследява повечето от добрите неща както от React, така и от Angular и следователно някои техници го смятат за неофициално дете на Angular и React.

Има няколко предимства на използването на Vue в уеб разработката на предния край -

  • Той е малък размер

Размерът на тази рамка е 18–21KB и потребителят не отнема време да я изтегли и използва. Това не означава, че работата му е компрометирана - всъщност тя победи всички обемисти рамки като React.js, Angular.js и Ember.js.

  • Това е сравнително лесно

Лично аз съм голям фен на Vue. Много е лесно да се науча - всъщност успях да науча и адаптирам Vue в ежедневните задачи за развитие за по-малко от две седмици.

  • Документацията на Vue е похвална

Въпреки че не е подкрепена от многомилиардни организации като Google или FB, той все пак е успял да се развие за много кратко време и гарантира, че актуализациите не са толкова сложни, за да се накиснат, както беше при някои на другите доминиращи имена на пазара.

  • Предлага голяма доза гъвкавост

Тя дава възможност на своите потребители да напишат своя шаблон в JavaScript файл, HTML файл и чист JavaScript файл, използвайки виртуални възли. Тази гъвкавост също прави неизискваща разбирането за React, Angular или други разработчици на JS.

сравнение

Ето някои основни параметри, въз основа на които ще сравним ъгловата и Vue рамката -

  • Колко зрели са тези рамки?
  • Доколко те са съвместими с различния размер на приложенията?
  • Какво ще кажете за кривата на обучение за всяка от тези рамки?
  • Колко са приятелски разработчици / разработчици тези рамки?
  • Каква производителност очаквате от приложението?
  • Как можете да започнете да структурирате приложението си с избраната рамка?
  • Възможно ли е тази рамка да изпълни мащабируемостта на вашия проект?

Готови, старт!

1. Общност и популярност

Определено Angular е по-популярен сред големите компании. Той има голяма общност и задна поддръжка на Google.

Vue също бързо се разраства и през последните години спечели много сцепление от разработчиците.

Това е малка общност и няма голяма поддръжка на голяма компания

Говорейки за статистика-

В Github, Angular има> 41 000 звезди и 730 сътрудници, а Vue има почти 114 000 звезди и само 193 сътрудници.

Относно Github Stars, History for Angular, React и Vue, отново, Vue изглежда изглежда много добре. Според bestof.js Angular получава средно 37 звезди, а Vue 135 звезди на ден.

Източник: Среден

2. Синтаксис и дължина на кода

Докато работя и върху двете рамки, забелязах, че Angular използва по-сложен синтаксис, докато Vue е лесен за научаване поради неговата простота по отношение на синтаксиса. Времето, което отделих за да правя прости неща в Angular, е повече. Понякога сложността му често води до объркване.

Vue е лесен за научаване поради неусложнения си характер на синтаксиса. Тук синтаксисът е чист и чист. И идвайки от фона на JavaScript, за мен е доста лесно да науча Vue. Тъй като Angular използва TypeScript (използване на декоратори и инжектори), така че човек трябва да има основните познания за TypeScript или да е работил върху концепцията OOPS.

3. Структура

Ъгловата е по-структурирана и изработена. Принуждава разработчика да направи всичко по стандартен начин. Основно големите проекти за предприятия разчитат на Angular поради неговата предварително определена структура, която гарантира, че всеки предприемач следва същата архитектура.

Vue е по-гъвкав и позволява на програмиста да структурира проекта по желания от вас начин. Той позволява на потребителя да напише своя шаблон в HTML файл или Javascript файл. Можете да използвате Angular, ако вашите лични предпочитания са TypeScript и OOPS. Освен това Vue предоставя и машинопис за разработка на проекти, но в него няма много библиотеки.

4. Мащабируемост на кода

Когато ще имате масивна кодова база, Angular е добър по отношение на мащабируемостта на кода, защото като пълноправна рамка, той обвързва разработчика да разработи код в конкретна структура на кода.

От друга страна, Vue.js липсва списък на най-добрите практики за мащабиране. Няма конкретна структура на приложение, прилагана към потребители от Vue.js, които да следват, което е много важно, когато ще имате голяма база от кодове.

5. Вградени библиотеки

Тъй като Vue е нов, той има по-малко специфични за рамката библиотеки, така че трябва да включите изрично повечето библиотеки на трети страни.

Angular има толкова много специфични за рамката библиотеки и също така повечето библиотеки са включени по-рано в Angular-CLI проекта.

Например - Библиотеката като RxJS е вградена в Angular CLI проекти, но във Vue, трябва изрично да инсталирате други библиотеки, включително RxJS, за да работи.

Също така Angular има вградени специфични за API библиотеки, разработчикът не трябва да го инсталира изрично. Vue не идва с специфична за API библиотека и трябва да използва изрично AXIOS библиотека за разговори с API.

6. Изпълнение

Използването на концепция Virtual-DOM прави Vue по-перформентен в сравнение с Angular.

От друга страна, Angular използва часовници за предаване на данни.

Да започнем с Virtual DOM. Да приемем, че имате динамична таблица от n реда.

Сега нещо се променя в първия ред. Това, което повечето рамки правят, е възстановяването и повторното представяне на целия списък. Това е n пъти повече работа от необходимото, тъй като трябва да актуализираме само първия ред.

Нека не разгледаме какво ще прави виртуалният DOM в тази ситуация.

Преди всяко актуализиране, той създава копието на DOM и работи с това копие. Когато виртуалният DOM е актуализиран, той сравнява същото с по-старата версия, която е била заснета преди актуализацията и намира елементи, които трябва да бъдат актуализирани. След проверка на разликата, в реалния DOM се актуализират само онези части, които са променени.

7. Отвъд мрежата

Angular идва с Ionic и нативен скрипт за разработка на мобилни приложения. Vue е най-добрият избор за разработчици, които се наслаждават на местното мобилно развитие, използвайки Alibaba Weex и Vue-Native, но всичко това е доста ново в сравнение с Ionic.

Но нито една от тези мобилни рамки не им позволява да достигнат производителността на React Native.

резюме

Vue.js е много лека и лесна за научаване рамка, която ви позволява да създавате зашеметяващи приложения по свой начин. Той не е толкова известен като Angular (поддържан от Google) сред разработчиците, но със сигурност създава големи вълни от промени. Може да не знаете, но общността на Laravel също го смята за една от предпочитаните от тях предни рамки. Ъгловата е много развита рамка и има няколко инструмента направо извън кутията. Можете да решите какво да изберете въз основа на по-долу ключови точки-

Ако все още не можете да решите, първо научете Vue, а след това Angular.

Ние от Systango имаме група от експертни разработчици на преден и пълен стек, които всички умеят да проектират всичко елегантно и остро. Ние използваме всички авангардни технологии, включително React, Angular и Vue.js, за да създаваме възможности и безпроблемно онлайн изживяване.

Обсъдете следващия си проект - ще се радваме да чуем от вас!

Тази статия първоначално е публикувана в Systango Technologies.