AngularJS zorgde in 2010 voor een enorm ‘wauw effect’ omdat ingewikkelde applicaties vrijwel automatisch beschikbaar waren voor ontwikkelaars binnen het AngularJS framework; zo was het opeens mogelijk om real-time data te vernieuwen zonder de pagina te verversen (data-binding) en waren verschillende, eerder geschreven JavaScript onderdelen vrij eenvoudig te implementeren, dankzij de ‘dependency injection’. Met deze structuur werd een applicatie overzichtelijk, beter te onderhouden en goed te testen.

Van AngularJS naar Angular, hoe en waarom?

Zes jaar later, in 2016, is Angular 2 uitgebracht. Vrijwel direct werd duidelijk dat Google, de maker van AngularJS en Angular, van het traditionele JavaScript af wilde. Naast het verwijderen van de letters ‘JS’ (ook wel JavaScript) uit de naam stappen ze over op TypeScript en ontstond Angular 2. Als men over Angular spreekt bedoelt men Angular versie 2 of hoger en niet AngularJS.

Het grote voordeel van TypeScript ten opzichte van JavaScript is dat TypeScript een heleboel kan afdwingen in de programmatuur en werkt met een ‘Object-oriented Programming’ structuur. Simpel gezegd betekent het dat TypeScript in bijna elk geval overzichtelijker is dan JavaScript zodra een applicatie uit meer dan 100 regels code bestaat.

TypeScript is op JavaScript gebaseerd en ondersteunt dus ook gewoon JavaScript; TypeScript is echter strikter en overzichtelijker, maar ondersteunt ook nog steeds het oude bekende JavaScript. En dat was in 2016, en is nu nog steeds, een mooie bijkomstigheid voor een eventuele migratie van AngularJS naar Angular.

Waarom werkt Angular beter dan AngularJS?

Met de komst van Angular is bijna het gehele Angular framework herschreven. Er zijn natuurlijk een aantal overeenkomsten met het oude AngularJS maar het merendeel is opnieuw geschreven door Google.

‘Would they rewrite the framework if it already was good?’

Het antwoord is: nee.

Wat is er dan zoveel beter aan Angular?

  • Angular werkt vooral met native onderdelen van de browser. In AngularJS zijn veel technieken nog speciaal geschreven voor het framework en dit kon zorgen voor problemen omdat dezelfde techniek niet altijd werkte met elke browser op elk device. Dit verschil alleen al zorgde voor enorme performance verschillen in vergelijking met AngularJS omdat de techniek voor de browsers al bestond.
  • Angular is volledig gebaseerd op componenten. Componenten zijn losse onderdelen code die qua code, template en styling op zichzelf staan. Het is dan mogelijk om een component los te onderhouden en zelfs op meerdere plekken te implementeren. Dankzij deze componenten is de hiërarchie duidelijk en maakt het de applicatie overzichtelijk en onderhoudbaar.
  • AngularJS was er niet op bedacht om goed te werken op mobiele apparaten; Angular juist wel. Angular is mobile-first.
  • Angular is geschreven op Object-oriented programming (OOP) en daarom enorm geschikt voor grote applicaties dankzij het overzicht en de onderhoudbaarheid.
  • AngularJS was gefocust op de designer, Angular is gefocust op de ontwikkelaar. Door het toevoegen van de verschillende, geautomatiseerde commando’s, support voor TypeScript en het gemakkelijk maken van het testen van code, heeft Google zowel de developer als de applicatie-eigenaren enorm geholpen. Alle ontwikkelingen blijven overzichtelijk, gemakkelijk te implementeren en schaalbaar om mee te werken.
  • Dankzij de losse componenten zitten designers en ontwikkelaars elkaar niet in de weg. Dit betekent technisch gezien: Het gebruik van dezelfde data attributen en classes zorgt niet direct voor conflicten of corrupte lay-outs omdat Angular elk component tot en met de DOM in de webbrowser uniek houdt en de DOM zelfs manipuleert om de scheiding in styling te behouden.

Wat te doen met eerder gebouwde applicaties in AngularJS?

Maar wat doe je nu met je applicaties die in AngularJS zijn gemaakt? Hoe ga je verder als deze applicatie aangepast of uitgebreid moet worden.

Blijf je AngularJS gebruiken? Of stap je over naar Angular?

De overstap naar Angular zorgt er voor dat je applicatie beter en toekomstbestendiger wordt. Er zijn een aantal manieren om deze overstap te maken.

Je kunt de volledige applicatie opnieuw bouwen in Angular en de hele applicatie in 1 keer migreren. Dit brengt echter wel een flinke investering in tijd en geld met zich mee. Het is ook mogelijk om in eerste instantie alleen de nieuwe functionaliteiten in Angular te bouwen zodat er een hybride situatie ontstaat. Langzamerhand kan dan de gehele applicatie stukje voor stukje omgezet worden naar Angular.

Vanuit Thesio Software Factory hebben we al diverse klanten advies gegeven over de beste weg om een dergelijk traject tot een succes te brengen. Iedere applicatie heeft zo zijn specifieke uitdagingen en het advies is dan ook voor elke organisatie uniek. Thesio Software Factory beschikt over een team van ervaren developers met veel kennis van zowel AngularJS als Angular die als geen ander weten wat er komt kijken bij een migratie.

Kortom, er zijn veel mogelijkheden. Wil je meer weten over de opties voor jouw applicatie of wil je weten hoe een omzetting naar Angular gedaan kan worden? Neem dan contact met ons op, we verdiepen ons graag in jouw situatie zodat we de beste oplossing kunnen bieden!