Why do apps on the Google Play Store have com. at the start?
The naming convention is derived from the Java standards, and is comparable to an URL, but in reverse. The key here is that it has to be unique, that's why it's so specific.

In you example, com is the main category which is comparable to a Top Level Domain, which can also be com. Next is the company name king, which can be compared to a domain name, and finally candycrushsaga, which could be a subdomain. Since the names have to be unique, this naming schema is quite usual, but can sometimes be divided even further by adding a subproject name to the end. For example King could separate games from other apps they've created by using the name com.king.games.candycrushsaga.

According to Java standards, the first component has to be a valid top level domain (com, net, edu, gov, country-specific), but I remember also seeing package names that didn't respect the standard.