Day 37
·I kicked off the day by diving into my 3x3x3 board project. With a lot of work ahead of me on this story, I needed to make the most of every minute available. Fortunately, resolving my technical debts yesterday really helped with this implementation because I had to refactor much less, and I was working with a less rigid code base to add new features. Firstly, I added functionality for the game to handle a 3x3x3 board. In my strategy, it takes in a vector with 27 spots and a :three-d flag.
By the time I got that feature added, it was time for lunch and a learning session. I ended up presenting my Dependency Inversion Principle presentation again, and it went just as well as yesterday, receiving good feedback from my peers. Afterward, Micah gave a pretty interesting demo on using the schema library. Though I was able to follow, I found myself unsure of the typical usage of this library. Perhaps in the future, its usage will prove beneficial to me.
After lunch and the learning session, I jumped right back into my 3x3x3 board project. My next step is to improve the win-checker to handle larger boards. Following the Open-Closed Principle (OCP), my approach was to first cross-section the cube into a bunch of individual 2D boards that could be checked individually. This feature took longer than I had hoped to get working. As of the end of the day, and at the time of writing this, I had about half of them done.