透過 .NET CLI 開始使用 F#
本文涵蓋如何在任何作業系統 (Windows、macOS 或 Linux) 上開始使用 F# 搭配 .NET CLI。 其會使用主控台應用程式所呼叫的類別庫來建置多專案解決方案。
必要條件
首先,您必須安裝最新的 .NET SDK。
本文假設您知道如何使用命令列,並且有慣用的文字編輯器。 如果您尚未使用文字編輯器,Visual Studio Code 是 F# 文字編輯器的絕佳選項。
建置簡單的多專案解決方案
開啟命令提示字元/終端機,並使用 dotnet new 命令來建立名為 FSharpSample
的新解決方案檔案:
dotnet new sln -o FSharpSample
執行上一個命令之後,會產生下列目錄結構:
FSharpSample
├── FSharpSample.sln
撰寫類別庫
將目錄變更為 FSharpSample。
使用 dotnet new
命令,在名為 Library 的 src 資料夾中建立類別庫專案。
dotnet new classlib -lang "F#" -o src/Library
執行上一個命令之後,會產生下列目錄結構:
└── FSharpSample
├── FSharpSample.sln
└── src
└── Library
├── Library.fs
└── Library.fsproj
以下列程式碼取代 Library.fs
的內容:
module Library
open System.Text.Json
let getJson value =
let json = JsonSerializer.Serialize(value)
value, json
使用 dotnet sln add 命令將 Library
專案新增至 FSharpSample
解決方案:
dotnet sln add src/Library/Library.fsproj
執行 dotnet build
以建置專案。 未解析的相依性會在建置時進行還原。
撰寫取用類別庫的主控台應用程式
使用 dotnet new
命令,在名為 App 的 src 資料夾中建立主控台應用程式。
dotnet new console -lang "F#" -o src/App
執行上一個命令之後,會產生下列目錄結構:
└── FSharpSample
├── FSharpSample.sln
└── src
├── App
│ ├── App.fsproj
│ ├── Program.fs
└── Library
├── Library.fs
└── Library.fsproj
以下列程式碼來取代 Program.fs
檔案的內容:
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
使用 dotnet add reference 將參考新增至 Library
專案。
dotnet add src/App/App.fsproj reference src/Library/Library.fsproj
使用 dotnet sln add
命令將 App
專案新增至 FSharpSample
解決方案:
dotnet sln add src/App/App.fsproj
使用 dotnet restore
還原 NuGet 相依性,然後執行 dotnet build
以建置專案。
將目錄變更為 src/App
主控台專案,並執行傳遞 Hello World
做為引數的專案:
cd src/App
dotnet run Hello World
您應該會看見下列結果:
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}
下一步
接下來,請參閱 F# 導覽,以深入了解不同的 F# 功能。