Začínáme s jazykem F# pomocí rozhraní příkazového řádku .NET
Tento článek popisuje, jak začít s jazykem F# v libovolném operačním systému (Windows, macOS nebo Linux) pomocí rozhraní příkazového řádku .NET. Prochází vytvořením víceprojektového řešení s knihovnou tříd, která je volána konzolovou aplikací.
Požadavky
Abyste mohli začít, musíte nainstalovat nejnovější sadu .NET SDK.
Tento článek předpokládá, že víte, jak používat příkazový řádek a máte preferovaný textový editor. Pokud ho ještě nepoužíváte, je Visual Studio Code skvělou volbou jako textový editor pro jazyk F#.
Vytvoření jednoduchého řešení s více projekty
Otevřete příkazový řádek nebo terminál a pomocí nového příkazu dotnet vytvořte nový soubor řešení s názvem FSharpSample
:
dotnet new sln -o FSharpSample
Následující adresářová struktura se vytvoří po spuštění předchozího příkazu:
FSharpSample
├── FSharpSample.sln
Zápis knihovny tříd
Změňte adresáře na FSharpSample.
dotnet new
Pomocí příkazu vytvořte projekt knihovny tříd ve složce s názvem Knihovna.
dotnet new classlib -lang "F#" -o src/Library
Následující adresářová struktura se vytvoří po spuštění předchozího příkazu:
└── FSharpSample
├── FSharpSample.sln
└── src
└── Library
├── Library.fs
└── Library.fsproj
Library.fs
Obsah nahraďte následujícím kódem:
module Library
open System.Text.Json
let getJson value =
let json = JsonSerializer.Serialize(value)
value, json
Library
Přidejte projekt do FSharpSample
řešení pomocí příkazu dotnet sln add:
dotnet sln add src/Library/Library.fsproj
Spusťte dotnet build
sestavení projektu. Nevyřešené závislosti se obnoví při sestavování.
Napsání konzolové aplikace, která využívá knihovnu tříd
dotnet new
Pomocí příkazu vytvořte konzolovou aplikaci ve složce src s názvem App.
dotnet new console -lang "F#" -o src/App
Následující adresářová struktura se vytvoří po spuštění předchozího příkazu:
└── FSharpSample
├── FSharpSample.sln
└── src
├── App
│ ├── App.fsproj
│ ├── Program.fs
└── Library
├── Library.fs
└── Library.fsproj
Obsah souboru Program.fs
nahraďte následujícím kódem:
open System
open Library
[<EntryPoint>]
let main args =
printfn "Nice command-line arguments! Here's what System.Text.Json has to say about them:"
let value, json = getJson {| args=args; year=System.DateTime.Now.Year |}
printfn $"Input: %0A{value}"
printfn $"Output: %s{json}"
0 // return an integer exit code
Přidejte do Library
projektu odkaz pomocí dotnet add reference.
dotnet add src/App/App.fsproj reference src/Library/Library.fsproj
App
Přidejte projekt do FSharpSample
řešení pomocí dotnet sln add
příkazu:
dotnet sln add src/App/App.fsproj
Obnovte závislosti NuGet a dotnet restore
spusťte dotnet build
ho a sestavte projekt.
Změňte adresář na src/App
projekt konzoly a spusťte projekt předaný Hello World
jako argumenty:
cd src/App
dotnet run Hello World
Měly by se vám zobrazit následující výsledky:
Nice command-line arguments! Here's what System.Text.Json has to say about them:
Input: { args = [|"Hello"; "World"|] year = 2021 }
Output: {"args":["Hello","World"],"year":2021}
Další kroky
V dalším kroku se podívejte na prohlídku jazyka F# a získejte další informace o různých funkcích jazyka F#.