Allgemeines zu Funktionen
Funktionen helfen ein Programm in Unterprogramme zu strukturieren. In der Objektorientierten Programmierung dienen Funktionen (bzw. Methoden, hierzu gleich mehr) dazu, das Verhalten von Objekten abzubilden.
Methode vs. Funktion
Diese Begriffe sind sehr eng verwandt. In der Programmiersprache Java verwendet man sog. Methoden. Diese sind immer an ein Objekt gebunden und modellieren dessen Verhalten. Andere Programmiersprachen haben andere Begriffe für Methode entwickelt.
Funktionen in Kotlin
Top-Level-Functions
In Kotlin gibt es den Begriff der Methode eigentlich nicht. Es gibt sog. Top-Level-Functions und sog. Member-Functions. Erstere werden im Code tatsächlich an das oberste Level geschrieben. Ein Beispiel hierfür ist die main()
-Funktion. Diese hat zusätzlich noch eine besondere Aufgaben: Sie dient als Einstiegspunkt für ein Programm.
Member-Functions
Die Member-Functions gehören zu einem Objekt. Sie werden mit Hilfe der Punktnotation aufgerufen.
HIerzu gibt es in späteren Einheiten mehr Informationen
Verwendung von Funktionen
Funktionen in Kotlin werden mit dem Schlüsselwort fun
deklarert. Anschließend folgt der Name der Funktion, der (fast) frei gewählt werden kann. Es folgen die Parameter einer Funktion inkl. ihrer Datentypen in runden Klammern. Abschließend ein Doppelpunkt und der Rückgabetyp. Der Code der in die Funktion gepackt werden soll, wird in geschweifte Klammern gepackt. Besitzen Funktionen einen Rückgabetyp, muss ein Wert dieses Typs auch mit Hilfe des Wortes return
zurücl geliefert werden.
Das könnte dann so aussehen:
Im Video gibt es hierz genauere Erläuterungen
Namenskonventionen
- Klassennamen sollen Substantive sein und mit einem Großbuchstaben beginnen, z. B. String oder Kreis. UpperCamelCase
- Funktionsnamen sollen Verben sein und mit einem Kleinbuchstaben beginnen, z. B. add oder remove. Speziell Abfragemethoden weichen von dieser Regel oft insofern ab, als sie keine Verben sind, und heißen stattdessen beispielsweise toString oder isEmpty. lowerCamelCase
- Konstantennamen sollen ausschließlich in Großbuchstaben geschrieben werden, wobei die Einzelworte durch Unterstriche getrennt werden, z. B. MIN_VALUE.