Angular wat een ramp

okt 162017

Angular is een framework om webapplicaties te ontwikkelen. De afgelopen 8 maanden heb ik hier mee leren werken. In dit stukje belicht ik waarom ik Angular liever niet meer voor een volgende applicatie zou inzetten.

Typescript
Typescript is een nieuwe "taal" die je moet leren om een Angular project te bouwen. Het lijkt er op of men wil proberen een statische manier van programmeren in javascript te krijgen. Een hopeloze poging javascript aantrekkelijk te maken voor C# ontwikkelaars. Typscript wordt door een parser weer in javascript vertaald. Deze parser zorgt er, tijdens ontwikkelen, voor dat het even duurt voordat je na een aanpassing de wijziging op je webpagina ziet. Een verandering in javascript zie je direct na een refresh van je webpagina. Niet alle editors ondersteunen typescript. Je bent aangewezen op Atom met plugin, Visual Studio Code of WebStorm. Niet alle browsers ondersteunen typescript debugging.

Package hel
Met de package manager npm kun je van allerlei modules aan je project toevoegen. Kijk hier mee uit. Ik heb bij de migratie van Angular 2 naar 4 best veel moeten herschrijven. Zo kan het zijn dat een package niet langer wordt doorontwikkeld. Of de ontwikkelaar heeft wijzigingen aangebracht die er voor zorgen dat je website niet meer werkt. Bijvoorbeeld bij Angular Material tags en modules beginnen in eens met <mat.. en Mat.. i.p.v. <md.. en Md.. . De documentatie bij veel packages is ronduit slecht. Zo moet je er vaak zelf achter zien te komen dat je afhankelijkheden (Modules) nodig hebt. Er is een complete wildgroei van packages op o.a. npmjs en github waar niet meer uit te komen is.

Overgecompliceerd
Door een brei aan technieken (modules, directives, routes, observables, nodejs, npm, ng) is het een complex raamwerk. Overgecompliceerd naar mijn idee. Je bent vrij lang bezig om Angular onder de knie te krijgen. Een framework zou werk uit handen moeten nemen, niet complexer moeten maken.

Conclusie
Voor de ontwikkeling ben je afhankelijk van Chrome als browser en debugger. Gezien Chrome een groot privacy lek is (Google) is dit een grote min. Javascript is prima te doorgronden en te structureren, typescript is een overbodig verzinsel. Structuur in je projecten kun je zelf ook aanbrengen daar heb je Angular niet voor nodig. En als je eenmaal alles een beetje door hebt in Angular ben je niet productiever dan wanneer je alleen javascript zou gebruiken. Dus als je snel websites wilt ontwikkelen laat Angular dan links liggen.

Er zijn geen gepubliceerde reacties.

Nieuw bericht