DApps (decentralized applications) are a pretty common buzzword in crypto today. DApps are applications, tools or programs that work in a decentralized manner, a la via a blockchain.
A decentralized application is an application that many users run and validate using trustless protocols. They avoid any single point of failure and tend to reward users with tokens for computing pwoer.
Before we look at DApps, let’s take a look at centralized applications. These applications have a front end and back end that work with each other in order to allow the app to function. They interact using an HTTP protocol.
The problems of centralized applications are simple. As the hosting network of the centralized application only has a single point of failure, centralized applications are more prone to attacks from hacking. This is why we often see centralized organizations such as Yahoo!, Adobe, and other companies become compromised.
Similar to centralized applications, decentralized applications have a front end and a back end. Frond ends work similar to centralized applictions the backend is exists on the blockchain. Both the frond end and back end of a DApp communicate in the same way as in a centralized application. The key difference is DApps are much more difficult to take down via hacking as the decentralized network allows many different users to provide support for the database.
Looking back at the example of major companies being hacked: Yahoo!, Adobe, Equifax, etc. The main commonality between all these entities is that they are all centralized organizations, meaning all of their data is housed in the same network. The inverse of this is a DApp architecture, which is distributed and requires all members of the network to participate (for example, through mining) in order for validation to occur. No one has the authority to alter a DApp through hacking, as that would mean every single user on the blockchain would need to be hacked.
DApps, in summary, are much more hack resistant than normal centralized applications while being transparent and as efficient. As long as technology keeps up with the promise of DApps, we expect more and more decentralized approaches to app development to pop up.