What is the hierarchy of Expo app Builds?

In short, browsing through the documentation, it seems kind of convoluted.

I understand Expo Go, and Expo Dev Client, but after that, it’s difficult to understand what everything else does.

Is the chain of command like this:

  1. eas build for development build
  2. eas build --platform to build the app that you can use on your phone, and also for when you eventually submit for the app store (if “platform all” builds it for all devices, then why are separate Android and iOS build guides here like this?? Are the builds different, in that one is solely for app stores and one is solely for device/emulator testing?)
  3. eas submit for when it is already built and you want to submit it to an app store?