Thin Clients, Smarts and Data in the Cloud
Cloud applications are usually written with fairly thin clients and most of the heavy computation happening in the cloud. Data is usually stored in the cloud.
The benefits of this approach include writing most of the application code only once, even though multiple operating systems and many different mobile devices need to be supported. Power consumption on handheld devices is also greatly reduced when the computation is moved to the cloud.
Most cloud-based applications require an active Internet connection to function. This makes them dependent on the continued operation of networks.
Web Browser as an Enabling Technology
Modern web browsers have become the universal client technology. Most applications no longer require installation of a separate client.
Applications typically communicate with servers on the cloud using REST APIs, that is, using JSON-formatted data objects sent over HTTP. The applications increasingly rely on TLS and PKI for security and OAUTH or user-specific authentication tokens for authentication.
Mobile applications can be implemented either using a mobile browser or as native applications that have to be installed.
Most mobile devices today are based either on Google's Android operating system or Apple's IOS. Thus, many companies prepare versions of their applications for both of these platforms. The same platforms also cover tablets.
Smart Devices (Internet of Things, or IoT)
Smart devices also usually rely heavily on the cloud. Often, they just act as sensors that send information to the cloud, actual computation being performed in the cloud, and results are then returned to the device for display and control adjustment.