Das Solana Program Examples Repository auf GitHub bietet mehrere Unterordner, die jeweils Codebeispiele enthalten, um Entwicklern beim Lernen und Experimentieren mit der Solana-Blockchain-Entwicklung zu helfen.
Die Beispiele finden Sie im solana-foundation/program-examples zusammen mit
README-Dateien, die erklären, wie Sie die verschiedenen Beispiele ausführen. Die
meisten Beispiele sind eigenständig und in einer oder mehreren der folgenden
Varianten verfügbar: Anchor,
Pinocchio und natives Rust.
Im Repository findest du die folgenden Unterordner, jeder mit verschiedenen Beispielprogrammen:
Es gibt auch Ökosystem-Programmbeispiele
Grundlagen
Enthält eine Reihe von Beispielen, die die grundlegenden Schritte zum Erstellen von Solana-Programmen mithilfe nativer Rust-Bibliotheken demonstrieren. Diese Beispiele sollen Entwicklern helfen, die Kernkonzepte der Solana-Programmierung zu verstehen.
| Beispielname | Beschreibung | Sprache |
|---|---|---|
| Account Data | Speichern einer Adresse mit Name, Hausnummer, Straße und Stadt in einem Konten. | Nativ, Anchor, Pinocchio |
| Checking Accounts | Sicherheitslektionen, die zeigen, wie Konten-Prüfungen durchgeführt werden | Nativ, Anchor, Pinocchio |
| Close Account | Zeigt, wie Konten geschlossen werden, um das rent zurückzuerhalten. | Nativ, Anchor, Pinocchio |
| Counter | Ein einfaches Zählerprogramm in allen verschiedenen Architekturen. | Nativ, Anchor, Pinocchio, mpl-stack |
| Create Account | Wie man ein Systemkonto innerhalb eines Programms erstellt. | Nativ, Anchor, Pinocchio |
| Cross Program Invocation | Anhand einer Hand-und-Hebel-Analogie wird gezeigt, wie man ein anderes Programm aus einem Programm heraus aufruft. | Nativ, Anchor, Pinocchio |
| hello solana | Hello-World-Beispiel, das lediglich „Hello World“ in den Transaktionsprotokollen ausgibt. | Nativ, Anchor, Pinocchio |
| Pda Rent payer | Zeigt, wie die lamport aus einer PDA verwendet werden können, um ein neues Konten zu bezahlen. | Nativ, Anchor, Pinocchio |
| Processing Instructions | Zeigt, wie instruction data vom Typ String und u32 verarbeitet werden. | Nativ, Anchor, Pinocchio |
| Program Derived Addresses | Zeigt, wie Seeds verwendet werden, um auf eine PDA zu verweisen und Daten darin zu speichern. | Nativ, Anchor, Pinocchio |
| Realloc | Zeigt, wie sich die Größe bestehender Konten innerhalb der Runtime-Limits ändern lässt. | Nativ, Anchor, Pinocchio |
| Repository Layout | Empfehlungen zur Strukturierung Ihres Programmlayouts. | Nativ, Anchor, Pinocchio |
| Transfer SOL | Verschiedene Methoden zur Übertragung von SOL für Systemkonten und PDAs. | Nativ, Anchor, Pinocchio, Seahorse |
Token
Die meisten Token auf Solana verwenden den Solana Program Library (SPL) Token-Standard. Hier finden Sie viele Beispiele, wie man Token prägt, überträgt, verbrennt und wie man in Programmen mit ihnen interagiert.
| Beispielname | Beschreibung | Sprache |
|---|---|---|
| Token erstellen | So erstellen Sie einen Token und fügen Metaplex-Metadaten hinzu. | Anchor, Nativ, Pinocchio |
| NFT Minter | Nur eine Einheit eines Tokens prägen und anschließend die Mint-Autorität entfernen. | Anchor, Nativ, Pinocchio |
| PDA Mint Authority | Zeigt, wie die Mint-Autorität eines Mints geändert wird, um Token innerhalb eines Programms zu prägen. | Anchor, Nativ, Pinocchio |
| Token Swap | Umfangreiches Beispiel, das zeigt, wie ein AMM-Pool (automatisierter Market Maker) für SPL-Token aufgebaut wird. | Anchor |
| Token übertragen | Zeigt, wie SPL-Token mithilfe von CPIs in das Token Program übertragen werden. | Anchor, Nativ, Pinocchio |
| Token-2022 | Siehe Token 2022 (Token Extensions). | Anchor, Nativ, Pinocchio |
Token Extensions (Token 2022)
Token 2022 ist ein neuer Standard für Token auf Solana. Er ist flexibler und ermöglicht es Ihnen, 16 verschiedene Erweiterungen zu einem Token-Mint hinzuzufügen, um dessen Funktionalität zu erweitern. Eine vollständige Liste der Erweiterungen finden Sie im Einstiegsleitfaden
| Beispielname | Beschreibung | Sprache |
|---|---|---|
| Grundlagen | So erstellen, prägen und übertragen Sie einen Token. | Anchor |
| Standard-Konten-Status | Diese Erweiterung ermöglicht es Ihnen, token accounts mit einem bestimmten Status zu erstellen, z. B. eingefroren. | Anchor, Nativ, Pinocchio |
| Mint Close Authority | Mit dem alten Token Program war es nicht möglich, einen Mint zu schließen. Jetzt ist es möglich. | Anchor, Nativ, Pinocchio |
| Mehrere Erweiterungen | Zeigt, wie mehrere Erweiterungen zu einem einzelnen Mint hinzugefügt werden können. | Nativ, Pinocchio |
| NFT Metadata Pointer | Es ist möglich, die Metadaten-Erweiterung zu verwenden, um NFTs zu erstellen und dynamische On-Chain-Metadaten hinzuzufügen. | Anchor |
| Nicht übertragbar | Nützlich beispielsweise für Errungenschaften, Empfehlungsprogramme oder soulbound Token. | Anchor, Nativ, Pinocchio |
| Transfergebühr | Bei jeder Übertragung der Token wird ein Teil der Token im token account zurückgehalten, der dann eingesammelt werden kann. | Anchor, Nativ, Pinocchio |
| Transfer Hook | Vier Beispiele, um Ihrem Token mithilfe eines CPI vom Token Program in Ihr Programm zusätzliche Funktionalität hinzuzufügen. | Anchor |
Ökosystem-Beispielprogramme für Solana
Drittanbieter pflegen häufig eigene Bibliotheken mit Solana-Beispielprogrammen. Diese werden von den jeweiligen Anbietern und nicht von der Solana Foundation gewartet.
- Quicknodes Solana-Programmbeispiele bieten zusätzliche Programme, insbesondere für Finanzsoftware, sowohl für neuere Anchor-Versionen als auch für das Quasar-Framework.
Is this page helpful?