This bowling kata was completed as part of the weekend challenge for Makers Academy week 6.
I implemented the ten-pin bowling score calculator based on input of a string representing a player's ten frames. It looks something like this: 'X X 9/ 80 X X 90 8/ 7/ 44'; where each frame is space-delimited, 'X' represents strikes, and '/' represents spares.
My challenge was to take this string of frames and return the players total score.
I based my input on this codewars kata.
I used JavaScript and the Jasmine testing framework for this challenge.
Fork and clone this repository.
Open 'SpecRunner.html' in your browser to run the Jasmine tests.
This was one of my first projects in JavaScript.
-
I enjoyed learning JavaScript and Jasmine syntax. I found it simple to set up and enjoyed learning it.
-
I used the constructor prototype method in my functions which is easy to use and understand.
-
I followed the TDD process well, creating many tests and creating the project step by step. This is evidenced by my 30 tests and many commits for this challenge.
-
I had completed this kata before in Ruby and could see the improvements in my process of TDDing the next simple step.
-
I could also see improvements in my skills as I created methods more in line with the Single Responsibility Principle.
-
Ultimately my code is fairly lengthy and verbose, so the next time I complete this kata I would like to focus on refactoring.
-
Other Katas take in input of one roll at once, so I would like to see the changes that would cause, compared to my method of inputting all scores at once.