MongoDB

Now a day’s organizations are mainly handling with Big data. The tradition relational database systems will not able cater those big data architectures. Rather going through with tradition relational database system, NoSQL database used as a solution to handle big data. So Basically MongoDB is a example for NoSQL database.

What is Mongo DB?

  • NoSQL Database program & Open source
  • Cross-platform- documented-oriented database program
  • Which is available in English
  • Uses JSON with schemata

MongoDB history

Initially MongoDB released in year 2009, February 11th by MongoDB Inc. In year 2017 on October 20th MongoDB became publicly traded company. In year 2019 on March 13th MongoDB released it preview release and same year on March 29th it came up with stable release.

Does MongoDB Cross-platform?

Yes, MongoDB is Cross-platform. Because it can be run on

  • Windows Vista & later
  • Linux
  • OS X 10.7 & later
  • Solaris
  • FreeBSD

What does MongoDB used as technologies?

MongoDB has been written by using following languages

  • C++
  • Go
  • JavaScript
  • Python

 MongoDB Production

  • MongoDB Atlas – run on AWS, Microsoft Azure and Google Cloud
  • MongoDB Community Server – This is available and free for Windows, Linux and OS X
  • MongoDB Enterprise – this is the commercial edition of MongoDB

Who are using MongoDB?

  • Uber
  • NOKIA
  • Adobe
  • Coinbase
  • Telefonica

Key Features of MongoDB

  • Capped Collection – supports fixed sized collection which allows to maintain insertion order
  • MongoDB Indexing – indexes are creating for purpose of improving performance of searching
  • File storage – used file system with load balancing and data replication
  • Replication – distributing data across different machines
  • Schema – Less – because of this MongoDB is become more flexible than traditional databases.

REST Architecture

What is REST?

  • REST represents Representational State Transfer
  • Is a software architectural style and its not a system architecture
  • Used for development of web services

History of REST Architecture.

Roy Fielding came up with REST in year 2000. He has developed REST software architectural style parallelly with HTTP 1.1 which is basically based on existing HTTP 1.0 within 1996-1999-time duration.

REST Architectural Constraints

  • Client – Server Architecture

Principle behind this constrain used for separation of concerns. In terms of separating user interface with data storage concern. Because of that reason it can improve their possibility of user interface across multiple platforms and as well as its help t o improve scalability by abridging their server component.

  • Cache- ability

This constraint also helps REST architecture to improving performance and scalability. Because this allows whenever client requests for same resource for several times, rather requesting it from the server it stores that requested resource somewhere temporarily and when the request comes that resource will be exposed for client form the temporarily cache. Above process is called as Caching. Sametime it helps with reducing incoming traffic on the server.

  • Statelessness

While in a client-server conversation server is not allowed to store client information. in terms of client state is not recorded on a server at any point.

  • Layered System

This constrain allows for enforce security policy as well system scalability enabling load balancing by as long as shared cache.

Benefits – RESTful Architecture

  • High Scalability – which means, allows to add additional servers behind the load balancers.
  • Lower usage of Bandwidth – For the communication purpose REST uses much as lower bandwidth compared to SOAP.
  • Simplicity of REST- Compared with SOAP, REST is much simpler. This may the main reason for REST popularity.

REST Architectural Properties

  • Simplicity of a uniform interface
  • Modifiability of components
  • Portability of components
  • Scalability
  • Performance in components interaction

REST Architectural working process

So… What is REST API???

Is an Application Program Interface which uses HTTP requests to GET, POST, PUT

and DELETE data.

  • GET – getting data from requested resource by client
  • POST- allows to store details for given resource
  • PUT- allows to replace the existing content for resource
  • DELETE- allows to remove member resource from collection of resource

JavaScript: An Object-Oriented Programming Language for Web Application

Hey everyone, in my very first post I was briefly going through JavaScript Introduction. In this post I thought of going bit more with JavaScript.

JS logo

So, what is JavaScript???

Yeah as we all know that JavaScript is a scripting language also interpreted, high-level and single threaded programming language. JavaScript supports object-oriented programming and it has mostly known as client-side scripting language. Now a day JavaScript uses as server-side scripting language as well. Most important hint is that JavaScript has non-blocking I/O nature means that for the server-side development JavaScript is not waiting for I/O operation it cannot be interrupt it can handle multiple requests at a same time. 

JavaScript History

Initially JavaScript named as ‘LiveScript’ but later it changed into ‘JavaScript’.  Brendan Eich was named as founder of JavaScript and idea about JavaScript came in year 1995 during the time at Netscape and it was stimulated by Java.

Brendan Eich, Menlo Park, California, 2017.

Basic JavaScript Concepts……

In this session I’ll be talking about most vital basic concept that are available in JavaScript

  • JavaScript variable
  • JavaScript function
  • JavaScript function as variable
  • JSON
  • Class, object, prototype
  • ‘This’ keyword
  • Closure

JavaScript Variable

Unlike other programming languages JavaScript does not have variable types. Below example code explain how to create JavaScript variables and assigning values into that variables. ”var” keyword is used to declare a variable in JavaScript.

JavaScript Function

The way how to create a function in JavaScript is showed below. JavaScript function is used to execute particular task in program. ‘”function” keyword used to create/define a JavaScript function.

JavaScript function as a variable

In JavaScript there are no limitation to assign a value into a variable. Therefore we can assign a function to a variable as well. And there is an ability in JavaScript function where we can pass a variable to a function as JavaScript function variable. JavaScript function behavior is below.

Here line 18 – 25 section, line number 25 I have passed my variable2 into variable1 function variable which is going to console out the value which i have given to variable2. And line 28-37 section, i have passed my variable2 function body into variable1 and executed that.

JSON

JSON is standard for JavaScript Object Notation. Below example exposes how to assign properties into JSON object and how to console out those assigned values.

Class, Object, Prototype

JavaScript is using a different way to create classes. By using function we can create a JavaScript class. Function which is used to create JavaScript class known as constructor function then by using this keyword we can assign properties into that class. For object creation of that particular class we used new keyword. Below example give about brief idea about class and object creation in JavaScript.

While we are talking about class and object another important keyword is prototype . As we know JavaScript has object inheritance, but not class inheritance. Each and every object reference to another object which call prototype. Actually prototype is a property of a in JS object. By using prototype keyword we can add properties in to object constructor method after creation of a class. So now go through below example to catch up a prototype idea which use to add properties.

In above example within class there is no property called age, but using prototype we have added that property into class. There is another usage of prototype which can used for implementation of inheritance as well. Below example about implement inheritance using prototype property.

“This” keyword

Same as other programming language we use this keyword to object context. Refer following examples.

above this is refers to window object and it console out that window object.

Let you all try to get the behavior of this keyword and let you all try out with hand on experience.

Closure

Closure is a function which is used inside another function. Means it is a inner function that has accessed to an outer function variable. Now go through below example.

Here in line 15 i have gone execute the function which is called calTax there i have passed 50 as parameter, now that passed value assign to vehiclepercentage. Then I have implemented function which is return a function value. Line 16 passed value assigned as returned function parameter (Inner function parameter) then the value of taxAmount will be calculate and that value consoles out.

So hope you all have come up some knowledge about JavaScript basic concept. I highly recommend you to have some hands on experience. Again I will be meeting you all with most interesting topic from my next blog post……

Node js: Open Source Cross-platform for Server-Side Development

Node JS Logo

Hey everyone, Let’s moving on with Node JS. As I mentioned above node js is an open source cross-platform JavaScript environment which has an ability to execute code separate of browser. Most people known that Node js is as an application framework, but it is a platform which may have permission to run on server-side. Thank to usage of JavaScript it has gone beyond  client-side scripting language to server-side scripting language.

Node Js History

Node Js Author

Ryan Dahl was the original author of Node js which is initially release on 27th May 2009. Node js stable release was on 06th March 2019 and then preview release was done on 14th February 2019. Node js initially supported on Linux and Mac operating systems. Though Ryan Dahl was the founder of the node js later it sponsored by Joyent. In year 2011 first node js built which is supporting windows OS and Microsoft and Joyent was implemented fo it.

So in this section, let’s try to get bit about actually what node js is.  As I mention above Node js is a cross-platform which supported on Linux, MacOS, SmartOS and Microsoft Windows etc. As well it has written by using C, C++ and JavaScript. Node js distributed development project which has event-driven architecture, and which permits to generates web severs and networking tools by using JavaScript. Most noteworthy dissimilar between node js and other languages is that node js which is responsible for non-blocking I/O nature in technical term most people known that node js has an asynchronous I/O nature. Node js is a JavaScript run-time environment which can operates single thread event loop by taking advantage of non-blocking I/O methods.

Node JS Behavior

Most server-side languages such PHP, are responsible to handle one function at a time, means while one function is in state of executing, other functions must wait till pervious function over their execution. But Node js is a one which has an asynchronous I/O nature which means node js allows multiple function to execute at a same time.

Corporate users of Node JS?

  • PayPal
  • Yahoo!
  • LinkedIn
  • Microsoft
  • Netflix
  • IBM
  • GoDaddy

Features which made Node js popular

  • Open-Source
Which services to add further capabilities to node
js applications
  • Single threaded
Which shadows single thread a prototypical with
event looping
  • Super-fast
Node js has built on google V8 JavaScript engine so
that code execution is very fast
  • Extremely scalable
For the reason that of its event mechanism helps
server to respond in a asynchronous mode

Some Terminology in Node JS

What is event loop in node js?

As we know, Node js is single threaded, which is use observer design pattern and they use non-blocking (Async) methods to maintain concurrency.

What is module in node js?

A simple or a compound functionality which are organized in sole or several JavaScript files which can reprocessed all over Node js application. Simply module is a set of reusable functions and responsible to handle core functionality. It can be use in anywhere in the node js application by using ‘required ()’ function keyword. In  a module we use ‘Export’ keyword used to ensure that function which is defined in  relevant file can be really accessible to other files.

Buffer in Node js

Which is going to make available Buffer class which going to provides instances to store raw data.

It is standard for Node Package Manager which is default package manager for Node.js packages or modules, and which is responsible to  manage dependencies midst Node js packages.

Hope I have done with Node JS….. So have a nice day, I will be meet you all with another post which is going to be interesting…..

React Js : Open source JavaScript Library

React JS Logo

In my previous post I have talked bit about JavaScript and popular JavaScript frameworks. Under that I have mention which calls React js. Taking about react, react is a JavaScript library which can be used in front-end environment further helps to build up and operates user interfaces of websites but not only the web-pages it can be used to develop mobile application user interfaces as well.  It’s an open source.

Are You Ready to Get Bit About React History?


While I am in a discussion about react js, taking bout react history is most important. React initial release has done on 29th May in year 2013. Created by Jordan Walke who is a software engineer at Facebook. In year 2011, react was first positioned on Facebook’s newsfeed and then on Instagram.com in year 2012. Facebook and community can be named as react developers.



As I mention above, react is a JavaScript library, which allows to develop user interfaces. Further talks about react, is a fantastic approach to build up web application as well mobile application by using JavaScript. There is some point where react known as a tool for develop user interface components and it is use specially for use develop single page application

Who Uses React….?

  • Khan Academy
  • Facebook                                                          
  • Vivaldi Browser
  • Codecademy
  • WhatsApp
  • Dropbox
  • Instagram
  • Netflix
  • New York Times
  • Yahoo! Mail

How Is React So Popular?











Facebook, WhatsApp, Dropbox such applications are currently using react js. May be most of the people can think because such applications are using react that can be the reason that react js became popular. Rather telling that is not the reason where react became popular, let’s I am moving on with 5 top reason which helped to build up react js to be popular.

  1. React is awfully efficient – React is an approach which gives superior flexibility, and which helps to increase its performance amazingly because react is a one who responsible to generates its own DOM which know as document Object Model and loading components itself.
  2. React proposals some brilliant developer tools –
    Once react installed for our machine it will offers chrome which will helps to debug our program.
  3. It is awesome for SEO – Though as we know JavaScript is not a user-friendly search engine, react is somewhat dissimilar. Its construction helpful for search engine.
  4. Components are the forthcoming of web expansion – React is a JavaScript library, which creates its components, and which can be used in later.
  5. Facebook is helping this project –Since Facebook is using react, if they think that they have been developed something grateful, so they do share that project all over the world.

React js Basics

Component      –           Basic building block is called as component which is similar to JavaScript class or function that accepts inputs.

JSX                  –           JSX stands for JavaScript XML syntax that used by react, which is allows to put HTML into JavaScript unlike putting JavaScript into HTML.

Props              –           props is something, which takes functions that proceeds a react element and call it as an alternative of applying its own render judgement.

Event               – something which is assign as properties of a component and which can activate methods.

State                – Most of definition is given as the heart of every React component. State is which allows developers to produces components that are dynamic and collaborative.










With my next post, I will meet You all with Node JS

Introduction

Hey everyone, I am Roshni Romeshika,

an undergraduate student at Sri Lanka Institute of Information Technology who is currently reading B.Sc. (Hons) Degree in Information Technology specialized in Software Engineering .

In this technical blog, I am looking forward to sharing my experiences learning new application frameworks as well as new programming tools and how can I collaborate with these new technologies how can those new tools and technologies are applicable to our group project as well. Mainly I give my focusing angle to JavaScript and stuffs related to JavaScript as well as bit bout Java.

My expectation is to be sharing some cool stuffs mainly related with JavaScript as I mentioned above and as well as trendy technologies and tool which will be covered during “Application Framework” module, So this post will be mainly focusing on some kind of a little introduction to JavaScript and some popular JavaScript frameworks.

Introduction to JavaScript (JS)

Taking about JavaScript history, JavaScript was found by Brendan Eich in 1995 and it was introduced at first in 1996 with Netscape. It was originally called as LiveScript but later it was renamed as JavaScript because of some reasons.

Though many people think that JavaScript is a simple programming language meanwhile it is known as “The world’s most misunderstood programming language”, because complexity of that language.

JavaScript is a scripting language which is designed to run in a host environment unlike other programming languages are have concept of input or output. JavaScript also known as interpreted high level language. JavaScript has asynchronous nature while it is doing I/O operations. As Java, C++; JavaScript also deal with class objects simply that mean JavaScript also supporting object-oriented programming.

Features of JavaScript

JavaScript has lots of features which use to make client-side validation, because JavaScript is use as client-side technology.

Uses of JavaScript

There are lots of uses in JavaScript which exposed as following.

Limitations of JavaScript

Since I am talking about JavaScript, there also some limitations, such that JavaScript does not have any multiprocessing or multi-threading, as well as client-side JavaScript not allow to write or read of files etc.…

JavaScript popular frameworks

Now I am moving my focus on popular JavaScript frameworks and bit about what are those frameworks mean, JavaScript Frameworks; which are applications frameworks written by using JavaScript.












  • Angular .js- Is a one of most famous, open-source, powerful as well as very effective JavaScript framework which is operated by Google.
  • React .js- Within a short period of a time react JS entered very popular very powerful. React is a JavaScript library as well framework which developed by Facebook, and which used to develop front-end environment. It helps to operate and develop user interfaces of websites.  
  • Backbone .js – Backbone is a very easy framework to learn, understand and as well as work on it. This easy nature could be a main reason to that Backbone JS framework to became one of popular JavaScript framework. Backbone is framework which has capability to create single page application as well, and which would support to achieve huge complexity functionalities by write using less code segments.
  • Node .js – Node JS framework is some kind of a abstract design, which supported develop server-side environment.













Coming up with…
On my next post, I will be meeting you with React .js, which I would wish to go through that few of things about React .js