https://github.com/netomi/tic-tac-toe
https://github.com/netomi/tic-tac-toe
android-application minimax-algorithm mvvm-architecture rxjava2 tictactoe-game
Last synced: about 2 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/netomi/tic-tac-toe
- Owner: netomi
- License: apache-2.0
- Created: 2020-03-06T11:46:21.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2020-03-31T06:55:02.000Z (about 6 years ago)
- Last Synced: 2025-01-28T23:24:47.511Z (over 1 year ago)
- Topics: android-application, minimax-algorithm, mvvm-architecture, rxjava2, tictactoe-game
- Language: Java
- Size: 167 KB
- Stars: 0
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Tic Tac Toe
This app is my first Android application and used as a test bed for various things:
* data binding
* MVVM approach
* reactive programming using rxjava
* minimax AI
# Design
The design follows the MVVM approach, the main classes are as follows:
* GameFragment: the actual view class that displays the classical tic-tac-toe board
* GameViewModel: the view model implementation, it controls the actual model and observes game events
* Game / Board: the actual game model, it allows to observe game events with the use of rxjava
Computer players are implemented using an unbeatable minimax AI.