Sololearn: Learn to Code
New course! Every coder should learn Generative AI!
Try a free lesson
+ 20
rudolph flash I encourage professional developers to be comfortable and proficient with both for building RESTful APIs. There are a number of pros and cons based on different scenarios and types of apps you're building. Ultimately, both options are equally capable and powerful. If forced to make a choice between the two, I, personally, would go with ASP.NET Core WebAPI + C#, especially with more complex architectures. Still yet, NodeJS and npm are used for tooling our frontend ReactJS project which consumes the ASP.NET WebAPI Service. Interestingly, before Morpheus joined the team, we originally implemented our RESTful API using NodeJS with Sails JS. Our development iterations were much quicker early on with NodeJS. However, the more complex the app became, the more difficult it was to refractor. As development began to slow down and become more painful, we decided to rewrite the API using ASP.NET. That said, I would blame Sails JS more than NodeJS on the issues. I hope that hope this helped.
8th Jul 2019, 7:28 PM
David Carroll
David Carroll - avatar
+ 16
Regarding commercial license I am not sure and David Carroll can help me out. But it doesnt seems like we need to pay anything for writing C# and using the SDK. Its just the tools(VS) and OS license that cost money. https://stackoverflow.com/questions/663923/do-i-have-to-pay-a-fee-to-develop-or-deploy-a-net-application But dotnetcore changes everything, and with it we can do development in any platform(Linux, Mac) free of cost. https://docs.microsoft.com/en-us/aspnet/core/?view=aspnetcore-2.2 @David Thank you for covering the Node vs ASP.NET part. I would like to add, that our RESTful Api organization and code was tough to get but now I see the beauty in it while writing tests and adding new REST endpoints. This video on clean architecture was shared with me in the start by David, I still see it and realize oh that's why he did like that, still many Eureka moments left from this video that I have to absorb. (Specially on the Infrastructu https://www.youtube.com/watch?v=_lwCVE_XgqI&feature=youtu.be
8th Jul 2019, 8:32 PM
Morpheus
Morpheus - avatar
+ 15
Nodejs struggle, lets tackle that first. This free but awesome beginner course on Nodejs will t help build the basic understanding of Nodejs modules and how to play with popular npm packages to make a simple REST API. https://www.youtube.com/watch?v=w-7RQ46RgxU Take this after digesting previous course (Paid, was 10$ for me and every cent worth it, pricing is country based). https://pirple.thinkific.com/courses/the-nodejs-master-class Now this course is pure Nodejs and no NPM drama, you make 3 projects using raw Nodejs modules as how it should be in the start (without expressjs or sailjs) during learning. - RESTful API - Web app GUI - Making a CLI - Pick up stability and performance tricks - Some other loose ends. After this course one will be highly confident in their JS prgramming and Node Environment knowledge. They ll be able to make many simple server side applications from scratch. (I still have to finish the last 3, so I am missing a lot)
8th Jul 2019, 8:02 PM
Morpheus
Morpheus - avatar
+ 15
Going big in node is tough, but ASP. NET is doing it pretty well. Although I do remember a speech from Netflix CTO or senior manager or someone that how making small independent microservices using Node helped them to keep up with demand and scale well quickly. I can't find that video but this one also covers the Node benefits at Netflix https://www.youtube.com/watch?v=p74282nDMX8 meahwhile I ll try to find that one I saw
8th Jul 2019, 8:40 PM
Morpheus
Morpheus - avatar
+ 10
Calviղ The author of that article lost all credibility and was out of his depth the instant he began trying to write about asynchronous vs synchronous, non-blocking vs blocking, single threaded vs multi-threaded, performance and scalability, etc. He obviously has no understanding of these concepts and presents a lot of inaccurate information and an assessment based on ignorance. I just wanted to clarify this is a bad article to refer to based on the author's very limited understanding.
9th Jul 2019, 4:54 AM
David Carroll
David Carroll - avatar
+ 9
No commercial license is required for .Net ... if you're talking about visual studio, then it's free to use if you/you're company make less than $1 million per year, otherwise just have a look at the VS licensing terms. As for node vs .net, I haven't used node, but have done full-stack with .net (and .net core). With .net core you dont need a windows server anymore. You can use any linux distro if you prefer instead. Most arguments I've read against .net core are unfounded or refer to older frameworks that require a windows server. Historically, yea, .net wasnt very friendly to non-windows based developers, but they've made huge steps in the right direction. I'm in the process of finalizing a .net core app for my employer that's replacing a php/laravel application. The performance of the new app vs the old is awesome. Mind you I also optimized a lot of database calls and reduced how many requests are made to build viewmodels etc. but either way, if you look up some benchmark tests you'll see what I'm saying
8th Jul 2019, 11:03 PM
Mike
Mike - avatar
+ 8
Angular JS: It is a front-end framework and can be used with any backend programming language like PHP, Java etc. Angular JS runs on the client browser Node JS: It is simply a server-side language, in a web application like context it acts as a Java on the server side. ..Node JS runs on the server side.
9th Jul 2019, 7:39 AM
Aditya
Aditya - avatar
+ 8
I am also curious, regarding the failure of Nodejs servers. I did read/heard somewhere that Nodejs is not able to handle large concurrent requests very well. But I never tested it myself. But in theory the single threaded( node does spawn threads internally though), non-blocking async I/O of Node is awesome. Supposedly it should work nicely in today's practices where the goal is to optimize cost in cloud hosted servers. https://stackoverflow.com/questions/34855352/how-in-general-does-nodejs-handle-10-000-concurrent-requests I am very curious now to perform load testing on a REST api from both node and ASP.NETcore. I have lots of free credit left in my GCP account, I will try to set up 2 machines with equal specs and run the tests. This will be my first attempt, and I have no prior experience in load testing so any help will be highly appreciated. If it's ok we can meet up as well to do it together. The results will be interesting.
9th Jul 2019, 9:54 AM
Morpheus
Morpheus - avatar
+ 7
I skipped the description part am sorry 😔
9th Jul 2019, 7:58 AM
Aditya
Aditya - avatar
9th Jul 2019, 4:05 AM
Calviղ
Calviղ - avatar
+ 5
rudolph flash imo you can make any language a SPA ... no matter how you look at it, a web app is going to use js (whether using a framework or vanilla js). Furthermore, I know devs that use angular and other frameworks in conjunction with .net core. Making use of ajax/fetch requests and partial views in .net core can give you the SPA feel you're looking for. I personally like using plain old javascript with .net core ... fetch with js works just fine.
9th Jul 2019, 10:09 AM
Mike
Mike - avatar
+ 5
Morpheus it's depends how efficiency the developer write the node.js codes. Node.js codes run in best performance if the code execution period is short. It's best for building rest-api server. https://medium.com/dev-bits/writing-memory-efficient-software-applications-in-node-js-5575f646b67f
9th Jul 2019, 10:10 AM
Calviղ
Calviղ - avatar
+ 4
Node is basically server side JavaScript code you say that. With node you are easily create webapi with express and also easily connect with nosql. Apart from these you also use npm very broadly in angular or react. also if you compare with asp.net then both are different. Asp.net also a good option for server side coding like mvc and .net core is very enhanced
9th Jul 2019, 2:30 PM
Rohit Kumar Srivastava