Was ist eine Funktion in der Programmierung?
Kopieren und fügen Sie Ihren Code häufig ein, um ihn in verschiedenen Abschnitten Ihres Programms wiederzuverwenden?
In diesem Fall sollten Sie Funktionen verwenden. Funktionen sind ein sehr mächtiges Merkmal von Programmiersprachen. Sie können Code effizienter, lesbarer und eleganter machen.
Was ist eine Funktion?
Eine Funktion ist ein Codeblock, der eine Aufgabe ausführt. Es kann mehrfach aufgerufen und wiederverwendet werden. Sie können Informationen an eine Funktion übergeben und diese zurücksenden. Viele Programmiersprachen verfügen über integrierte Funktionen, auf die Sie in ihrer Bibliothek zugreifen können. Sie können jedoch auch eigene Funktionen erstellen.
Wenn Sie eine Funktion aufrufen, hält das Programm das aktuelle Programm an und führt die Funktion aus. Die Funktion wird von oben nach unten gelesen. Sobald die Funktion abgeschlossen ist, läuft das Programm dort weiter, wo es angehalten hat. Wenn die Funktion einen Wert zurückgegeben hat, wird dieser Wert dort verwendet, wo die Funktion aufgerufen wurde.
Wie schreibt man eine Funktion?
Es gibt viele verschiedene Möglichkeiten, Funktionen zu schreiben. Die genaue Syntax hängt von der Sprache ab, in der Sie programmieren. Wir zeigen Beispiele in Python, JavaScript und C ++, um eine Reihe von Programmiersyntaxen zu demonstrieren.
Leere Funktionen
Die erste Art von Funktion, die wir betrachten werden, ist eine Leerfunktion. Dies bedeutet einfach, dass die Funktion keinen Wert zurückgibt. Void-Funktionen werden verwendet, um eine Reihe von Anweisungen zu vervollständigen. In diesen Beispielen heißt die von uns geschriebene Funktion helloFunction . Der Zweck der Funktion ist die Ausgabe von "Hello World".
TIPP: Geben Sie Funktionsnamen an, die erklären, was sie tun. Es wird einfacher sein, Funktionen zu verwalten und den Code zu lesen, wenn Ihr Programm komplexer wird.
Python
def helloFunction():
print("Hello World")
helloFunction()
Das Schlüsselwort def wird in Python verwendet, um eine Funktion zu definieren und zu erstellen. Als nächstes ist der Name der Funktion. Die Anweisungen in der Funktion folgen in der nächsten Zeile nach dem Doppelpunkt. In Python ist Leerraum wichtig. Stellen Sie daher sicher, dass Sie den gesamten Code einrücken, den Ihre Funktion ausführen soll. Im obigen Beispiel führt die Funktion eine Codezeile aus.
Ihre scharfen Augen haben vielleicht bemerkt, dass print () ebenfalls eine Funktion ist, aber es heißt anders als unsere Funktion. Halten Sie jetzt an diesem Gedanken fest, wir werden später die Funktionen und Parameter untersuchen.
JavaScript
function helloFunction(){
alert("Hello World!");
}
helloFunction();
In JavaScript wird die Schlüsselwort – Funktion zu erstellen , Funktionen verwendet. Als nächstes haben wir den Namen der Funktion. Jeder Code, der zwischen den geschweiften Klammern steht, wird ausgeführt, wenn die Funktion aufgerufen wird.
Leerzeichen sind in JavaScript nicht wichtig, es ist jedoch üblich, den Code in die Funktion einzurücken. Das Einrücken erleichtert das Lesen von Code. Dies ist sehr wichtig, da Ihre Programme komplexer werden.
Hinweis: Ähnlich wie print () im vorherigen Beispiel ist auch alert () eine Funktion.
C ++
#include <iostream>
using namespace std;
void helloFunction(){
cout << "Hello World!";
}
int main(){
helloFunction();
return 0;
}
Funktionen werden in C ++ unterschiedlich erstellt. Anstelle eines Schlüsselworts zum Definieren einer Funktion beschreibt das erste Wort den Datentyp, den die Funktion zurückgibt. In diesem Fall gibt unsere Funktion keine Daten zurück, sodass die Daten ungültig sind. Als nächstes haben wir den Namen der Funktion. Ähnlich wie bei JavaScript wird der gesamte Code zwischen den geschweiften Klammern ausgeführt, wenn die Funktion aufgerufen wird. Ähnlich wie bei JavaScript wirkt sich der Leerraum nicht auf die Funktion aus, ist jedoch eine gute Vorgehensweise.
Haben Sie eine andere Funktion im C ++ – Code entdeckt? Ja, main () ist eine Funktion. Wenn Sie ein C ++ – Programm ausführen, rufen Sie automatisch die Hauptfunktion auf. Wenn die Hauptfunktion erfolgreich abgeschlossen wurde, gibt sie beim Verlassen des Programms 0 zurück, um zu signalisieren, dass beim Ausführen des Programms keine Fehler aufgetreten sind.
Funktionen, die Werte erfordern
Void-Funktionen sind großartig, wenn Sie feststellen, dass Sie immer wieder denselben Code schreiben. Aber sie können einschränkend sein. Sie sind statisch und ändern sich nicht. Sie führen immer die gleichen Anweisungen aus. Eine Möglichkeit, ihre Nützlichkeit zu erhöhen, besteht darin, unterschiedliche Werte an die Funktion zu übergeben.
Sie werden bemerkt haben, dass Klammern den Namen aller unserer Funktionen folgten. In den Klammern können wir angeben, dass Daten zum Ausführen unserer Funktion benötigt werden. Dann können wir die an unsere Funktion übergebenen Daten in der Funktion verwenden. Schauen wir uns noch einmal die vorherigen Beispiele an, aber dieses Mal übergeben wir den Satz, den wir ausgeben möchten.
Python
def helloFunction(newPhrase):
print(newPhrase)
helloFunction("Our new phrase")
In den Klammern deklariert unsere Funktion nun, dass zum Ausführen eine Variable erforderlich ist. Wir haben die Variable newPhrase benannt und können sie jetzt in unserer Funktion verwenden. Wenn wir die Funktion aufrufen, müssen wir die angeforderten Informationen übergeben, indem wir sie in die Klammern setzen. Die gleichen Änderungen wurden in JavaScript vorgenommen.
JavaScript
function helloFunction(newPhrase){
alert(newPhrase);
}
helloFunction("Our new phrase");
C ++
#include <iostream>
using namespace std;
void helloFunction(string newPhrase){
cout << newPhrase;
}
int main(){
helloFunction("Our new Phrase");
return 0;
}
Unsere C ++ – Funktion benötigte etwas mehr Informationen. Wir wissen, dass Ihre Funktion Zeichenfolgendaten benötigt, aber das ist für C ++ nicht gut genug. Wenn Sie Ihre Funktion erstellen, müssen Sie angeben, welche Art von Daten Ihre Funktion benötigt. Wenn Sie nicht den richtigen Datentyp senden, erzeugt die Funktion einen Fehler.
Dies mag etwas ärgerlich erscheinen, aber strenge Sprachen können Ihnen oft Kopfschmerzen ersparen. Wenn Sie eine Funktion in JavaScript schreiben, für die eine Ganzzahl erforderlich ist, die Zahl jedoch als Zeichenfolge gesendet wird, kann dies zu einem Fehler führen, der nur schwer aufzuspüren ist.
Funktionen, die einen Wert zurückgeben
Die letzte Funktionsfähigkeit, die wir behandeln werden, ist die Rückgabe von Daten. Dies ist besonders nützlich, wenn Sie Daten ändern möchten, bevor Sie sie verwenden. Obwohl Sie diese Inline schreiben könnten, ist es möglicherweise sinnvoller, sie als Funktion zu schreiben, wenn Sie dieselben Berechnungen mehrmals verwenden, z. B. die Konvertierung von imperial in metrisch. Unser Beispiel wird einfacher sein. Unsere Funktion benötigt zwei ganze Zahlen und gibt die Summe zurück.
Python
def addingFunction(a, b):
return a + b
print(addingFunction(2, 4))
In diesem Beispiel benötigt unsere Funktion zwei Variablen anstelle von einer. Wir geben dies an, indem wir unsere Variablennamen durch ein Komma trennen. Das Schlüsselwort return weist die Funktion an, die folgenden Daten zurückzugeben, in diesem Fall 2 + 4 oder 6. Wir rufen die Funktion innerhalb der Funktion print () auf .
Sobald unser Programm diese Zeile erreicht hatte, wurde es angehalten, unsere Funktion ausgeführt und dann fortgesetzt, als ob das Hinzufügen von Funktion (2, 4) tatsächlich nur der zurückgegebene Wert 6 wäre.
JavaScript
Der JavaScript-Code ist dem Python-Code sehr ähnlich. Der Hauptunterschied besteht darin, dass die Funktion in einer Warnung aufgerufen wird.
function addingFunction(a, b){
return a + b;
}
alert(addingFunction(2, 4));
C ++
#include <iostream>
using namespace std;
int addingFunction(int a, int b){
return a + b;
}
int main(){
cout << addingFunction(2, 4) ;
return 0;
}
Der C ++ – Code wird ähnlich ausgeführt, erfordert jedoch wie üblich etwas mehr Informationen. Zuerst müssen wir sagen, welche Art von Daten unsere Funktion zurückgeben wird. Sie werden sehen, dass void in int geändert wurde. Dies bedeutet, dass unsere Funktion keine Daten zurückgibt, sondern eine Ganzzahl zurückgibt. Darüber hinaus ähnelt der Code dem Code, den wir bereits untersucht haben.
Verwalten Sie Ihre Funktionen
Eine lustige Sache an Funktionen ist, dass Funktionen andere Funktionen aufrufen können. Sie können sich sogar selbst nennen! Aber mit großer Kraft geht große Verantwortung einher. Seien Sie nicht verrückt, wenn Sie Code mit Funktionen erstellen, die andere Funktionen aufrufen, die noch mehr Funktionen aufrufen.
Wie bereits erwähnt, wird das Programm bei jedem Aufruf einer Funktion angehalten, während die Funktion ausgeführt wird. Dies bedeutet, dass das Programm im aktiven Speicher gehalten wird. Wenn Sie mehrere weitere Funktionen aufrufen, ohne sie auszuführen, verwenden Sie mehr aktiven Speicher. Wenn Sie nicht vorsichtig sind, kann Ihr Programm außer Kontrolle geraten.