Posts by Tag

Data Structures

Trees

2 minute read

a data structure that is constructed with nodes, where each has some value and may point to child-nodes, which recursively form subtrees in the tree.

Graphs

1 minute read

Graph is a collection of nodes that may or may not be connected to each other.

Strings

less than 1 minute read

String

Hash Tables

1 minute read

A data structure that store data in key-value pairs and provides fast insertion, deletion and searching.

Linked Lists

1 minute read

Is very similar to array, at least conceptually, to an array.

Arrays

2 minute read

There are two types of arrays. Static and dynamic ones.

Logarithm

1 minute read

It’s mathematical concept which is very often used in Computer Science in context of algorithms complexity, it’s even sounds similar 😀

Big O Notation

3 minute read

The Big O Notation is a mathematical, asymptotic notation that describes time complexity and space complexity of algorithms/ function when the argument tends...

Back to Top ↑

Complexity Analysis

Trees

2 minute read

a data structure that is constructed with nodes, where each has some value and may point to child-nodes, which recursively form subtrees in the tree.

Graphs

1 minute read

Graph is a collection of nodes that may or may not be connected to each other.

Strings

less than 1 minute read

String

Hash Tables

1 minute read

A data structure that store data in key-value pairs and provides fast insertion, deletion and searching.

Linked Lists

1 minute read

Is very similar to array, at least conceptually, to an array.

Arrays

2 minute read

There are two types of arrays. Static and dynamic ones.

Logarithm

1 minute read

It’s mathematical concept which is very often used in Computer Science in context of algorithms complexity, it’s even sounds similar 😀

Complexity Analysis

less than 1 minute read

It’s a process in which we determine how efficient an algorithm is. There are multiple ways to solve the same issue but the complexity analysis will likely d...

Back to Top ↑

SOLID

Facade Design Pattern

2 minute read

The Facade design pattern is a structural pattern that allows for hiding the complexity of a subsystem by providing a simple interface to it. The interface ...

Builder Design Patter

1 minute read

Builder is a creational design pattern that lets you construct complex objects step by step. The pattern allows you to produce different types and representa...

Observer Design Patter

1 minute read

The observer pattern is a software design pattern in which an object, named the subject, maintains a list of its dependents, called observers, and notifies t...

Strategy Design Patter

1 minute read

Strategy is a behavioral design pattern that lets you define a family of algorithms, put each of them into a separate class, and make their objects interchan...

Back to Top ↑

Design patterns

Facade Design Pattern

2 minute read

The Facade design pattern is a structural pattern that allows for hiding the complexity of a subsystem by providing a simple interface to it. The interface ...

Builder Design Patter

1 minute read

Builder is a creational design pattern that lets you construct complex objects step by step. The pattern allows you to produce different types and representa...

Observer Design Patter

1 minute read

The observer pattern is a software design pattern in which an object, named the subject, maintains a list of its dependents, called observers, and notifies t...

Strategy Design Patter

1 minute read

Strategy is a behavioral design pattern that lets you define a family of algorithms, put each of them into a separate class, and make their objects interchan...

Back to Top ↑

Domain Driven Design

Aggregate Pattern

1 minute read

The Aggregate is one of the main pattern in Domain Driven Design (DDD) introduced by Martin Fowler.

Custom Assertions with AssertJ

less than 1 minute read

You may have contact with test that are not too readable, as the communicates when they fail. In that case you should take in consideration creating your own...

Back to Top ↑

DDD

Aggregate Pattern

1 minute read

The Aggregate is one of the main pattern in Domain Driven Design (DDD) introduced by Martin Fowler.

Custom Assertions with AssertJ

less than 1 minute read

You may have contact with test that are not too readable, as the communicates when they fail. In that case you should take in consideration creating your own...

Back to Top ↑

Java

Back to Top ↑

OOP

Prefer Composition over Inheritance

2 minute read

You probably already thought about this, as its quite popular statement. Let’s delve deeper into the subject. I wrote article that explain what is compositio...

Back to Top ↑

Design

Defining Software Architecture

2 minute read

The software community has been engaged in a longstanding debate over how to define “architecture.” Some believe it refers to the underlying structure of a s...

What is coupling?

3 minute read

In object-oriented paradigm, Coupling refers to the degree of direct knowledge that one element has of another. We may generally divide coupling to tight and...

Back to Top ↑

Test

Custom Assertions with AssertJ

less than 1 minute read

You may have contact with test that are not too readable, as the communicates when they fail. In that case you should take in consideration creating your own...

What are benefits of testing?

1 minute read

Do i really need tests? Isn’t it a waste of time? And other questions like this that you might asked once or still asking yourself. Its not true and let me e...

Back to Top ↑

Spring

Spring Cache

3 minute read

What is Spring Cache? How to configure it in your project and how to use it? How does Spring Cache work? How to add an external provider that allows flexible...

Spring Bean Scopes

2 minute read

The scope defines the runtime context within which the bean instance is available.

Back to Top ↑

Composition

Prefer Composition over Inheritance

2 minute read

You probably already thought about this, as its quite popular statement. Let’s delve deeper into the subject. I wrote article that explain what is compositio...

Back to Top ↑

Refactoring

Back to Top ↑

Databases

CAP Theorem

1 minute read

The CAP theorem is a concept in distributed computing that states that in any distributed system, you can only have two out of the following three guarantees...

Back to Top ↑

Clean code

Static Factory Method

1 minute read

In an object-oriented language like Java, what could be wrong with constructors? Overall, nothing. Even so, the famous Joshua Block’s Effective Java Item 1 c...

Back to Top ↑

Memory

Back to Top ↑

Aggregate

Aggregate Pattern

1 minute read

The Aggregate is one of the main pattern in Domain Driven Design (DDD) introduced by Martin Fowler.

Back to Top ↑

Patterns

Aggregate Pattern

1 minute read

The Aggregate is one of the main pattern in Domain Driven Design (DDD) introduced by Martin Fowler.

Back to Top ↑

Software Architecture

Defining Software Architecture

2 minute read

The software community has been engaged in a longstanding debate over how to define “architecture.” Some believe it refers to the underlying structure of a s...

Back to Top ↑

Test Driven Development

What are benefits of testing?

1 minute read

Do i really need tests? Isn’t it a waste of time? And other questions like this that you might asked once or still asking yourself. Its not true and let me e...

Back to Top ↑

TDD

What are benefits of testing?

1 minute read

Do i really need tests? Isn’t it a waste of time? And other questions like this that you might asked once or still asking yourself. Its not true and let me e...

Back to Top ↑

Object oriented programming

Back to Top ↑

Good practices

Back to Top ↑

Strategy pattern

Strategy Design Patter

1 minute read

Strategy is a behavioral design pattern that lets you define a family of algorithms, put each of them into a separate class, and make their objects interchan...

Back to Top ↑

Custom Assertions

Custom Assertions with AssertJ

less than 1 minute read

You may have contact with test that are not too readable, as the communicates when they fail. In that case you should take in consideration creating your own...

Back to Top ↑

Spring Bean

Spring Bean Scopes

2 minute read

The scope defines the runtime context within which the bean instance is available.

Back to Top ↑

Context

Spring Bean Scopes

2 minute read

The scope defines the runtime context within which the bean instance is available.

Back to Top ↑

Bean Scopes

Spring Bean Scopes

2 minute read

The scope defines the runtime context within which the bean instance is available.

Back to Top ↑

Observer pattern

Observer Design Patter

1 minute read

The observer pattern is a software design pattern in which an object, named the subject, maintains a list of its dependents, called observers, and notifies t...

Back to Top ↑

MongoDB

Back to Top ↑

Indexes

Back to Top ↑

Efficiency

Back to Top ↑

Cache

Spring Cache

3 minute read

What is Spring Cache? How to configure it in your project and how to use it? How does Spring Cache work? How to add an external provider that allows flexible...

Back to Top ↑

Spring Cache

Spring Cache

3 minute read

What is Spring Cache? How to configure it in your project and how to use it? How does Spring Cache work? How to add an external provider that allows flexible...

Back to Top ↑

Comparator

Back to Top ↑

Comparable

Back to Top ↑

Sorting

Back to Top ↑

equals hashCode contract

Back to Top ↑

Builder pattern

Builder Design Patter

1 minute read

Builder is a creational design pattern that lets you construct complex objects step by step. The pattern allows you to produce different types and representa...

Back to Top ↑

DeMorgan's Laws

Back to Top ↑

Logical conditions

Back to Top ↑

BigDecimal and BigInteger

Back to Top ↑

Precise numbers

Back to Top ↑

Association

Back to Top ↑

Aggregation

Back to Top ↑

Communication

Back to Top ↑

Business

Back to Top ↑

SQL

Back to Top ↑

NoSQL

Back to Top ↑

Testing

Back to Top ↑

Mocks

Back to Top ↑

Big O

Complexity Analysis

less than 1 minute read

It’s a process in which we determine how efficient an algorithm is. There are multiple ways to solve the same issue but the complexity analysis will likely d...

Back to Top ↑

Big O Notation

Big O Notation

3 minute read

The Big O Notation is a mathematical, asymptotic notation that describes time complexity and space complexity of algorithms/ function when the argument tends...

Back to Top ↑

Arrays

Arrays

2 minute read

There are two types of arrays. Static and dynamic ones.

Back to Top ↑

Linked Lists

Linked Lists

1 minute read

Is very similar to array, at least conceptually, to an array.

Back to Top ↑

Hash Tables

Hash Tables

1 minute read

A data structure that store data in key-value pairs and provides fast insertion, deletion and searching.

Back to Top ↑

Stacks

Back to Top ↑

Queues

Back to Top ↑

Strings

Strings

less than 1 minute read

String

Back to Top ↑

Graphs

Graphs

1 minute read

Graph is a collection of nodes that may or may not be connected to each other.

Back to Top ↑

Trees

Trees

2 minute read

a data structure that is constructed with nodes, where each has some value and may point to child-nodes, which recursively form subtrees in the tree.

Back to Top ↑

Effective Java

Static Factory Method

1 minute read

In an object-oriented language like Java, what could be wrong with constructors? Overall, nothing. Even so, the famous Joshua Block’s Effective Java Item 1 c...

Back to Top ↑

Architecture

Back to Top ↑

Monolith

Back to Top ↑

Microservices

Back to Top ↑

Algorithms

Back to Top ↑

Design Patterns

Back to Top ↑

Specification Design Pattern

Back to Top ↑

Metrics

What is coupling?

3 minute read

In object-oriented paradigm, Coupling refers to the degree of direct knowledge that one element has of another. We may generally divide coupling to tight and...

Back to Top ↑

Coupling

What is coupling?

3 minute read

In object-oriented paradigm, Coupling refers to the degree of direct knowledge that one element has of another. We may generally divide coupling to tight and...

Back to Top ↑

Concurrency

Back to Top ↑

Parallelism

Back to Top ↑

IoC and DI

Back to Top ↑

Application Architecture

Back to Top ↑

Inheritance

Prefer Composition over Inheritance

2 minute read

You probably already thought about this, as its quite popular statement. Let’s delve deeper into the subject. I wrote article that explain what is compositio...

Back to Top ↑

Facade design pattern

Facade Design Pattern

2 minute read

The Facade design pattern is a structural pattern that allows for hiding the complexity of a subsystem by providing a simple interface to it. The interface ...

Back to Top ↑

CAP

CAP Theorem

1 minute read

The CAP theorem is a concept in distributed computing that states that in any distributed system, you can only have two out of the following three guarantees...

Back to Top ↑

Modularity

Back to Top ↑

Cohesion

Back to Top ↑

Memory models

Back to Top ↑

JVM

Back to Top ↑