C#/.NET attempt at a SOLID implementation of Tic Tac Toe
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
SolidTacToe.Exe
SolidTacToe.Tests
SolidTacToe
.gitignore
LICENSE
README.md
SolidTacToe.sln

README.md

SolidTacToe

An C#/.NET attempt at a completely SOLID implementation of Tic Tac Toe, as mentioned on episode #7 of the Coding Blocks Podcast.

Available under the MIT License

Solution Layout

SolidTacToe

Library that models the game TicTacToe. Only contains the "business" logic behind the game, contains nothing for interacting with users.

SolidTacToe.Definitions

Public interfaces used throughout the library. These are the only abstractions upon which you should depend.

SolidTacToe.Factories

Factories for creating and intializing basic game state.

SolidTacToe.GameOverConditions

Classes that represent the various states of the game after each turn.

SolidTacToe.Moves

Contains logic for making moves and keeping track of the current move maker.

SolidTacToe.Exe

Contains a basic console application that demonstratates how to use the SolidTacToe Library.

SolidTacToe.Exe.Definitions

Internal interfaces that are specific to console application.

SolidTacToe.Exe.Rendering

Here lies the code for drawing the game state to screen.

SolidTacToe.Exe.Tests

Test code for the SolidTacToe project. Does NOT test SolidTacToe.Exe.

Documentation is available for each namespace (excluding tests) in the _readme.md file of each folder.