Shortcuts - F# - Ein praktischer Einstieg


Preis: k.A.

Erhältlich ab:  November 2012

Autoren / Autorinnen: Shortcut Autorenteam

F# ist eine der neuesten Programmiersprachen der .NET-Plattform, besonders unter denjenigen Sprachen, die von Microsoft selbst zusammen mit Visual Studio an Entwickler ausgeliefert werden. Allerdings ist die Sprache schon seit langer Zeit in der Entwicklung − bereits in 2005 kam die Version 1.0 von F# heraus − und sie basiert auf Ideen und sogar auf einer Syntax, die von anderen Sprachen und Plattformen übernommen wurden und schon lange vor der Zielplattform .NET existierten.

Ein paar Jahre ist es her, dass Microsoft über das Blog von „Soma“ Somasegar offiziell ankündigte, dass F# mit Visual Studio 2010 ausgeliefert werden würde. Das führte zunächst zu einiger Hektik im F#-Team, da noch vieles perfektioniert werden musste, das bisher für ein per separatem Download verfügbares F# nicht für sehr wichtig gehalten worden war: ein aktualisiertes Projektsystem inklusive einer ordentlichen Visual-Studio-Anbindung, IntelliSense auf einem aktuellen Stand der Technik, ein paar neue Projektvorlagen und einiges mehr.

Schon seit frühen Zeiten seiner Entwicklung war F# bei bestimmten Anwendergruppen auf reges Interesse gestoßen. Als eine Sprache, die sich funktionale Einflüsse zumindest als einen wichtigen Punkt auf die Fahne schrieb, bot sich F# offensichtlich für diejenigen algorithmisch geprägten Projekte an, die schon immer gern funktional geführt wurden. Aber mit dem Hintergrund der breit gefächerten Funktionalität des .NET Frameworks gab es hier etwas, das keine andere funktionale Sprache bieten konnte: die Fähigkeit, Anwendungen für die verschiedensten Zielsysteme zu schreiben, mit und ohne grafische Benutzerschnittstelle, Server oder Client, mit einfachstem Datenbankinterface, als Webanwendung oder für Mobilplattformen. Gleichzeitig ist F# selbst hybrid in seinen Ansätzen, sodass die Interaktion mit all diesen verschiedenen Subsystemen so einfach ist, wie Sie es sich nur vorstellen können.

Seither hat sich die Entwicklung weiter fortgesetzt, sowohl im Bereich der Sprachen als auch für .NET insgesamt. Für F# bedeutet das hauptsächlich, dass seine Ideen heute relevanter sind als je zuvor. In C# und VB.NET haben seit Visual Studio 2008 immer mehr funktionale Ideen Einzug gehalten, in großem Umfang mit der Sprachunterstützung für das sehr funktional ausgeprägte LINQ, das in .NET 3.5 eingeführt wurde. Parallelisierbarkeit ist ein Thema, das aufgrund der typischen Architekturen aktueller Prozessoren fast jede Software betrifft und über das viele Programmierer in die Welt der funktionalen Programmierung finden, da sie sich von puren Funktionen und unveränderbaren Daten neue Lösungswege versprechen. F# bietet als Programmiersprache den besten Weg zu diesen funktionalen Zielen, der Ihnen auf der .NET-Plattform offensteht, während die Mittel der Objektorientierung, mit denen Sie vertraut sind, nicht zurückstehen müssen.

Die Vergangenheit hat gezeigt, dass F# eine Plattform der Entwicklung in mehr als einer Hinsicht ist: Sprachfeatures aus F# haben oft den Weg in andere .NET-Sprachen gefunden und maßgeblich dazu beigetragen, dass wichtige Neuerungen in die Plattform integriert wurden. Ob Sie dabei an große Dinge denken, wie Generics in .NET 2.0, oder an kleinere, wie die Einführung der Tupel-Typen in .NET 4.0 − F# spielt in diesen Bereichen immer wieder eine Vorreiterrolle. Das wird sich auch in Zukunft nicht ändern, denn die in C# 5.0 neuen Async-Schemata gibt es in analoger Form in F# schon lange, und die für F# 3.0 angekündigte Funktionalität zu Information Rich Programming verspricht wiederum neue Fähigkeiten, die womöglich in Zukunft in Richtung C# oder VB.NET migriert werden könnten.

Vielleicht sind Sie ein Programmierer, dessen Arbeit sich um die Pflege vorhandener Software dreht. In diesem Fall sind Sie ständig auf der Suche nach dem einfachsten Weg, Ihre Software auf einem modernen Stand zu halten und sich von der Konkurrenz abzusetzen. Die Pflegbarkeit Ihres Codes ist für Sie wichtig, da dessen Langlebigkeit für Sie bereits alltäglich ist. Es ist gut möglich, dass F# Ihnen wichtige Vorteile verschaffen kann: Sie können Algorithmen einfacher, übersichtlicher und kompakter implementieren, während die moderne und fortschreitende Entwicklung der Sprache Ihnen hilft, Alleinstellungsmerkmale zu erarbeiten. Durch die Kompatibilität der Sprache mit .NET, und so mit allen anderen Sprachen der Plattform, können Sie einen Umschwung graduell einleiten oder auch nur ausnahmsweise F# einsetzen, wenn es gerade passt.

Oder sind Sie ein Programmierer, der nach der richtigen Sprache für eine neue .NET-Entwicklung sucht? Dann sind Sie bereits vertraut mit der Funktionalität, die Sie in der Plattform finden. Um im Markt erfolgreich zu sein, müssen Sie den effizientesten Weg finden, die Plattform zu nutzen. Je schneller und einfacher Sie Code schreiben können, desto besser für Ihr Geschäft. F# sollte Ihnen gut gefallen, denn Code in der Sprache ist typischerweise kürzer als der, den Sie in C# oder VB.NET schreiben können − natürlich bei gleicher Funktionsweise! Sie bekommen aber auch ein breiteres Spektrum an Programmieransätzen geboten, aus denen Sie jeweils den besten für ein Problem auswählen können. Für viele Zwecke lässt sich auch ein funktional purer Ansatz verfolgen, der durch einfache Testbarkeit, Parallelisierbarkeit und die daraus resultierende Stabilität besticht.

Vielleicht sind Sie ein Programmierer, dessen Erfahrungen wesentlich von anderen Plattformen her stammen und für Sie ist .NET neu. Sie mögen in diesem Fall bereits mit objektorientierten oder funktionalen Ideen vertraut sein oder mit beiden. F# sollte in jedem Fall die Sprache Ihrer Wahl sein, denn sie bietet volle Kompatibilität mit .NET bei einfachstem Einstieg, unabhängig von Ihrer bisherigen Ausrichtung.

Weiterentwicklung ist kein Selbstzweck. Ein wichtiger Punkt im Zusammenhang mit F# ist allerdings, dass die Sprache unterschiedliche Ideen vereint, die sich im Laufe vieler Jahre als gleichermaßen legitim erwiesen haben. Der Programmierer mit dem weitesten Horizont gewinnt das Rennen um den Job, den Auftrag, das Geschäft − ich wünsche Ihnen, dass Sie das sind!

Hallo F#

In diesem shortcut geht es ganz praktisch zur Sache. Menschen lernen auf unterschiedliche Art, und für manchen Programmierer ist der Umgang mit existierendem Code, vielleicht sogar mit vollständigen fertigen Lösungen, der beste Weg, eine neue Technologie zu lernen. Jeder Programmierer schätzt jedoch den ersten Eindruck, den eine kurze Anleitung Schritt für Schritt erzeugen kann. Wenn sich später die Details häufen, ist manches nicht mehr schnell im Kopf wiederzufinden, aber Sie erinnern sich am leichtesten daran, schon einmal bei einer bestimmten Problemlösung zugesehen zu haben.

Darum soll es in diesem shortcut gehen. Das Problem, das es zu lösen gilt, werden Sie noch im Detail kennen lernen. Die Plattform ASP.NET MVC ist (abgesehen von F# natürlich) das Mittel der Wahl, und auch dazu wird alles Wichtige erklärt.

Es muss klar gesagt sein, dass besonders die gewählte Zielplattform geradezu willkürlich ausgesucht wurde. F# ist eine Programmiersprache, mit der die Plattform .NET programmiert werden kann. Es gibt sicherlich Ziele, die sich besonders einfach oder schwer erreichen lassen, wie das in jeder Sprache der Fall ist. F# als hybride Sprache bietet allerdings wesentlich mehr einfache als schwierige Lösungen. ASP.NET MVC ist also Stellvertreter für viele andere mögliche Systeme der Plattform .NET, die Sie ebenso ansteuern könnten.

Das wichtigste Ziel ist es natürlich, den nötigen Fokus auf die Sprache F# zu legen. Damit wird es also losgehen: mit den Grundlagen der Sprache!

Neugierig geworden?


    
Loading...

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang