Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What are the differences between Backbone.js and Node.js? And which is best? [closed]

I'm feeling a bit confused, there are so many frameworks out there for Node.js related 'stuff'. Would someone be able to give me an overview of What are the differences between Backbone.js and Node.js? And which is best? Thanks in advance.

like image 441
Mohit Kumar Avatar asked Mar 21 '13 08:03

Mohit Kumar


People also ask

Should I use backend or node JS?

Python is recommended for backend development. However, you could use Node. js both for backend as well as frontend development.

Do people still use Backbone JS?

Backbone. Backbone has been around for a long time, but it's still under steady and regular development. It's a good choice if you want a flexible JavaScript framework with a simple model for representing data and getting it into views.

Why node js is best for backend?

Node. js is very good at handling simultaneous connections. Since IoT is built on many devices sending small messages that must be handled quickly, Node. js makes a good backend for these kinds of applications, providing serverless architecture and real-time communication support.

Is JavaScript better for backend?

As you might have heard about JavaScript, it is one of the most preferred and commonly used backend technology. JavaScript has shown a significant rise in its usage, since it speeds up the development, making it more time and cost-effective by unifying the codebase. Node.


2 Answers

I am quoting it from a couple of sources here:

Firstly, to quote from the stack overflow question here:

Most of the things you listed are related only because they are written in or otherwise use JavaScript. Comparing them is much like comparing apples to oranges. It's like asking what the difference is between a Toyota Camry and a V6 engine. They are related, but do different things.

Node

Also known as Node.js, Node is the JavaScript environment on which we run our server-side JavaScript code. It is based on the V8 JavaScript engine. All of the JavaScript code you write, or install and run from packages from NPM, GitHub, etc. is executed by the Node runtime environment.

Backbone

Backbone can be likened to as a Model-View-Controller framework for JavaScript. I believe it was originally written for the browser; it helps keep your client-side JavaScript clean by implementing most common MVC patterns (as well as a couple other things), allowing you to more easily connect your client-side JavaScript to your server-side code.

Also, this is from an answer for the same question on Quora. Credit goes to Drew Harry:

They're almost completely unrelated. Traditionally, Backbone.js is a client library and Node.js is a way to write server-side applications in Javascript. Backbone aims to be a model + view system for binding data models with DOM elements that represent that model visually in a web page. Backbone also provides Collections of Models, as well as a bunch of utility functions for synchronizing those models with their server-side representations.

Node.js is just the v8 Javascript run-time environment packaged with a standard library to do useful server-side things with Javascript. There are lots of packages designed for Node (check out npm for ways to easily install those packages, Backbone included) that extend it to do all sorts of interesting things. It's possible to use Backbone.js with Node.js, but Backbone isn't particularly designed with use on the server in mind.

Go and upvote the above answer(s) if you find the material helpful.

like image 162
Bharadwaj Srigiriraju Avatar answered Oct 08 '22 20:10

Bharadwaj Srigiriraju


Pretty much the only things those two have in common is that they're Javascript based and have a lot of hype surrounding them (not undeserved though).

node.js is a framework for Javascript server applications. It includes the V8 Javascript engine developed for Chrome. It's asynchronous and event-driven, so it's ideal for serving large numbers of small requests.

backbone.js is a framework for client-side web applications, specifically for so-called "single page web applications" where only a single HTML page is sent to the browser at the beginning, and every interaction thereafter is handled by AJAX requests and Javascript logic that transforms the page.

This means that the two can also work effectively together: an app implemented using backbone.js for the frontend could have its AJAX requests handled by a server part using node.js - a rather popular combination since it allows you to have an entire web app using only Javascript.

like image 11
Michael Borgwardt Avatar answered Oct 08 '22 22:10

Michael Borgwardt