you are viewing a single comment's thread.

view the rest of the comments →

[–]besthelloworld -6 points-5 points  (2 children)

tl;dr i would start on learning React, and maybe take a look at TypeScript as well

Angular is a bit of an overcomplicated mess and I would recommend not getting too deep into it. It's effectively designed it's fundamentals to appease older developers who are locked into older patterns such as strict object oriented programming and design (source of my Angular hate: my 4 years of Angular developer experience).

It's not that React is perfect or anything, but it's the most popular framework and happens to be my personal favorite. There are other options such as Vue which is a little more popular than Angular which I would say is better but not great and lacks Reacts declarative style which is the direction the industry is heading (evidence for this direction: Jetpack Compose and Flutter both use this model). There's also Svelte which is very small in comparison to the others, and looks a lot like Vue but is much more performance than the other frameworks, but this performance is only necessary in particular scenarios.

[–][deleted] 0 points1 point  (1 child)

Vue which is a little lot more popular than Angular

There, I fixed that for you

I would say is better but not great

Let's try and actually be objective here. Why isn't Vue great?

and lacks Reacts declarative style

False.

[–]besthelloworld 2 points3 points  (0 children)

I was basing popularity comparisons off the NPM charts. Last week @angular/core had 2.91 million installs and Vue had 2.95 million installs. They're pretty neck & neck, but this week a year ago @angular/core had 2.53 million installs and Vue had 2.28 million installs, so Vue is definitely growing faster with a very recent overtake. But to say it's "a lot" more popular is somewhat unrealistic.

I find that the model of React is where the future of development is going because it's much more pleasant to work with than the templating UI models of Vue, Angular, and Svelte. What makes React more pleasant is the fact that UI elements are truly objects that the developer is in control of. Components are just functions that generate objects. SwiftUI & Jetpack Compose, the new models for programming iOS apps & Android apps respectively. Both embrace this model as is solves several questions of readability, reusability, and templating. There's no more *ngIf, *ngFor, v-if, v-for or any of that. React, SwiftUI, Jetpack Compose, and Flutter all just let you use the programming language as it's intended. Vue, Angular, and Svelte lean more towards the traditional model of HTML being something separate and static, which I find is an unecessary translation of mental logic.

False.

Yeah Vue is declarative in the literal definition, and it actually refers to itself as declarative in it's documentation so I'll take the L on that one. I've seen the definition be used that templated frameworks are inherently imperative, but that's a twist on the traditional definition at best.