F# Zelfstudie
Aan de slag met F #
Zoeken…
Opmerkingen
F # is een "functionele eerst" taal. U kunt leren over alle verschillende soorten expressies , samen met functies .
De F # compiler - die open source is - compileert uw programma's in IL, wat betekent dat u F # code kunt gebruiken vanuit elke .NET compatibele taal zoals C # ; en voer het uit op Mono, .NET Core of het .NET Framework op Windows.
versies
Versie | Publicatiedatum |
---|---|
1.x | 2005-05-01 |
2.0 | 2010-04-01 |
3.0 | 2012-08-01 |
3.1 | 2013/10/01 |
4.0 | 2015/07/01 |
Installatie of instellingen
ramen
Als u Visual Studio (elke versie inclusief express en community) hebt geïnstalleerd, moet F # al zijn opgenomen. Kies gewoon F # als de taal wanneer u een nieuw project maakt. Of zie http://fsharp.org/use/windows/ voor meer opties.
OS X
Xamarin Studio ondersteunt F #. U kunt ook VS Code gebruiken voor OS X , een platformonafhankelijke editor van Microsoft.
Zodra u klaar bent met het installeren van VS Code, start u VS Code Quick Open
( Ctrl + P ) en voert ext install Ionide-fsharp
vervolgens ext install Ionide-fsharp
U kunt ook Visual Studio voor Mac overwegen.
Er zijn andere alternatieven die hier worden beschreven .
Linux
Installeer de mono-complete
en fsharp
pakketten via de pakketbeheerder van uw distributie (Apt, Yum, etc.). Gebruik Visual Studio Code en installeer de ionide-fsharp
plug-in, of gebruik Atom en installeer de ionide-installer
plug ionide-installer
voor een goede bewerkingservaring. Zie http://fsharp.org/use/linux/ voor meer opties.
Hallo Wereld!
Dit is de code voor een eenvoudig consoleproject dat "Hallo wereld!" naar STDOUT en wordt afgesloten met een exitcode van 0
[<EntryPoint>]
let main argv =
printfn "Hello, World!"
0
Voorbeeld uitsplitsing regel voor regel:
-
[<EntryPoint>]
- Een .net- kenmerk dat[<EntryPoint>]
"de methode die u gebruikt om het[<EntryPoint>]
in te stellen" van uw programma ( bron ). -
let main argv
- dit definieert een functie genaamdmain
met een enkele parameterargv
. Omdat dit het programma-argv
zalargv
een reeks strings zijn. De inhoud van de array zijn de argumenten die aan het programma zijn doorgegeven toen het werd uitgevoerd. -
printfn "Hello, World!"
- deprintfn
functie geeft de string ** door als het eerste argument enprintfn
ook een nieuwe regel toe. -
0
- F # -functies retourneren altijd een waarde en de geretourneerde waarde is het resultaat van de laatste uitdrukking in de functie. Als u0
als laatste regel plaatst, betekent dit dat de functie altijd nul (een geheel getal) retourneert.
** Dit is eigenlijk geen string, ook al ziet het eruit. Het is eigenlijk een TextWriterFormat , die optioneel het gebruik van statisch type aangevinkte argumenten toestaat. Maar ten behoeve van een "hallo wereld" -voorbeeld kan het worden gezien als een string.
F # Interactief
F # Interactive, is een REPL-omgeving waarmee u F # -code per regel kunt uitvoeren.
Als u Visual Studio met F # hebt geïnstalleerd, kunt u F # Interactive in console uitvoeren door "C:\Program Files (x86)\Microsoft SDKs\F#\4.0\Framework\v4.0\Fsi.exe"
. Op Linux of OS X is de opdracht fsharpi
, die in /usr/bin
of in /usr/local/bin
afhankelijk van hoe je F # hebt geïnstalleerd - hoe dan ook, de opdracht moet op je PATH
zodat je typ gewoon fsharpi
.
Voorbeeld van F # interactief gebruik:
> let i = 1 // fsi prompt, declare i
- let j = 2 // declare j
- i+j // compose expression
- ;; // execute commands
val i : int = 1 // fsi output started, this gives the value of i
val j : int = 2 // the value of j
val it : int = 3 // computed expression
> #quit;; //quit fsi
Gebruik #help;;
voor hulp
Let op het gebruik van ;;
om de REPL opdracht te geven alle eerder getypte opdrachten uit te voeren.