Skip to content

mononoken/chess

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

# Chess (CLI)

A screenshot showing a preview of the project.

This project allows two players to play Chess against each other using a CLI (command-line interface) on one machine. The players take turns inputting the positions of pieces and where they want to move them. The positions are picked using chess algebraic notation.

Click here to see a live-preview hosted on Replit.

Table of Contents

Tools Utilized

General Information

This project is the final project of The Odin Project's Ruby course. In the course, they teach basics of Ruby, OOP (object-oriented programming), some CS (computer science), and TDD (test-driven development). All this information is put to use in this project.

The project began with the premise of TDD, but it eventually evolved away from it. New features were 'requested' by first creating an acceptance test of some kind in RSpec. Then unit tests were written to try to TDD out the required pieces to pass the acceptance tests. Many of these beginning unit tests were refactored away.

A big lesson taken from this project was learning to get features working and moving on. The temptation to refactor and refactor and refactor to seek the ultimate OOP dream was high.

Some design patterns were played with in this project. One of these patterns was the Null Object Pattern that was discovered after abusing safe navigation (&.) frequently. Another was pipelining (see Chess#send_move).

Acknowledgements

Reporting Issues/Feedback/Contact

Bug reports are greatly appreciated. You may create a new issue with a description of the problem, and the steps leading up to it.

PRs are kindly appreciated.

You may also contact me at: [email protected]

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages