One must have a good command on data structures like Stacks, Queues and Lists. A basic idea of algorithms like sorting, searching, string manipulations will also be needed. It is imperative to have good concepts of Object Oriented Programming.
Web Development using Java
Project Based web development course using Spring Boot
Overview
Begin your career in software development with the introduction to Data Structures and Algorithms in Java. Java, an Object Oriented Programming is one of the most sought after programming language and is the foundation of the Android operating system. Java is a perfect computer language for being competitive in today’s industry requirements.Designed for beginners, CRUX is a hands on course where we focus on developing core programming concepts and equip you to code solutions for complex problems using Java.
Register Now
UI Design
An app with great functionality must be complemented by top notch User Experience and a neat User Interface. We teach building both common and upcoming UI/UX patterns.
Firebase, Push Notifications
Firebase is Google's service that provides a real-time database and push notifications, so that you can send information to the user even when he is not using your app.
REST API Development
Sensors help us build context-aware apps. You'll learn how to use GPS location, orientation, speed sensors, and perform actions on events like flip and shake.
Network and Databases
Most apps are connected in nature. You'll learn how to connect your apps to a backend to create an ecosystem of users and their data.
Course Contents
HTTP and REST Introduction
We begin with the structure of Internet, various protocols in its architecture, the role HTTP methods play in it and how REST improved the behaviour of applications served over Internet.
- Introduction to Internet
- HTML / CSS / JavaScript
- HTTP methods and behaviours
- HATEOAS
Spring and Spring Boot
Spring Boot makes it easy to create stand-alone, production-grade applications that you can run. We will start with Spring core and then dive deep using various technologies of Spring with Spring Boot.
- Brushing up java fundamentals
- POJO, Factory and Context, XML configuration
- Controller Service Repository Model
- Business Logic as service
- Aspect Oriented Programming
- Message Flow with Routers, Filters and Splitters
- Basic auth, Oauth, Oauth 2 with Spring
- Creating and consuming web sockets
Databases
What is a server, if it cannot store data on a databases. We will learn to store data in various kinds of Database Systems.
- JDBC and connection pooling
- Using ORMs like Hibernate and Spring Data
- MySQL - Relational databases
- Cassandra- Non-relational databases
- Cassandra Template with Spring-Data-Cassandra
Servlet, JSP and JSF integration
To create dynamic pages, we need server side page rendering and the concept of JSP helps here. We will then move to JSF, which is the more standard Java way to render dynamic pages.
- Standalone Servlet introduction
- Spring JSP integration
- Spring JSF integration
- Why you can try JSF
- When to avoid JSP and JSF
Git, Docker, Cloud and Deployment
Before we move on to backend development, we will briefly touch upon the usage of Unix based systems. More than 80% of the world’s servers are hosted on Linux machines, and any web backend developer must learn basic DevOps and SysAdmin skills to manage a Linux OS. Git, the most commonly used version control system is one of the most helpful tool required to work on large projects or in collaborative environments.
- Git
- Micro services
- Containers
- Physical and logical division of services
- Hosting on Linux/Unix
- SSL with Nginx and Letsencrypt
- Basic Sysadmin
Spring Transaction
Comprehensive transaction support is among the most compelling reasons to use the Spring Framework .
- Spring transaction fundamentals
- Declarative transaction management
- Programmatic transaction management
Elasticsearch and Firebase
We wind up with two of the hottest REST technologies in market, Firebase and Elasticsearch. Firebase is Google's mobile platform that helps you quickly develop high-quality apps and grow your business. Elasticsearch is a distributed, RESTful search and analytics engine capable of solving a growing number of use cases.
- Basic search engines
- Location based searching
- Real time databases
- Social sign-in with Firebase
- Push notifications
FAQ
(Drop a line at admissions@codingblocks.com if you have further queries)
How much knowledge of Data Structures and Algorithms do I need for this course?
Is there any admission test for this course?
Yes, we have a simple test covering Java foundation, OOP concepts, basic Data structures and array/string manipulation. You will need to undertake this test while registering for Advanced Java.
Will there be any projects during the course?
Yes, most definitely. We will be having at least two live projects on practical topics.