#Dapp

A DApp (Aplikasi Terdesentralisasi) adalah aplikasi yang berjalan di jaringan peer-to-peer komputer daripada pada satu komputer atau server, memanfaatkan teknologi blockchain untuk keamanan dan transparansi.

## Komponen Kunci DApps

```

+----------------+ +-------------------+ +-----------------+

| Antarmuka UI | <-> | Kontrak Pintar | <-> | Blockchain |

| (Tradisional | | (Kode yang dieksekusi sendiri di on-chain) | | (Buku besar Terdistribusi) |

| web/mobile) | | | | |

+----------------+ +-------------------+ +-----------------+

```

## Karakteristik Inti

- **Terdesentralisasi**: Beroperasi tanpa otoritas pusat atau server

- **Sumber Terbuka**: Kode tersedia untuk umum dan dapat diaudit

- **Berbasis Token**: Menggunakan token kriptografi untuk akses atau imbalan

- **Otonom**: Diatur oleh mekanisme konsensus seperti proof-of-work atau proof-of-stake

## Arsitektur DApp

DApps biasanya terdiri dari:

1. **Frontend**: Antarmuka pengguna tradisional yang dibangun dengan teknologi web

2. **Backend**: Kontrak pintar yang disebarkan di blockchain

3. **Lapisan Blockchain**: Buku besar terdistribusi yang menyimpan semua transaksi dan status

### Struktur Contoh

```ts

// Frontend (misalnya, React/Vue)

function sendTransaction(amount) {

const DAppContract = new web3.eth.Contract(ABI, CONTRACT_ADDRESS);

DAppContract.methods.transfer(amount).send({from: userAddress});

// Kontrak Pintar (contoh Solidity)

pragma solidity ^0.8.0;

contract SimpleDApp {

mapping(address => uint) public balances;

function transfer(uint amount) public {

balances[msg.sender] -= amount;

balances[recipient] += amount;

## Kategori DApps

| | Kategori | Contoh | Kasus Penggunaan | |

|----------|---------|----------|

| | Keuangan | Uniswap, Aave | Perdagangan terdesentralisasi, peminjaman, peminjaman | |

| | Permainan | Axie Infinity | Permainan blockchain play-to-earn | |

| | Sosial | Mastodon | Media sosial terdesentralisasi | |

| | Penyimpanan | Filecoin | Penyimpanan file terdistribusi