Your First Kotlin Android App: An App From Scratch

Aug 15 2023 · Kotlin 1.8.20, Android 13, Android Studio Flamingo | 2022.2.1

Part 1: Get Started with Android Development

03. Challenge: Plan the App

Episode complete

Play next episode

Next
About this episode

Leave a rating/review

See forum comments
Cinema mode Mark complete Download course materials
Previous episode: 02. Learn About Kotlin & Android Next episode: 04. Setup a Project in Android Studio

Get immediate access to this and 4,000+ other videos and books.

Take your career further with a Kodeco Personal Plan. With unlimited access to over 40+ books and 4,000+ professional videos in a single subscription, it's simply the best investment you can make in your development career.

Learn more Already a subscriber? Sign in.

Transcript: 03. Challenge: Plan the App

I know what you might be thinking right now…you just started the course and I’m already giving you a challenge, right? Well, not to worry, this is just a thought challenge.

In this course, you’re going to be building a simple game called Bullseye. The game gives the player a random target value to aim for from 1 to 100. The closer the player moves the slider to the target value, the higher the point the player gets. And the player’s score is displayed on a popup dialog.

Your challenge for this episode is to take a look at the screenshot of the app and think of the steps needed to build this game. You could do this on a piece of paper, so there’s really no need for big tech.

While doing this, split your list into two parts: “Must-haves” and “Nice-to-haves.”

The “must-haves” list should have the bare minimum functionality in order to ship the app. This is called a Minimum Viable Product or MVP for short. The features on this list should have everything to make the game playable.

The second list: “nice-to-haves,” should contain things like styling, extra cool features like the ability to play multiple rounds or restart the game.

And the advantage of this exercise is to teach you how to think of solving a problem by first figuring out what you want to do before thinking of how you want to do it.

Alright!!! Go ahead and make a list of steps you’ll take to build this game. Good luck.

How did your to-do list turn out?

Now, before you say your list is right or wrong, there’s really no ultimate correct answer to this. People do things differently, and that’s okay as long as you achieve the intended goal. So, as long as you come up with a plan, then that’s fine.

For my programming to-do list, I took the task of creating the game and then I cut it into small chunks. Breaking programming tasks into smaller chunks or tasks helps tackle problems better because it helps you find a clearer path to solve a problem.

Okay, here’s what my programming to-do list looks like for the must-haves:

  • Add an instruction label
  • Add a target label
  • Add a slider and make it go between the values 1 and 100
  • Add a “Hit Me” button
  • Make the target text bigger

After that,

  • Show a popup when the player taps the “Hit Me” button
  • Read the value of the slider after the player taps the “Hit Me” button
  • Generate a random number for the target value, and
  • Calculate and display the score

If we finish the items on this list, then we can have a Minimum Viable Product, popularly known as a MVP. It may not be pretty like an app you’ll get on Play store, but at least you can play the game. We will check off the items in this to-do list as we progress in this course.

Now, to take the app from a MVP to a polished app, here’s what my “Nice-to-haves” list looks like:

  • Implement multiple rounds
  • Implement restarting the game
  • Make the app look pretty, and
  • Add an About screen

This “nice-to-haves” list will be implemented in the follow-up course, “Your First Kotlin Android App: Polishing the App.” Now we have a plan for what we’re going to be doing, it’s time to set up a project in Android Studio.