FizzBuzz
This is my implementation of the FizzBuzz app. It's a native Kotlin app that calculates the FizzBuzz text of a given value. If the value is divisible by:
- 3 -> Displays "Fizz"
- 5 -> Displays "Buzz"
- 3 and 5 -> Displays "FizzBuzz" else -> Displays the value
The actual text and value can be configured in code.
How the app works
- The user enters a number and then see the result (either the number, Fizz, Buzz or FizzBuzz).
- The user can change the number manually by entering it or select a number using the slider.
- The TextView, Slider and EditText should update when changing either the slider or the edit text.
App Design/ Constraints
- Using only the Kotlin.
- The App must use the MVVM Architecture pattern.
- The Business logic of the app should be unit tested.
- The numbers and text used to calculate “FizzBuzz” should be configurable.
- The UI of the app must always be in a data consistent state.
- The EditText may only ever contain numbers.
- The value must be reflected on the Slider and TextView when changed.
- The EditText and TextView Should update if the slider is moved.
Additional Items I would like to add
- The App should make use of the RxKotlin/LiveData library to provide observable streams. (We would prefer RxKotlin more and RxAndroid can optionally also be used on top of it.)
- Dagger should be used for dependancy injection. Basic graph should do.
- More tests/UI tests
- Onscreen Numeric Keyboard
Screenshots
Image 1 | Image 2 | Image 3 |
---|---|---|
Multiple of 3, show "Fizz" | Multiple of 3 and 5, show "FizzBuzz" | Else show the value |