Why this book?
In the last few years, we came across different client side projects which were traditionally built on J2ee or other Open Source Technologies such as PHP, Ruby etc. On the other hand, the year 2013 saw increasing popularity of several javascript frameworks like Angular.js, Backbone.js which in turn gained momentum in client side development. These strong winds of change were brought about structural framework, coding and performance enhancement in development and production environment became absolutely imperative. On top of that emerging small sized projects and start-up companies have shown growing interest in adapting those new technologies.Evolving trends for storing non-structure data within repository is collectively called nosql in 2013. It is obvious that these fresh trends are clearly coming with new set of tools in software which revolve around javascript and nosql related repositories.Today javascript is not merely used for client side validation. It offers server side development for web applications along with node.js platform. In this book, we have tried to show start-up experimentation with some of these tools.
What is the aim?
The aim of this book is to show the use of some of the above mentioned tools in application and how we can start development of application with those tools. The book deals with some of the Proof-of-Concept Applications with the help of those tools. Apart from that,brief descriptions of some important aspects of these tools have also been incorporated . Being a developer from the very begining of my career, I always tried to find the codes which I can put together to generate new concepts in work. This book is a collective outcome of my efforts and experimental view with that acumen in mind. So there will be continuous updation of fresh knowledge from time to time.One personal opinion of mine is, working with new technologies like Javascript and NoSql related products is fun and I am thoroughly enjoying this phase. Also just to accompany, I am not an author but a programmer by profession; so writing things with all the theories and explanations was not my intention, rather I prefer to include practical working examples.
Who is the book for?
People with web programming backgound with javascript knowledge will find this book useful because this book is a collective knowledge source of usages of Javscript based tools and different application areas with those. The chapters of the book are explained with important aspects of the tools and covered with various coding explanations rather than just original theories. It is worth mentioning that I tried to incorporate explanations of the concepts as and when required. This book is not for beginner programmer but for the programmers with intermediate knowledge and for advanced programmers who have already known the traditional web programming with age-old J2ee, PHP, Dot net or other open source web technologies (like me..).
Content Introduction
Starting the Web Server with JavascriptWhy taken here?Node.js is a platform built on Google Chrome's javascript Runtime. Now-a-days we work even in Server Side with Javascript. Here we have introduced the basic concepts behind Node.js Server. We have used node.js for most of the work here, where the server side interaction were required. We expect node.js will be used in several applications in coming days and eventually replace some of the server side traditional server platforms. |
|
Javascript in OOP Way - some interesting studyWhy taken here?As all of the chapters are experimentation with Javascript in different areas of client side, server side work and nosql execution command, we just tried to aquire basic concepts of Object Orientation with Javascript with code. Explanation of Code is written side-by-side within code as comments.These basic knowledges will help us as we will work in different solutions with javascript in later chapters. |
|
|
A Simple jQuery images Slider Plugin with minimal effectsWhy taken here?In development time, We have seen many of our javascript and JQuery work to be re-used within pages or projects. So we have learned to code those works with the nice plugin feature of JQuery. Here we thought to include the plugin development with JQuery is worth to include in this ebook. |
|
Simple Bar Graph with d3.js and Prototype.js - a Javascript Class based ApproachWhy taken here?D3.js is a visualisation library in Javascript. Also propotype.js is a good framework to make the javascript classes. We had taken the Javascript class based approach to work with D3.js for making graphs. We had focused on the code pattern here. |
Concepts in Angular.js Application DevelopmentWhy taken here?In recent time, client side javascript MVC/MVP (Model-View-Presenter) frameworks are greatly used in Applications. Now within many such javascript Frameworks, Angular.js is backed by Google. So we understood the growth of this Javascript Framework within biggest programming community and go through the learning cycle for this framework. This framework is well-documented and the tutorial/documentation links are provided in the book chapters as required. To us, Angular.js is de-facto choice for our work in client side work in Web Application. |
|
Different Aspects of Angular.jsWhy taken here?There are various concepts in Angular.js which are needed to be mastered. We have discussed some of the topics in different Chapters such as Angular.js Service and Dependency Injection, Angular.js $watch and $observe, Angular.js Promise and Deferred Api |
|
JavaScript Testing Framework - Jasmine - a quick studyWhy taken here?In programming, testing was always an important aspect and will remain that. In server side development, there are different frameworks for unit testing, integrattion testing, load testing etc. So there should have those couterpart of testing enviornments in client side javascript development also. One of such is Jasmine - a unit testing framework in javascript. We have gone through the coding part for the framework. |
|
Angular.js Tests with JasmineWhy taken here?As we had earlier discussed about Angular.js as our favourite choice of Client side development, we had included the ways of testing of those work with Jasmine Framework. |
|
|
jQuery Plugin under Angular.js Directive - a more clean html approachWhy taken here?Earlier we had discussed about creating JQuery Plugins. Here is a little deviation of that plugin with Angular.js Directive, which has relatively clean signature on the Web Page. |
|
D3.js in Angular.js Directive - a relief from D3 svg code in HTML PageWhy taken here?As a visualisation libray, d3.js is a fantastic library in javascript. But writing of the code with d3.js was something tedius job for our junior developers. So we tried to made that code compacted in Angular.js Directive and here we have shown one of those working way. |
|
Simple Bar Graph in Angular Directive with d3.js and Prototype.js -- a Javascript Class based ApproachWhy taken here?Another varialtion of the above chapter with Prototype.js introduction, which eventually made the d3.js code within javascript classes |
|
Simple Bar Graph in Angular Directive with d3.js and Prototype.js -- Element based Directive DefinitionWhy taken here?Again another varialtion of the above chapter, here we have introduced new tags/elements in html with Angular.js Element Directive. More detail code can be found in http://phloxblog.in/angulard3/start.html |
|
Creating Google Chrome Extension to add a Custom RSS Feed ReaderWhy taken here?Browser extension is a evolving technology to show up and engage reader now-a-days. We have gone through creating a RSS Feeder within one Chrome Extension here. We have made the rss reader for our blog here. |
|
Task List with Angular.js, HTML5 Local Storage and Decorate with Bootstrap in Google Chrome ExtensionWhy taken here?The chrome browser extension is changed here and added with a task list. This is developed using Angular.js and HTML5 Local Storage. Our final extenteion is here - Task list and feed reader. Add it to your chrome browser if you feel so. |
Preliminary Concepts of Graph DatabaseWhy taken here?In recent time, graph databases emerges as a part of nosql data repositories. One of the famous graph database is neo4j. We have shown the concepts in Graph Databases like node, relationships in the chapter. In next few chapters we have shown an case study and commands for accessing several nodes and relationships in Neo4j. |
|
|
Quick Glance at Neo4j Cypher Queries for Sample Graph DatabaseWhy taken here?This is continuation of the previous chapter and some of the useful queries are shown here within graph databases. |
|
Develop Web Application with Node.js, Express.js REST Service and Neo4j (neo4j-js module)Why taken here?We have taken Angular.js as our client side developement framework, node.js for server side development and neo4j as backend data repository for making the proof-of-concept application. Codings are doucmented in line. Reader can completely download those codes from Github also, for which, links are given in the chapter. |
A Quick Primer on MongoDBWhy taken here?Within nosql family, as like neo4j, mongodb is also becoming increasingly popular among recent development. It is a document oriented database and all data are stored in Binary JSON (BSON) format within mongodb. This chapter is a quick introduction of the mongodb commands. |
|
|
Single Page Application with Angular.js, Node.js and MongoDB (MongoJS Module)Why taken here?We have used Angular.js as our client side developement framework, node.js for server side development and mongodb as backend data repository for making the proof-of-concept application. Codings are doucmented in line. Several important concepts like cross domain request etc are discussed within the application. Reader can completely download those codes from Github also, for which, links are given in the chapter. |
|
Web Application with Highchart.js, Node.js, Express.js and MongoDB(Mongo-JS Module)Why taken here?Applications with different charting and analytics aspects are general reqirement in web applications. We have taken Highchart.js for charting application requirement, node.js for server side development and mongodb as backend data repository for making the proof-of-concept application. Codings are doucmented in line. |
|
Real-time Data update with Angular.js, Node.js and Socket.ioWhy taken here?This time we have experimented with rela time data update application with javascript and taken a simple stock market simulation model. We have used Angular.js for client side UI requirement, Socket.IO and node.js for server side development for making the proof-of-concept application. Codings are doucmented in line. |
|
Single Page Application with Angular.js, Node.js and CouchDB (Cradle Module)Why taken here?We have taken Angular.js as our client side developement framework, node.js as server side development and couchdb as backend data repository for making the proof-of-concept application. Codings are doucmented in line. Several important concepts like cross domain request, creating view in couchdb etc are discussed within the application. Reader can completely download those codes from Github also, for which, links are given in the chapter. |
Developing Java REST web applications with Backbone.jsWhy taken here?As our last work here, we have taken a different javascript framework backbone.js for client side development and made a j2ee based REST Web service server with MySQL as backend and integrated those to make an application. While learning we have taken help of http://coenraets.org/blog/2011/12/backbone-js-wine-cellar-tutorial-part-2-crud/ to make this application. We had made some value addition here to make the Java Jersey based REST Web service server. |
|
Our note to readerThe book will be updated every month from February 2014 with application of new frameworks in Javascript.Reader should expect the monthly update of the book at the beginning week of the next month. So happy reading... |
|
Update Topic - February 20141> POST requests with Google DART, Node.js and MongoDB2> Node.js Unit Testing with Should.js |
|
