Ethereum and Solidity launched in 2015, only a handful of years ago, that is why DApp and smart contract development is just getting started.
Each aspect of any application can be somewhat centralized <-> or decentralized.
- frontend – can run on a centralized server <-> run on your device as a mobile app
- backend and storage – can be on private servers and proprietary databases <-> you can use a smart contract and peer-to-peer storage
DApp is an application that is mostly or entirely decentralized, although in the Ethereum ecosystem as it stands today, there are very few truly decentralized DApps.
In the future, it is expected that it will be possible for every part of any DApp to be operated in a fully decentralized way.