-
Notifications
You must be signed in to change notification settings - Fork 201
Home
This wiki is dedicated to Spring Boot, Java 8, Angular JS and Mongodb NoSQL. I will introduce to full stack development using these technical stack.
In this wiki, I will be opinionated towards Spring Boot and Java 8, we could have used any other tools like NodeJS and accomplish this.
In java world, I never liked Spring and Java, they just compounded the amount of moving parts and redundant boiler plate code in Beans and others. Spring Boot and Java 8 addresses these by and large. I will also be talking about some of my favorite frameworks like Project Lombok and others that will also help in reducing boiler plate in Java.
I am an Enterprise Architect, who work closely with IT organizations of large companies like EMC, VMware and Boeing. Over few years I have mastered the ways of building enterprise software both in Java and .Net world. These are the predominant languages that are used in a typical enterprise IT without much checks and controls.
Enterprise IT come with their own challenges. One of the main challenge being controlled usage of tools and technologies. Most of the software they use has to be approved by their enterprise architecture teams. We cannot use modern tools like Node Js, Scala Play, Groovy, Ruby on Rails and others. These companies also restrict the use of Maven Central just to make sure, we don't get any random jar files and 'miss-use' in their ecosystem.
In this wiki, I will easily demonstrate the power of Spring Boot and Java 8 with help of easy to learn tutorial. I am going to build a medium complex application where I will demonstrate some of the cool features of Spring Boot, Java 8, Angular, Mongo and others.
The application or framework I am planning to build is a Web application that helps in entering various application data and storing it. It is a CRUD(create, read, update, delete) based application where we can rapidly build web based forms and save it to data store like Relational or NoSQL.
The structure of this wiki is as below,
- Quick overview of what we are building
- Application Architecture: how the application is layered and how we can quickly set this up
- Why Spring Boot and Java 8
- Why tools like projectlombok and others
- Spring Data Layer
- [Java 8 and Introduction to functional programming] (java8_functional_programming)
- Service Layer
- Spring MVC/ Controller Layer
- Angular based Frontend
- Javascript and functional programming
- Spring Security
The application follows the Test Driven Development approach.