What is Jenkins?
Jenkins is a Java-based, open-source automation server that can be utilized to automate various tasks related to building, testing, deploying, and distributing software projects. Being written in Java, it is platform-independent, making it accessible on different operating systems. With Jenkins, we can automate our Continuous Integration (CI) and Continuous Deployment (CD) processes. This enables us […]
What Is Docker And What Is It Used For?
Introduction Docker is an open-source platform that simplifies the development, distribution, and execution processes of software applications. It was first introduced in 2013 and has since revolutionized the software world. In this article, we aim to explain what Docker is, how it works, and the reasons why it is widely used, providing a better understanding […]
Mastering the Spring BeanFactory: Practical Steps and Core Concepts
1. Introduction This article will focus on mastering the Spring BeanFactory API. The Spring Framework’s core component, Spring BeanFactory, is in charge of overseeing the creation, configuration, and lifecycle of objects (beans) within an application. It serves as a container that offers inversion of control and dependency injection, which makes it simpler to manage and arrange […]
Static Factory Methods in Java
The traditional method used to create an object from a class is by providing a public constructor. However, besides this method, there is another technique that programmers should be aware of. You can write a public static factory method for a class. This method simply returns an instance of that class. One example of this […]
Obfuscate Spring Boot Applications with Proguard Maven Plugin
ProGuard ProGuard is an open-sourced Java class file shrinker, optimizer, obfuscator, and preverifier. As a result, ProGuard processed applications and libraries are smaller, faster, and somewhat hardened against reverse engineering. (Proguard Manual) ProGuard is an open-source and free tool that allows you to shrink, optimize and obfuscate Java-based codes. It detects unused classes, fields, methods, […]
How to Create a CLI in Golang
TL;DR Some developers like to read and make sense of the code. So if you are that kind of developer then you can have a look at my repository on GitHub: https://github.com/ufukguler/spotify-go-cli Since I’m the kind of developer I just mentioned, I’ll keep it short and straightforward. Let’s Get Started First of all; start a […]
Choosing Java Instead of C++ For Low-Latency Systems
When it comes to developing low latency software systems, the received wisdom is that you would be crazy to use anything but C++ because anything else has too high a latency. But I’m here to convince you of the opposite, counter-intuitive, almost heretical notion: that when it comes to achieving low latency in software systems, […]
Why Do We Use Getter and Setter Methods?
Encapsulation is defined as the process of hiding one or more attributes within a package. It is a fundamental principle of object-oriented programming languages. By regulating the access permissions of an object’s elements, it allows for more consistent and secure program writing. Using getter and setter methods instead of exposing the fields of a class […]