Mastering Spring framework 5, Part 2: Spring WebFlux

Spring WebFlux introduces reactive web development to the Spring ecosystem. This article will get you started with reactive systems and reactive programming with Spring. First you’ll find out why reactive systems are important and how they’re implemented in Spring framework 5, then you’ll get a hands-on introduction to building reactive services using Spring WebFlux. We’ll build our first reactive application using annotations. I’ll also show you how to build a similar application using Spring’s newer functional features.

Reactive systems and Spring WebFlux

The term reactive is currently popular with developers and IT managers, but I’ve noticed some uncertainty about what it actually means. To get clearer on what reactive systems are, it’s helpful to understand the fundamental problem they’re designed to solve. In this section we’ll talk about reactive systems in general, and I’ll introduce the Reactive Streams API for Java applications.

To read this article in full, please click here

Source: New feed

15 great alternatives to React, Angular, and Vue

“The Sound of Music” may preach, “Let’s start at the very beginning, a very good place to start.” But almost every developer knows it is a foolish plan. The right place to start is with a firm foundation built by a great team of open source developers. Clone their hard work and then add just enough code to make it your own. There’s no need to repeat what everyone has done before.

To read this article in full, please click here

(Insider Story)
Source: New feed

JDK 12 roadmap: Java 12 gets first targeted feature

While Java Development Kit (JDK) 11 won’t arrive for another month, work proceeds on its successor, JDK 12, with a switch expressions capability lined up for the release, expected in March 2019. Simplified coding is a goal of this capability.

Switch expressions, which will be in beta state in JDK 12, extends the switch statement so it can be used as either a statement or an expression. This would enable both forms to use either “traditional” or “ simplified” scoping and control flow behavior. These changes would result in simplified “everyday” coding and prepare the way for use of pattern matching in switch.

To read this article in full, please click here

Source: New feed

Go tutorial: Get started with Google Go

Why would you want to use the Go language? Basically, it’s a concise, simple, safe, and fast compiled language with wonderful concurrency features, and it easily handles large projects. It’s also free open source, even though it was originally developed at Google.

According to Rob Pike, one of the designers of the language, “the goals of the Go project were to eliminate the slowness and clumsiness of software development at Google, and thereby to make the process more productive and scalable. The language was designed by and for people who write—and read and debug and maintain—large software systems.”

(Insider Story)
Source: New feed

Machine learning: How to create a recommendation engine

What do Russian trolls, Facebook, and US elections have to do with machine learning? Recommendation engines are at the heart of the central feedback loop of social networks and the user-generated content (UGC) they create. Users join the network and are recommended users and content with which to engage. Recommendation engines can be gamed because they amplify the effects of thought bubbles. The 2016 US presidential election showed how important it is to understand how recommendation engines work and the limitations and strengths they offer.

AI-based systems aren’t a panacea that only creates good things; rather, they offer a set of capabilities. It can be incredibly useful to get an appropriate product recommendation on a shopping site, but it can be equally frustrating to get recommended content that later turns out to be fake (perhaps generated by a foreign power motivated to sow discord in your country).

To read this article in full, please click here

(Insider Story)
Source: New feed

Oracle and Intel seek to build a Java API for SIMD support

Oracle and Intel are developing a Java API to add first-class vector, or SIMD (single instruction, multiple data), support to the platform, which could yield big performance gains.  

Part of Project Panama, which focuses on interconnecting JVM and native code, the API aims to provide an initial iteration of an incubator module, jdk.incubator.vector, to express vector computations that compile at runtime to optimal hardware instructions on supported CPU architectures. Plans call for support of the Graal compiler. Goals of the project include:

To read this article in full, please click here

Source: New feed

Java 101: Mastering Java exceptions, Part 2

JDK 1.0 introduced a framework of language features and library types for dealing with exceptions, which are divergences from expected program behavior. The first half of this article covered Java’s basic exception handling capabilities. This second half introduces more advanced capabilities provided by JDK 1.0 and its successors: JDK 1.4, JDK 7, and JDK 9. Learn how to anticipate and manage exceptions in your Java programs using advanced features such as stack traces, causes and exception chaining, try-with-resources, multi-catch, final re-throw, and stack walking.

To read this article in full, please click here

Source: New feed

15 APIs every developer should know

Was it Isaac Newton who said he saw further because he stood on the shoulders of giants? APIs are like pithy, epigrammatic quotes for those who write code. They let programmers see further and stand on the shoulders of giants.

Immutable Azure Blob storage

To read this article in full, please click here

(Insider Story)
Source: New feed

What is the JDK? Introduction to the Java Development Kit

The Java Development Kit (JDK) is one of three core technology packages used in Java programming, along with the JVM (Java Virtual Machine) and the JRE (Java Runtime Environment). It’s important to differentiate between these three technologies, as well as understanding how they’re connected:

  • The JVM is the Java platform component that executes programs.
  • The JRE is the on-disk part of Java that creates the JVM.
  • The JDK allows developers to create Java programs that can be executed and run by the JVM and JRE.

Developers new to Java often confuse the Java Development Kit and the Java Runtime Environment. The distinction is that the JDK is a package of tools for developing Java-based software, whereas the JRE is a package of tools for running Java code.

To read this article in full, please click here

Source: New feed

Android SDK cozies up to Kotlin

With the August 6 production debut of the Android 9 Pie mobile OS, Google has released an Android SDK with special capabilities for development with the Kotlin language.

The SDK has nullability annotations for frequently used APIs, preserving null-safety guarantees when Kotlin code is calling into annotated APIs in the SDK. To ensure that newly annotated APIs are compatible with existing code, an internal mechanism provided by the Kotlin compiler team marks APIs as recently annotated. These APIs result in warnings instead of errors from the Kotlin compiler. Developers need to use Kotlin 1.2.60 or later.

To read this article in full, please click here

Source: New feed