We're halfway through 2016 and gender gap in the tech field remains to be an issue. But how much has improved? Realistically, we're a long way from achieving equality but that doesn't mean solutions do not exist.
In this tutorial we will discuss about the introduction to Apache Flink, What is Flink, Why and where to use Flink. This Flink tutorial will answer the question why Apache Flink is called 4G of Big Data? The tutorial also briefs about Flink APIs and features.
The major new feature in JDK 9 is the modularization of the core platform implemented by project Jigsaw. But because there are numerous other new features being included, let’s look at nine of those.
Caveat Emptor: Because JDK 9 has not yet been released and the Java SE 9 specification has not been finalized, some of these features may change from the description here to what’s in the final release.
Anyone that writes Java code is an API designer! It does not matter if the coders share their code with others or not, the code is still used; either by others, by themselves or both. Thus, it becomes important for all Java developer to know the fundamentals of good API design.
Java 9 comes with a great feature called "Jigsaw," which modularizes monolithic Java code into modules, allowing us to design independently standard modules within different scopes. The primary goal of “jigsaw” is to enhance scalability, maintainability, performance, security, etc. For more information please click on this link.
Today, we're creating a greeting, using project “Jigsaw” to modularize our code independently.
When I started my career back in 2009, I had to work on an IVR (Interactive Voice Response) application developed in Java. It was a lightweight server-side application but after some time, the way it was structured as well, was not able to evolve well. Code and configuration duplications, being unable to use the same call flows with minor changes as per client request, without refactoring, or in some cases like tight deadlines, developers resorted to duplication. So after some time, a very simple application became a nightmare to manage and maintain.
At that time, an initiative was started to cope with this. I thought of an application design and even created a PoC. The idea is to develop smaller configurable independent functions based on an interface having a single abstract method (SAM). Such functions would represent a unit of work just like a class method in Java. To what level of detail a unit of work is defined is up to the implementor. But such functions shouldn't be broader in the sense that they perform multiple tasks in a single implementation or perform very minute tasks.