[Add] Basic project architecture

This commit is contained in:
2026-06-06 20:53:30 +07:00
parent 9ebedb12ec
commit 8ed9cc655f
79 changed files with 1080 additions and 9 deletions
@@ -0,0 +1,22 @@
using Minesweeper.Config;
using Minesweeper.Core;
namespace Minesweeper.Presentation.ReadModels
{
public sealed class GameReadModel : IGameReadModel
{
private readonly MinesweeperGameConfig config;
private readonly IGameStateService gameStateService;
public GameReadModel(MinesweeperGameConfig config, IGameStateService gameStateService)
{
this.config = config;
this.gameStateService = gameStateService;
}
public GameState State => gameStateService.Current;
public int Width => config.Width;
public int Height => config.Height;
public int MinesCount => config.MinesCount;
}
}
@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 1b2a816449e034a4f9635960881ec852
@@ -0,0 +1,12 @@
using Minesweeper.Core;
namespace Minesweeper.Presentation.ReadModels
{
public interface IGameReadModel
{
GameState State { get; }
int Width { get; }
int Height { get; }
int MinesCount { get; }
}
}
@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: e5c921f20dd6f1b40a1f73746265a63d