Game Instructions

Tap a tile to toggle its color. When a tile changes nearby tiles may change as well. Each move affect multiple tiles. The target is to turn all tiles into yellow in the fewest steps possible.

Press 'j' to show/hide the game. Press 'i' to show/hide the instructions. Press 't' to show/hide the top score table.

Steps: 0

Top Scores

Name Steps
Press J to toggle the game, I to toggle instructions, and T to toggle the top scores

Congratulations!

You solved the puzzle in 0 steps!

Success!

Score submitted successfully!

Error

Failed to submit score. Please try again.

Dependency Injection PRO

Dependency Injection is a fancy word for a very simple design pattern that decouples highly dependent components.

The traditional approach for coupling the objects with each other was to hard code the dependency.

public interface IEngine
{
 ...
}

public class DieselEngine implements IEngine
{
 ...
}

public interface ICar
{
 ...
}

public class Taxi implements ICar
{
  private Engine engine;
  public Taxi()
  {
   engine = new DieselEngine();
   ...
  }
}

Writing the same code implementing the Dependency Injection pattern might be the following.

public interface IEngine
{
 ...
}

public class DieselEngine implements IEngine
{
 ...
}

public interface ICar
{
 ...
}

public class Taxi implements ICar
{
 private IEngine engine;
 public Taxi()
 {
  ...
 }
 public void setEngine(IEngine ob)
 {
  engine = ob;
 }
}

Dependency Injection is a specific form of Inversion of Control. The process of obtaining the needed dependency is inverted. Instead of letting the code within the Taxi class to select which is the exact IEngine object it will be connected with, that decision is taken by other parts of our program.

Share:

The Beauty of Code

Coding is Art! Developing Code That Works is Simple. Develop Code with Style is a Challenge!

Update cookies preferences