I’m very lucky that my new job uses Angular 2. I thought it would be useful to write up my Angular 2 First Impressions after following the Tour Of Heroes Tutorial.
Full Disclosure – I’ve been using React.js for the last year. At the moment, although I like Angular 2, I prefer some of the decision in React.js. But, I’m trying to keep an open mind. After all, this might be a classic Volcano vs Dante’s Peak or Deep Impact vs Armageddon scenario. You prefer the one you saw first!
The static type checking and intellisense you get from TypeScript is great. I’ve been struggling with flow on Windows on and off for a couple of months. So much so that I’ve given up. TypeScript “just works”. Big plus.
There are a lot of different types of object. The tutorial does a good job of introducing and explaining them. But the naming convention is “strange”. For example, we end up with:
I’m sure there’s a reason, but I missed it during the tutorial. Like I say, minor point.
Where to put code
This is more related to the tutorial than Angular 2. Several times in the tutorial I didn’t know where to put the code it was telling me to. I resorted to trying in the
@Component and if that didn’t work, trying the
Might my ability to read and comprehend, but it could’ve been clearer.
The quickstart repo was missing a `
The Services part of the tutorial warns “Don’t forget the parentheses! Neglecting them leads to an error that’s difficult to diagnose.” Wow, are they not kidding!
The error messages are mind blowing! For example:
And that’s a good one. Most of the errors I saw were (at my current skill level) impossible to even find something to google for. And that’s if you get an error message. There are way too many silent failures for my liking.
In conclusion, I like Angular 2. The fact that it’s a complete framework seems to mean there are a lot less decisions to make. Need a router, use ‘@angular/router’. Need HTTP Services, use ‘@angular/http’. And the list goes on. That can’t be said for React.js.
I’m looking forward to learning more and can’t wait to see what I can build.
If I’ve missed the point on something, or you can help with some suggested reading. Please leave a comment below.