Hi guys, today we will go through the idea of Inversion Of Control (IoC) by really interesting example: Hanami::Events gem.

This is the last article on SOLID principles and today we're going to talk about Dependency Inversion Principle.

We've covered three SOLID principles so far. But this one is going to be special. Interface Segregation Principle refers to Interfaces, but we don't have it in Ruby. Should we omit this part? I don't think so, we can still learn something from it.

In my previous article I covered Single Responsibility Principle. Today I'm going to write about the "O" in SOLID - Open/Closed Principle.

I write a lot about patterns and Object-Oriented Design, so I couldn't miss opportunity to write about SOLID principles of Object-Oriented Design. I'm going to show by example how we can use these principles in Ruby.

Hi guys. Today I would like to discuss Facade Pattern and a little bit of Domain-Driven Design. I will start from description of Facade Pattern and show how it can help us to implement Aggregate - one of the main concepts of DDD.

Uncle Bob (Robert C Martin) said:

Date frameworks, but not to marry them.

Many Ruby/Rails developers married to Rails. This article will show how to start dating with Rails.

Hi guys! I've been digging into ideas of Domain-Driven Design for a while and decided to share one cool pattern that I found in book: "Domain-Driven Design: Tackling Complexity in the Heart of Software" by Eric Evans (The Blue Book). If you haven't read this book yet - do that. Twice. Because it's so hard to get all concepts first time :) In this book Eric Evans describes Specification pattern which can make application more flexible. Today we're going to learn how to implement it.

Hey! I wrote couple posts about patterns (strategy, decorator and template). This list can not be complete without Factory Method pattern.

Hi there. Today we will discover Dependency Injection (DI). To understand all benefits of dependency injection we should understand why dependencies are bad.

← Previous 1