Decentralized Application (abbreviated as DApp
) is an application built on a decentralized network, mainly composed of "smart contracts" and "front-end user interfaces".
Generally speaking, the biggest difference between DApp and ordinary applications is its "decentralized" characteristics, that is, its server-side code should run in a non-centralized execution environment, such as the Ethereum blockchain network.
Taking DApp on Ethereum as an example, the service-side code of most applications is deployed on the Ethereum network and is completely open source, and the core data of DApp is also recorded on the chain, without the need for additional central database storage. As long as the Ethereum network node is confirmed, users can apply to execute any changes to the DApp function or established data.
Ideally, the data of DApp is stored in an encrypted manner in every node of the decentralized network-it can be a PC, mobile terminal, server or mining machine. This mechanism ensures that the data is not leaked or destroyed. These data belong to the user, and developers and maintainers do not have the right to misappropriate these data. In theory, it achieves that the ownership of the data belongs entirely to the user, which is almost impossible in the era of mobile Internet (Web2). Therefore, many people think that DApp is an important carrier of Web3, and the two ideas are the same.
Unfortunately, DApp also has many shortcomings:
To sum up, the advantages of DApp compared with ordinary applications are that the data is highly secure and cannot be tampered with, and it provides sufficient privacy and data ownership. The disadvantages are poor maintainability, slow running speed, and poor user experience. The smoothness of the experience is different from that of ordinary applications.
In order to help everyone build the front-end user interface of DApp better and interact with the blockchain network better, the Ant Design team has launched a set of Web3 front-end component libraries Ant Design Web3. If you have a certain understanding of blockchain basic knowledge, you can go directly to 👉 Develop DApp.