ooopss / Study

Игра "Виселица"
0 stars 0 forks source link

Перенести бизнес-логику в класс Game, создать интерфейс IGame #4

Closed navferty closed 5 years ago

navferty commented 5 years ago

перенести весь код, который отвечает за логику самой игры, в отдельный класс. добавить интерфейс IGame, от которого будет наследоваться новый класс. покрыть тестами

navferty commented 5 years ago
public interface IGame
{
    SingleGameCredentials StartSingleGame();
    DualGameCredentials StartDualGame(DualGameSettings settings);

    AttemptResult MakeAttempt(char c);
}

public class SingleGameCredentials
{
    public int WordLength { get; set; }
}

public class DualGameCredentials
{
    // to be used later
}

public class AttemptResult
{
    bool IsSuccess { get; set; }
    bool IsGameFailed { get; set; }
    IReadOnlyCollection<int> AllLetterPositions { get; set; }
}