diff --git a/de/1/function_declarations.md b/de/1/function_declarations.md index 480bb06..d3f78ad 100644 --- a/de/1/function_declarations.md +++ b/de/1/function_declarations.md @@ -1,6 +1,37 @@ + +# Chapter 6: Funktionsdeklarationen + +In Vyper sieht eine Funktionsdeklaration wie folgt aus: + +```vyper +@external +def exampleFunction(name: String[64], age: uint256): + pass +``` + +Das Beispiel ist eine Funktion mit dem Namen `exampleFunction`, die 2 Parameter erhält: einen `String[64]` (`name`) und einen `uint256` (`age`) + +Achtung! Mit dem Funktionsdekorator `@external` setzen wir die Sichtbarkeit der Funktion auf `external` fest. + +Alle Funktionen müssen einen Sichtbarkeitsdekorator (`@external` oder `@internal`) enthalten. In zukünftigen Kapiteln werden wir mehr über Funktionsvisibilität und Dekoratoren lernen. + +Mit der Anweisung `pass` kann man die Funktion als leer definieren. Bei der Ausführung passiert dann einfach nichts. + +## Stellen Sie sich auf die Probe + +Unsere App wird Pokemons generieren müssen. Schreiben wir eine Funktion dafür! + +1. Erstellen sie eine `external` Funktion mit dem Namen `createPokemon`. Sie soll 3 Parameter erhalten: + + - `name` (a `String[32]`) + - `dna` (a `uint256`) + - `HP` (a `uint256`) + +2. Nutzen Sie das `pass` Keyword um einen leeren Funktionskörper zu lassen. + #### ** Template **