Package-level declarations
Overview
Provides the main game types and coordination layer. The module contains small, focused components that model the board, pieces, players and the game orchestration. It is intentionally free of any I/O concerns so it can be used by CLI, GUI or test code without modification.
Key classes
Game— lightweight, immutable carrier for a game session. Orchestrates moves, passes and state transitions.GameLogic— pure logic that validates moves, computes captures and available plays.Player— represents a player and provides helper methods to refresh points and swap piece type.CoreConfig— Configuration for core game settings loaded fromreversi-core.propertiesEnvironment— Constants for file paths and configuration
Responsibilities
Representing the board, pieces, coordinates and piece types as immutable data types
Enforcing move validation and piece capture rules (Reversi)
Providing deterministic, testable transformations that return new board/game instances
Defining small storage-friendly DTOs (GameState) used by the storage module
Managing core configuration and environment settings