Am 14. September 2017 haben wir eine überarbeitete Fassung unserer Datenschutzrichtlinie veröffentlicht. Wenn Sie video2brain.com weiterhin nutzen, erklären Sie sich mit diesem überarbeiteten Dokument einverstanden. Bitte lesen Sie es deshalb sorgfältig durch.

Visual Studio Grundkurs 2: Die Programmiersprachen

Die Programmiersprache F#

LinkedIn Learning kostenlos und unverbindlich testen!

Jetzt testen Alle Abonnements anzeigen
Die meisten Programmierer nutzen in Ihrer täglichen Arbeit imperative Programmiersprachen. Doch es gibt auch eine weitere Kategorie, die einen komplett anderen Ansatz wählt – die "funktionalen" Programmiersprachen. Hier vergleichen Sie C# und F# anhand eines kleinen Code-Beispiels und lernen die Vorteile gegenüber imperativen Programmiersprachen.

Transkript

In diesem Video sehen wir uns die Programmiersprache F# an. Die meisten Programmierer nutzen in ihrer täglichen Arbeit imperative Programmiersprachen. Imperative Programmiersprachen nutzen eine Kombination aus prozeduralen Anweisungen und Ausdrücken. Die meisten beliebten Programmiersprachen wie Ruby, Java, C# und JavaScript nutzen diesen Ansatz. Neben den imperativen Sprachen gibt es eine weitere Kategorie an Programmiersprachen, die einen komplett anderen Ansatz wählen. Diese sind die funktionalen Programmiersprachen. Sie wurden speziell dazu entwickelt, Probleme mit einem funktionalen Ansatz zu lösen. Funktionale Programmierung ist eine Form der deklarativen Programmierung. Mit einem imperativen Ansatz schreibt der Entwickler Code, der im genauen Detail angibt, welche Schritte der Computer machen soll, um das Ziel zu erreichen. Im Gegensatz dazu wird das Problem in der funktionalen Programmierung als ein Set von Funktionen ausgedrückt, die ausgeführt werden. Sie definieren für jede Funktion die Eingabe und die Ausgabe. Unter .NET wird dieser Ansatz übrigens in LINQ abgebildet. LINQ ist nämlich ein funktionaler Ansatz, ein Problem durch Abfragen und Filter in C# und Visual Basic zu lösen. Microsoft hat aber auch eine weitere Programmiersprache entwickelt, die sich F# nennt. F# arbeitet überwiegend funktional. F# behandelt Funktionen wie normale Variablen. Sie können also Funktionen in Variablen speichern und diese als Argumente an andere Funktionen übergeben. Sie können Funktionen über solche Variablen auch ausführen. Standardmäßig sind Objekte und Zustände in F# unveränderbar. Ausdrücke können also keine Seiteneffekte auf Daten haben, was gerade in Multithreading-Szenarien von Vorteil ist. Man braucht zum Beispiel kein Log-Statement mehr. Sehen wir uns einmal die Unterschiede zwischen C# und F# an. In allen drei Beispielen summieren wir Zahlen auf. Das erste Beispiel ist das klassische C#-Beispiel. In den Zeilen 20--24 befülle ich eine numerische Liste. Diese übergebe ich dann an die "AddListOfNumbers"-Funktion. Innerhalb der Funktion iteriere ich über die Liste, berechne die Summe der Integer-Werte und gebe sie zurück. Dies war der imperative Ansatz. Ich spezifiziere detailliert, wie die Liste erzeugt wird und wie die Summe berechnet wird. Das zweite Beispiel ist auch C#. Dieses Mal benutze ich jedoch LINQ. LINQ lässt uns einen funktionalen Ansatz wählen. In Zeile 43 fülle ich eine numerische Liste. In Zeile 44 nutze ich die Erweiterungsmethode "Sum", um die Summe zu berechnen. Wie Sie sehen, spezifiziere ich hier weder die Details zur Erzeugung der Liste noch zur Berechnung der Summe. Das letzte Beispiel ist das F#-Beispiel. In Zeile 8 erzeugen wir einen Ausdruck namens "sum". Dieser Ausdruck nimmt eine Liste mit dem Namen "numbers" entgegen und übergibt diese an die Funktion "List.reduce". "Reduce" kumuliert die Einträge der Liste. Das Plus in Klammern [(+)] gibt die auszuführende Operation an. In diesem Fall also eine Addition. Im Endeffekt ist dies der F#-Weg zum Erstellen der Sum-Funktion. In Zeile 10 rufe ich den Ausdruck auf und übergebe eine Liste von Zahlen. Diese Liste wird durch die eckigen Klammern ausgedrückt und beinhaltet die Zahlen von 5 bis 20. Wir können also zusammenfassend sagen, dass F# eine funktionale Programmiersprache ist. Problemlösungen werden hier als eine Kombination von Funktionen ausgedrückt und gerade für Entwickler, die ausschließlich imperativ entwickeln, ist die Syntax von F# relativ schwer zu lesen.

Visual Studio Grundkurs 2: Die Programmiersprachen

Entdecken Sie die Programmierpsrachen C#, Visual Basic .NET, C++ und F# und wie Sie in Visual Studio damit lauffähige Programme erzeugen.

1 Std. 13 min (14 Videos)
Derzeit sind keine Feedbacks vorhanden...
 
Hersteller:
Exklusiv für Abo-Kunden
Erscheinungsdatum:16.11.2016

Dieser Online-Kurs ist als Download und als Streaming-Video verfügbar. Die gute Nachricht: Sie müssen sich nicht entscheiden - sobald Sie das Training erwerben, erhalten Sie Zugang zu beiden Optionen!

Der Download ermöglicht Ihnen die Offline-Nutzung des Trainings und bietet die Vorteile einer benutzerfreundlichen Abspielumgebung. Wenn Sie an verschiedenen Computern arbeiten, oder nicht den ganzen Kurs auf einmal herunterladen möchten, loggen Sie sich auf dieser Seite ein, um alle Videos des Trainings als Streaming-Video anzusehen.

Wir hoffen, dass Sie viel Freude und Erfolg mit diesem Video-Training haben werden. Falls Sie irgendwelche Fragen haben, zögern Sie nicht uns zu kontaktieren!