Thoughts on versioning

Ola Fosheim Grøstad ola.fosheim.grostad at gmail.com
Wed Nov 3 07:57:15 UTC 2021


On Wednesday, 3 November 2021 at 02:23:05 UTC, Steven 
Schveighoffer wrote:
> Angular 2 was the break from AngularJS, and essentially the 
> start of the downhill slide.

Hm, I Angular 2+ looks like a massive improvement to me.

> I've only used angular for about 2 years (sporadically, for 
> work), and it's probably the worst framework of any language 
> I've ever seen.

I haven't looked at vue.js, but I find React to be a hack. It 
does not provide me with enough advantages and structure over 
plain TypeScript to offset the disadvantages.

> Since Angular 2, it requires a compiler to build your 
> javascript web pages, plus you are not writing html any more, 
> or using the browser's features, it all has to go through the 
> framework. The whole thing is extra complicated for the sake of 
> being complicated.

Ok, so I get your objections. Angular is most suitable for 
business-like applications like admin interfaces, where you get 
change requests from users frequently. What it does reasonable 
well is allowing you to build independent components that makes 
maintenance easier (so you work with HTML/CSS within one 
component). But you have to spend extra time on interfacing 
between components. Like, I've found that if I tailor 
data-structures to Angular then the code can be reasonably clean, 
so sometimes you are better off transforming received json into a 
datastructure tailored to the components you design. It can 
sometimes be a challenge to formulate the state of your 
web-client as rxjs streams if you want more advanced coupling of 
GUI-elements, so you have to adopt that mindset and use Angular 
for projects where it makes sense.

In my opinion, Angular becomes more attractive if you also adopt 
Material GUI. If you don't plan on maintaining the project for a 
long time, then Angular may not be worth the extra interfacing 
effort.

(I don't see the compilation requirement as a big deal. It can be 
set up to happen in the background, and I rarely use plain 
JavaScript anyway. TypeScript has taken over, and that also 
requires compilation.)



More information about the Digitalmars-d mailing list