Mobile Developer Intern (Android) - Summer 2020
This is a Simple Memory Game developed for the Shopify Mobile Intern Challenge 2020
Shopify Mobile Developer Project- Matching Game.pdf
For this game I opted on going with a fixed size grid of 48 products because of two reasons:
- I didn't want to sacrifice the first requirement (The user should have to find a minimum of 10 pairs to win.)
- I wanted to keep a consistent look throughout the different game modes (Match 2, Match 3 & Match 4)
Since I had to match 2, 3 and 4 of the same products, I had to find a number which is divisible by 2,3 & 4, which is 12.
But 12 didn't help much because the first requirement is to match a minimum of 10. So with 12 being the full grid size:
- In game mode 2 I could only match 6 products.
- In game mode 3 I could only match 4 products.
- In game mode 4 I could only match 3 products.
That being said 48 was my magic number where:
- In game mode 2 I could now match 24 products.
- In game mode 3 I could now match 16 products.
- In game mode 4 I could now match 12 products.
48 Products allowed me to show 6 columns with 8 rows. which didn't disrupt my last row by showing a different set of columns in the last row when compared to the upper ones.
- Android Jetpack - Suite of libraries, tools, and guidance to help developers write high-quality apps easier.
- Kotlin - Cross-platform, statically typed, general-purpose programming language with type inference.
- Glide - Image downloading and caching library for Android.
- Retrofit - A type-safe HTTP client for Android.
- Android About Page - A library to generate beautiful About Pages with less effort.
- Material - Material design system.
To run this code you will need:
Android Studio 3.2,
Kotlin 1.3.41,
A stable internet connection.