We are not going to explain what Dot Net core is, or what Angular is. To be honest you are probably here because you know about both and are looking for guidance.
For the past few days our team has been trying to work out if Dot Net Core is worth using yet, and if Angular2 can offer a nicer user experience on a dynamic website.
The short answer is potentially.
I’ll split my article into two sections and keep it brief.
Visual Studio 2015
Visual Studio 2015 using TypeScript (fairly essential for Angular2 development) and Angular2 is essentially rubbish and broken. Firstly you have to find and follow a load of tutorials on how to set the thing up to work with TypeScript, options to tick, CMD line operations, third party installs, and all sorts.
The whole experience of setting up VS2015 and dot net core 1.0 RTM for use with Angular2 RC is aweful. This is not helped by a load of articles on the net that look great, but in practice point to older versions of Angular, TypeScript, or .Net Core itself.
So after a while you might have everything setup and get your first Angular 2.0 RC3 project working with a hello world type program. The problem comes when you try and do anything further, like hitting a web service for data and binding it. Again, the final result isn’t too dificult, but it’s made harder by Microsoft changing the case of the properties returned in JSON, and again most of the tutorials reference Angular2 pre release candiates and not post. So while the end code is similar, and while you can attempt to follow the examples, most of the code needs tweaks and changes. We found ourselves following the release notes for Angular to get the changes made in RC working.
VS2015 crashes like a dog constantly. Editing TypeScript Files, renaming them or moving them can often cause it to crash at an alarming rate. Bad Microsoft…..
Angular 2 RC3
I love the concept of angular and the databinding like capabilities. I love the fact that if the object changes the UI reflects instantly.
Coding in Angular will take time to learn, and it will take lots of time to master. The biggest problem right now are the old articles on the net relating to old versions of Angular 2 beta. These really need removing or updating. It makes the whole process a nightmare. Angulars own site isn’t bad for learning, but it only really covers the basics.
Net Core
I do see why Microsoft are going down the route of platform independance but I do feel that the pain from it for us early adoptors will be in vein. I can see Microsoft changing a whole lot and maybe with VS2016/17 we’ll see a better environment that feels like it fits net core. At the moment it feels unfinished state.
Most, like me will probably learn some of net core, and maybe try angular and probably go, what the hell was I thinking. The old .net framework was awesome, it worked, visual studio didn’t crash and you could write reliable code quickly and easily. But in the end Microsoft will probably slowly convince developers net core is the way forward.
As developers we need to keep our skills upto date, and I go with that 120%. However I think some companies asking for Angular on their job descriptions are obviously driven by developers want to learn and not the need to deliver a working solution to a problem. I can’t help but worry for all the teams out there working with Angular (probably version 1), that will not be able to progress easily to version 2 without a massive re write. Those using version 2 now will see similar pain as more release candidates come out. Personally, it’s too soon, buggy, un reliable, un sortable, mess.