In this codelab you we will create simple spacex launch info app

Code

  1. Create a new repository
  2. Every feature in the app will need a new pull request and review

Spec

  1. The spec of the App is in the next part
  2. Before coding please read the spec and verify you understeds all the requements and app behaviour, you don't want to do the same work twice
  3. Write the code in such a why that it will be easy to add new features.

Documantation

Before and During writing the code, create a documantaion helping you and other to understend the code
You can use drao.io to create umls diagrams

  1. Create a high level blocks diagram of your app incluing classes from all layers
  2. Create ui app diagram flow (navigation flow between screens)
  3. Create data uml describing all the database ententies and the relationship between ententies

In this section you will build app with all the thing you learn so far

Porpuse

The app allow us to see spacex lanches details

The app contains 4 screens: launchs screen, launch details screen, ships screen, ships details screen.

The app contains drawer to let us choose between lanunches screen and ships screens

image

Screens:

  1. launches list
  2. launch details
  3. ships list
  4. ships detail

1. Lanches list:

title = launch list
filter by (search line):

sorting by:

cell:

behaviour:

2. Launch details:

title = name of the lanch

- title
- badge 
- date
- ship list
- farring list

behaviour:

3. Ship list:

title = ship list
filter by (search line):

sorting by:

cell:

behaviour:

4. Ship detail:

title = name of the ship

behaviour:

drawer menu with

  1. latest lanches
  2. ships

API

Use https://github.com/r-spacex/SpaceX-API
Documantation is in repository main readme file

Add work manager:

every day check for changes in lanches,
If changed - notification the user
when press the notification - the lanch details will be opened,
when press back the launch list will oppened

Tests

tarining testing

Stack:

return to main