Handling exceptions is a critical aspect of robust Java programming. While the traditional try-catch mechanism is effective, it often leads to verbose and less maintainable code. Along comes the Vavr library, which brings functional programming concepts to Java,...
Data encapsulation in JavaScript: getters and setters
Data encapsulation in JavaScript: getters and setters When building larger JavaScript applications, there's soon the need to split it into modules linked by clear contracts. When it comes to long term maintenance, a way to keep compatibility upon interface changes...
DEVOXX 2023: Unlock the power of PostgreSQL
Last month I had the opportunity to visit Devoxx 11th edition and to attend a conference about PostgreSQL advanced features called “Profitez de PostgreSQL pour passer à la vitesse supérieure” by Emmanuel REMY. Postgres is now in its version 15 and it is the 4th most...
Getting started with the Hexagonal Architecture
Spring Boot application example with BDD tests Nowadays fast-paced development is widely followed in software projects. The endless technological progress and the large adoption of Agile methodologies are boosting the development. Microservices came to light to enable...
Create your own decentralized application on Ethereum
During my visit to Devoxx Paris 2022, I was inspired by Mathias Herbert’s conference “coding for Ethernity”, this has given me the idea of writing this article … Heroes invest in crypto ; legends create them ! Actually, I am not going to show you how to create your...
Event Sourcing and CQRS using Kafka Streams
In this article we are going to study Event Sourcing, CQRS and Stream processing with Apache Kafka. The classical way to store state changes of an application is to use a database, it can be either a relational database or a NoSQL database it doesn’t matter. Using a...
Introduction to CORS (CORS definition)
Cors definition : our journey starts here: Figure 1.1: Backend request blocked by the browser Every front-end developer faced or will face this situation at least once in his/her career. When the webapp becomes more complex, we need to interact with multiple backends...
Introduction to React (Typescript)
I. Introduction Front development has been continuously changing, from the early days when developing multi-page applications (MPA) was the norm to today's full rich single page application (SPA). The emergence of Ajax technique and the significant browsers...
Quick guide on animations on the Web
Animations are one of the many tool developers can use to improve the UX on a web application. A well-placed animation can bring the user's attention to something important. They may also indicate that the system is working on...
Introduction to React Hooks
Hooks were introduced in February 2019 as part of React 16.8. They will help you make your code clearer and better structured. The classic class based syntax and idiomw are still still supported, and will keep being supported for the foreseeable future. So no...
What’s new in Java 12?
Available since March 19th, 2019, Java 12 is yet another small step forward for Java. It should be noted that Java 12 is not a LTS version (Long Term Support) as is Java 11 and will be Java 17 (as seen in this previous article to better understand the release cycle...
4 concrete examples of Vert.x
This part presents different uses of vert.x in various contexts. Boiler Vroom This demo presented by Julien Ponge is a Vert.x application designed around the Traktor audio mixing software. This application uses Vert.x to allow users to interact with the Traktor...
REDUCING C ++: && AND STD::MOVE
C ++ is one of the most used languages in finance today, especially for its performance. Its first standardization by the International Standardization Organization (ISO) took place in 1998. It followed a simple version of bug...
Java 11 : 9 new things to discover
Java 11, released in september 2018, is a major novelty of the Java language in that it is an LTS version (Long Time support) that will be supported by Oracle until 2023 - and beyond if we want to benefit from extended support. As a result, Java 11 appears as an...
Slots : an unknown optimization
As a former C developer working in high-performance computing, I wondered very early about the compactness of objects that were commonly created in Python. It quickly became clear to me that this was not optimal in most cases, resulting from the choice of original...
Full Stack C# Development with Blazor
Introduction C#, one of the most popular programming languages, is primarily used for back-end development. But in today's world, industry's standards have changed, meaning that full-stack developers are more sought after than their front or back-only counterparts. As...
Succeeding my Java technical Interview – Part I
This article, written in a ‘questions and answers’ form, is intended for end-of-course students, junior developers as well as enthusiasts who plan on undergoing technical Java interview in the near future. The questions being...
C#7’s New Features
Launched a few months ago, the new version of C# brings new features primarily aimed towards simplifying code and improving performance. In this article, we will discuss the tuples, C# 7.0 version’s new features and a small “behind the scenes” explaining how they...
How to sort CSV files?
1. Context Twice during my career, I was given the project to compare two large CSV files (Comma Separated Values: text files corresponding to either an Excel file export or an export of database tables): In the first case, it was a comparison between trades entered...
Introduction to metaclasses
Python is a strongly object-oriented language and is becoming increasingly popular over the years. Lots of projects continuously emerge which size and complexity make them much more than just a bunch of scripts. Such projects make extensive usage of OOP, defining...
Angular 7′ New Features
Angular is one of the best-known and most used frameworks for front-end developers. With the release of Angular 7, we have seen several improvements that have mainly affected the Framework 's Core, AngularMaterials, as well as the CLI. In this article we will...
JAVA 9’s New Features
Three years after the release of Java 8, Java 9 has finally seen light of day. With more than 80 new features available at this address: http://openjdk.java.net/projects/jdk9/. (This is a very rich version in terms of content.) You will be able to discover through...
How to use the “THIS” operation in Javascript
In most programming languages, the “this” keyword is used in the non-static code of a class to refer to the current object. For example: class Car { constructor() { this.wheels = 4; } addWheels(n) { this.wheels += n; } } let car = new Car(); car.addWheels(2);...
Secure your application with Spring Security
SPRING SECURITY DEFINITION Spring Security is a lightweight security framework that provides authentication and authorization support to secure Spring applications. It comes with implementations of popular security algorithms. This article guides us through the...
What’s new with Java 10 ?
It’s only been six months since Java 9's release, and we can already take a look at Java 10’s updates. In this article, we will be focusing on the main new features that will be used by developers in this version. The Type Inference of LocaL Variables It’s the biggest...