„Angularjs vs Angular2 | koks skirtumas?

KampinisJS

Žvelgiant atgal, atsirado galimybė sukurti labai pažangias žiniatinklio programas, naudojant gryną „JavaScript“ API, tačiau išlaikyti pradinę kodų bazę ir išbandyti ją buvo tikrai sunku. Tada 2010 m. „AngularJS“ buvo pristatytas kaip „JavaScript MVW Framework“. Tai turėjo didelius medžio privalumus, dėl kurių žmonės jį pamėgo:

  • Kodo gamyba buvo nepalyginamai greita
  • Kiekvienas pritaikymas buvo lengvai išbandomas
  • „Google“ buvo projekto pradininkas

Yra ir kitų dalykų, dėl kurių „Angular“ yra toks geras programuotojams. Pirmasis yra dvipusis duomenų įrišimas. Kampas leido pamatyti „JavaScript“ pakeistus duomenis, kad jie automatiškai atsispindėtų vartotojo sąsajoje. Iš pradžių tai buvo daug lengviau vystyti, nes nebereikėjo koduoti, išskyrus tinkamo valdiklio susiejimą su HTML dalimi. Antrasis privalumas, kurį „Angular“ suteikia programuotojams, yra direktyvos. Jie yra atspirties taškas visiems komponentams, kuriuos dabar matome šiuolaikiniame priekyje. Direktyvomis buvo leista, kad kodą būtų galima daug daugiau naudoti ir atskirti kaip niekad anksčiau. „AngularJS“ privertė įšvirkšti priklausomybę ir tai padėjo išjuokti priklausomybes. Dėl jo pasirodymo rėmuose „Angular“ padarė didžiulį žingsnį į priekį, išbandydamas „end-end“ programas.

Visi šie pranašumai paskatino vis daugiau ir daugiau kompanijų perrašyti programas iš savo pačių sprendimų, pastatytų ant kitų bibliotekų viršaus, į „AngularJS“.

2 kampas

„AngularJS“ yra puikus būdas paleisti programą ar MVP. Augant populiarumui ir vis daugiau ir daugiau funkcijų pasiekiančių esmę, „Angular“ komanda nusprendė perrašyti originalią sistemą, pristatydama „Angular 2.“. Kai kurie sako, kad „Angular 2“ ir „AngularJS“ turi tik vieną dalyką: pavadinimą. Yra pereinamasis kelias (vadinamas ng-upgrade) iš „AngularJS“ į „Angular 2.“. Tačiau „Angular 2“ vis dar yra visiškai nauja sistema, kuria dalijamasi tik kai kuriomis savo pirmtako sąvokomis.

Visa kampo 2 struktūra pasikeitė. Anksčiau tai buvo MVC sistema, leidusi kurti programas pagal gana glaudžiai susietus subjektus, tokius kaip valdikliai, rodiniai, paslaugos ir pan. Visa „AngularJS“ architektūra atrodė taip:

img - ng1 architektūra

Dabar direktyvų koncepcija buvo perkelta toliau, kad ji būtų daug arčiau interneto komponentų standarto ir „React“ būdo struktūrizuoti taikymą. Viskas apie 2 kampo komponentus. Tai reiškia, kad visa programa dabar yra komponentas, kuriame yra kitas komponentų rinkinys (kuris gali būti keičiamas). Tai baigiasi medį primenančia struktūra:

img - ng2 architektūra

„Angular 2“ programos architektūros tikslas yra sukurti kuo mažiau susietus komponentus, kurie nepriklausytų vienas nuo kito.

Svarbu pristatyti du komponentų kūrimo būdus:

  • Išmanieji komponentai: Jie žino apie programos būseną ir gali susisiekti su tarnybomis, norėdami gauti ar modifikuoti duomenis.
  • Nešvankūs komponentai: Jie turėtų turėti tik įėjimus ir išėjimus. Pateikdami tinkamas įvesties reikšmes, jie yra pasirengę būti dedami bet kurioje sistemos vietoje (ar net už jos ribų) ir neturėtų žinoti apie programos būsenos egzistavimą.

Spektaklis

Turėdami tokį komponentų medį, eksploatacinės savybės labai skiriasi. „AngularJS“ tikslas nebuvo sukurti efektyviausią pagrindą, o paprasčiausias - įvesti. Kadangi našumas tapo labiau problema, „AngularJS 2“ buvo įvestas problemai išspręsti. „AngularJS“ turėjo suvirinimo ciklą, kuris leido pakeitimams sukelti atnaujinimus aukštyn ir žemyn. Kita vertus, 2 kampas turi kryptinį komponentų grafiką, kuris visada tikrinamas vieną kartą (dėl vieno skersinio kelio nuo šaknies iki lapų). Anot „Angular“ komandos narių, šie pakeitimai leido „Angular 2“ programoms veikti 3–10 kartų greičiau nei tos pačios programos, sukurtos naudojant naujausią „AngularJS“.

Ekosistema

Iš pradžių paskelbta www.laravelfeed.com.