Skip to main content

NodeJS

Question : Why You should use Node JS?
Answer : Following are the major factor influencing the use of the NodeJS
Popularity : The popularity can be important factor, as it has more user base and hence solution 
of any common problem faced by developer can found easily online, without any professional help.

JavaScript at all levels of the stack : A common language for frontend and backend offers several potential benefits:

  • The same programming staff can work on both ends of the wire
  • Code can be migrated between server and client more easily
  • Common data formats (JSON) exist between server and client
  • Common software tools exist for server and client
  • Common testing or quality reporting tools for server and client
  • When writing web applications, view templates can be used on both sides


Leveraging Google's investment in V8 Engine.

Leaner, asynchronous, event-driven model


Microservice architecture


Question : example of node JS code?
Answer : 
const fs = require('fs');
const util = require('util');
const fs_readdir = util.promisify(fs.readdir);

( async () => {
    const files = await fs_readdir('.');
    for(let file of files ){
        console.log(file);
    }

})();

Question :  Example to read the content from the command line
Answer  : 
code
console.log(process.argv[2] ? process.argv[2] : 'No Arguments passed');

command line
/usr/local/bin/node /Users/vcmishra/central-api/db> test.js hello

Question : create a basic server?
Answer

const http = require('http');
http.createServer((req,res)=>{
    res.writeHead(200, {'Content-Type': 'text/plain'});
    res.end('Hello, World!\n');

}).listen(1234,'127.0.0.1');

Question : Is require a async or sync?
Answer : sync.

Question : Give example of module.exports
Answer :
File 1 : the methods are created
module.exports.hello = ()=>{
console.log('hello');
};

module.exports.hi = ()=>{
console.log('hi');
};

File 2 : it is imported and used
const greetUtil = require('./test');
greetUtil.hello();
greetUtil.hi();

The function can directly called if imported this way

const hello = require('./test').hello;
const hi = require('./test').hi;
hello();
hi();


or alternatively can be called like as follow
require('./test').hello()
require('./test').hi()

Another way is

File 1 :
module.exports = {
hello: () => {
console.log('hello');
},
hi: () => {
console.log('hi');
}
};

File 2 :
There may not be needing any change, but alternativly using the es6 destrcutring you can also use as follows :

const { hello, hi } = require('./test');
hi();
hello();


Another example using destructuring
File 1
exports.util = {
hello: () => {
console.log('hello');
},

hi: () => {
console.log('hi');
}
};


exports.autil = {
hello: () => {
console.log('a hello');
},

hi: () => {
console.log('a hi');
}
};


File 2 :
const { hello, hi } = require('./test').util;
const { hello : aHello , hi : aHi } = require('./test').autil;

hi();
hello();

aHi();
aHello();

Pay attention to the second line where, we are renaming the hello and hi from the autil to avoid the conflict between previously imported hi and hello from util.








Comments

Popular posts from this blog

Kubernetes

What is Kubernetes? Kubernetes is a portable, extensible, open-source platform for managing containerized workloads and services, that facilitates both declarative configuration and automation. It has a large, rapidly growing ecosystem.  The name Kubernetes originates from Greek, meaning helmsman or pilot. Google open-sourced the Kubernetes project in 2014. Kubernetes combines over 15 years of Google’s experience running production workloads at scale with best-of-breed ideas and practices from the community. Why you need Kubernetes and what it can do? Containers are a good way to bundle and run your applications. In a production environment, you need to manage the containers that run the applications and ensure that there is no downtime. For example, if a container goes down, another container needs to start. Wouldn’t it be easier if this behavior was handled by a system? That’s how Kubernetes comes to the rescue! Kubernetes provides you with a framework to run distributed systems ...

11 - JPA/Hibernate Interview Questions

Why Hibernate? Answer : In Short it helps you solve some problem which indirectly comes when you are using JDBC 1. Help you to avoid lots of boilerplate code. 2. Helps you to avoid doing any Connection Management and Transaction Management explicitly. 3. Helps you DB Developer to do exciting things rather than helping the Junior or Mid Level engineer for writing native query. 4. It creates two way data binding between your table and POJO i.e. any change in POJOs's reflects in db table and any changes in db table reflects in application POJO, i.e. objectifies the data layer. 5. Future Proof : Very minimal effort needed to migrate the one database type to another. 6. When you want to do lot of business operation on your POJO's, and you want those POJO's to be handy. When Not to use Hibernate? Answer : Few points to be seen before introducing the Hibernate into your application 1. If you do not have Persistence Layer, there is no use of Hibernate. 2. Legacy ...

expressJS

  const app = express(); /** * Changes made to enable CORS */ const allowCrossDomain = (req, res, next) => {     res.header('Access-Control-Allow-Origin', '*');     res.header('Access-Control-Allow-Methods', 'GET,PUT,POST,DELETE');     res.header('Access-Control-Allow-Headers', 'Content-Type, Authorization, token');     // intercept OPTIONS method     if ('OPTIONS' == req.method) {         res.sendStatus(200);     }     else {         next();     } }; //Allow cross domain. app.use(allowCrossDomain);