
” A Well Educated Mind Will Always Have More Questions Then Answers “

What is Java
Java is a general-purpose computer programming language that is concurrent, class-based, object-oriented, and specifically designed to have as few implementation dependencies as possible. It is intended to let application developers “write once, run anywhere” (WORA), meaning that compiled Java code can run on all platforms that support Java without the need for recompilation.

Why Java is Popular in IT Industry?
- Java is easy to use: any beginner can learn Java.
- Free and open source.
- Huge community.
- Offers a great set of libraries and frameworks.
- Java offers the best security among all programming languages.
- Java is Highly in demand & Rich API’s.
- Powerful development tools.
- Java is everywhere.
Java Programming Language Platforms :
- Java Platform, Standard Edition (Java SE).
- Java Platform, Enterprise Edition (Java EE).
- Java Platform, Micro Edition (Java ME).
- JavaFX.
All Java platforms consist of a Java Virtual Machine (VM) and an application programming interface (API). The Java Virtual Machine is a program, for a particular hardware and software platform, that runs Java technology applications. An API is a collection of software components that you can use to create other software components or applications. Each Java platform provides a virtual machine and an API, and this allows applications written for that platform to run on any compatible system with all the advantages of the Java programming language: platform-independence, power, stability, ease-of-development, and security.
Java SE
When most people think of the Java programming language, they think of the Java SE API. Java SE’s API provides the core functionality of the Java programming language. It defines everything from the basic types and objects of the Java programming language to high-level classes that are used for networking, security, database access, graphical user interface (GUI) development, and XML parsing.In addition to the core API, the Java SE platform consists of a virtual machine, development tools, deployment technologies, and other class libraries and tool kits commonly used in Java technology applications.
Java EE :
The Java EE platform is built on top of the Java SE platform. The Java EE platform provides an API and runtime environment for developing and running large-scale, multi-tiered, scalable, reliable, and secure network applications.
Java ME :
The Java ME platform provides an API and a small-footprint virtual machine for running Java programming language applications on small devices, like mobile phones. The API is a subset of the Java SE API, along with special class libraries useful for small device application development. Java ME applications are often clients of Java EE platform services.
JavaFX :
JavaFX is a platform for creating rich internet applications using a lightweight user-interface API. JavaFX applications use hardware-accelerated graphics and media engines to take advantage of higher-performance clients and a modern look-and-feel as well as high-level APIs for connecting to networked data sources. JavaFX applications may be clients of Java EE platform services.

Applications of Java :
- Web & application servers.
- Desktop GUI, mobile, android, enterprise applications.
- Middleware products.
- Embedded systems.
- E-commerce applications, front electronic systems, etc.
- Banking and financial industries.
- Big data and Data Science.
- Retail.
- Research community.
- Information technology.
- Stock market.

Java Certification Courses:
1.Oracle Certified Associate (OCA) :Entry Level Exams
Java SE Programmer 1 (OCAJP)
2.Oracle Certified Professional (OCP) : Second Level Exams
Java SE Programmer 2 (OCPJP)
3.Oracle Certified Expert (OCE) : Expert Level Exams
Java EE Web Component Developer (OCEJWCD)
Java EE Java Persistence API Developer (OCEJPAD)
Java EE Web Services Developer (OCEJWSD)
Java EE Enterprise JavaBeans Developer (OCEEJBD)
Java EE Java Server Faces Developer (OCEJSFD)
4.Oracle Certified Master (OCM) : Master in Java Exams
Java EE Enterprise Architect (OCMJEA)
Java SE Developer (OCMJD)

Java Frameworks :
Angular :
This is another JavaScript framework, which is on my list of things to learn in 2020. It provides an entirely client-side solution. You can use Angular to create dynamic web pages on the client-side. It provides declarative templates, dependency injection, the end to end tooling and integrated best practices to solve common development challenges on the client-side. Since Google is behind Angular, you can be rest-assured by performance and regular updates. I firmly believe Angular is here for the long run; hence, its investing time on it is wholly justified. If you decide to learn Angular 8 in 2020, then Angular Fundamentals By Pluralsight is a good starting point.
Apache Hadoop :
Big Data and Automation is the focus of many companies in 2020, and that’s why it becomes essential for programmers to learn Big data technologies like Hadoop and Spark. The Apache Hadoop is a framework that allows distributed processing of large data sets across clusters of computers using simple programming models.It is designed to scale up from single servers to thousands of machines, each offering local computation and storage. It’s based upon popular Map Reduce pattern and key for developing a reliable, scalable, and distributed software computing application.
Apache Spark :
This is one of the best big data frameworks that is gaining popularity. Apache Spark is a fast, in-memory data processing engine with elegant and expressive development APIs to allow data workers to efficiently execute streaming, machine learning, or SQL workloads that require fast iterative access to datasets.
Bootstrap :
This is another popular open-source, front-end web framework for designing websites and web applications. Initially brought to us by Twitter. Bootstrap provides s HTML- and CSS-based design templates for typography, forms, buttons, navigation, and other interface components, as well as optional JavaScript extensions.Bootstrap supports responsive web design, which means the layout of web pages adjusts dynamically depending upon the browser’s screen size. In the world of mobile, BootStrap is leading the way with its mobile-first design philosophy, emphasizing on a responsive design by default.
jQuery :
This is another JavaScript framework that rules the world. jQuery is my favorite for a long time, and I advise every developer to learn jQuery. It makes client-side scripting really easy.You can do animation, send HTTP requests, reload pages, and perform client-side validation by writing just a couple of lines of code.
Node.js :
There is no doubt that JavaScript is the #1 programming language, and Node.js has a big part to play on that. Traditionally JavaScript is used as client-side scripting language where it is used with HTML to provide dynamic behavior on the client-side. It runs on the web browser, but Node.js allows you to run JavaScript on the server-side.
React :
React is another JavaScript library or framework for building user interfaces. It’s like Angular but maintained by Facebook, Instagram, and a community of individual developers and corporations. It allows web developers to create large web-applications that can change over time without reloading the page.
Spring Cloud (Microservices) :
Developing applications for the cloud has its own challenges, and Spring Cloud aims to solve those. It provides tools for Java developers to quickly build some of the common patterns of cloud-based applications, like configuration management, service discovery, circuit breaks, client-side load balancing, intelligent routing, distributed sessions, etc.When you develop a cloud-based Java application, you don’t need to worry about Hardware, installing the operating system, database, and other software. However, your app still needs those to function.

“Education is not the learning of facts, but the training of the mind to think”