Design of Google Maps

High-level design

Let’s start with the high-level design of a map system. We split the discussion into two sections:

  1. The components we’ll need in our design.
  2. The workflow that interconnects these components.

Components

We’ll use the following components in our design:

  • Location finder: The location finder is a service used to find the user’s current location and show it on the map since we can’t possibly personally remember the latitude and longitude for every place in the world.
  • Route finder: The route finder service is used to find the paths between two locations or points. It shows the path on the map to users, who are new to a place and needs help with navigation.
  • Navigator: Suggesting a route through the route finder is not enough. A user may deviate from the optimal path. In that case, a navigator service is used. This service keeps track of users’ journeys and sends updated directions and notifications to the users as soon as they deviate from the suggested route.
  • GPS/Wi-Fi/Cellular technology
...
Access this course and 1400+ top-rated courses and projects.