package com.interview.design.questions.othellogame; public class Game { private Player[] players; private static Game instance; private Board board; private final int ROWS = 10; private final int COLUMNS = 10; private Game() { board = new Board(ROWS, COLUMNS); players = new Player[2]; players[0] = new Player(Color.Black); players[1] = new Player(Color.White); Automator.getInstance().initialize(players); // used for testing } public static Game getInstance() { if (instance == null) { instance = new Game(); } return instance; } public Board getBoard() { return board; } public static void main(String[] args) { Game game = Game.getInstance(); game.getBoard().initialize(); game.getBoard().printBoard(); Automator automator = Automator.getInstance(); while (!automator.isOver() && automator.playRandom()); automator.printScores(); } }