Our competences at your disposal on our blog
We love our job and we are glad to share it with you! Keep yourself fully informed about news and technologies we use to develop and which you may need! Follow our blog.
×

Error message

The spam filter installed on this site is currently unavailable. Per site policy, we are unable to accept new submissions until that problem is resolved. Please try resubmitting the form in a couple of minutes.
enrico.gramellini's picture

One of the emergent technologies in the IT field, which recently achieved resounding success, is Node.js, an open-source cross-platform.
Node.js is a platform that develops information systems and is oriented to performance optimization, offering developers tools which simplify their job.

Node.js was born as the ideal platform for the realization of web applications, it is based on the JavaScript language, one of the most common between the current web technologies, but above all it exploits its nature of language based on the event model, perfectly suitable for asynchronous programming. This aspect is the base of the innovation generated by Node.js as the changes occured into the web claimed as protagonist the interactivity component present inside the modern information systems.
Optimizing the performance means, in most cases, scaling every type of interactivity performed by the actors of the system.

Before Node.js, traditional technologies (as Java or PHP) used to develop these systems allowed a performance improvement based on the multi-thread model. Node.js instead proposes an event-based model that differentiates itself mainly for the asynchronous management of the I/O options.
The multi-thread model instead manages performances in a synchronous mode, this model is supported by the event loop, which runs tasks corresponding to asynchronous operations, taking advantage of a thread pool able to improve performances.

event-loop_0.png

All is offered at a platform level and the developer can write the source code of its system without worrying about its management unlike the thread-based model that, running the I/O operations in a blocking mode, forces the developer to use multi-threading programming techniques which are really tricky, complex and even a waste of memory.

JavaScript as well as being a language suitable for this programming paradigma, it is even a language very common in the web development field: Node.js has been successful since the beginning, especially for the resetting, almost total, of the technology learning curve by this target of developers. JavaScript users have the chance of learning to use, without particular efforts, a technology which helps them to develop the back-end of a web system.

Thanks to Node.js even JavaScript has debunked the server-side taboo inasmuch in the past had been proposed as a language for this software layer, even if rival technologies won against competitors exploiting the aspects of language performance and solidity. Recently, JavaScript improved in these fields, taking advantage of its nature to propose itself as an efficient alternative solution.

Another important aspect of the Node.js is the modularity, a simple mechanism that allows to add functionality to the platform, based on the needs of the software systems.
The wide development community that rotates around the JavaScript world allowed in short time the birth of many open-source modules to support others developers. This aspect played a fundamental role for the technology spread, but above all it underlines how much this characteristic makes Node.js a platform suitable for the modern software systems.

Add new comment

Filtered HTML

  • Web page addresses and e-mail addresses turn into links automatically.
  • Allowed HTML tags: <a> <em> <strong> <cite> <blockquote> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Lines and paragraphs break automatically.

Plain text

  • No HTML tags allowed.
  • Web page addresses and e-mail addresses turn into links automatically.
  • Lines and paragraphs break automatically.