.NET Core CLI を使用した F# の概要します。Get started with F# with the .NET Core CLI

この記事では、どのできますを開始する F# .NET Core CLI を使用したオペレーティング システム (Windows、macOS、または Linux) でについて説明します。This article covers how you can get started with F# on any operating system (Windows, macOS, or Linux) with the .NET Core CLI. コンソール アプリケーションによって呼び出されるクラス ライブラリを使用したマルチ プロジェクト ソリューションを構築する経由になります。It goes through building a multi-project solution with a class library that is called by a console application.

必須コンポーネントPrerequisites

を開始するには、、の最新バージョンをインストールする必要があります.NET Core SDKします。To begin, you must install the latest .NET Core SDK.

この記事では、方法を知っているコマンドラインを使用して、任意のテキスト エディターを前提としています。This article assumes that you know how to use a command line and have a preferred text editor. それを既に使用しない場合Visual Studio Code F# 用のテキスト エディターとして便利なオプションです。If you don't already use it, Visual Studio Code is a great option as a text editor for F#.

単純なマルチ プロジェクト ソリューションをビルドします。Build a simple multi-project solution

コマンド プロンプト/ターミナルを開きを使用して、新しい dotnetという新しいソリューション ファイルを作成するコマンドFSNetCore:Open a command prompt/terminal and use the dotnet new command to create new solution file called FSNetCore:

dotnet new sln -o FSNetCore

前のコマンドを実行した後は、次のディレクトリ構造が生成されます。The following directory structure is produced after running the previous command:

FSNetCore
    ├── FSNetCore.sln

クラス ライブラリを作成します。Write a class library

ディレクトリに移動FSNetCoreします。Change directories to FSNetCore.

使用して、dotnet newコマンド、クラス ライブラリ プロジェクトを作成、 srcライブラリという名前のフォルダー。Use the dotnet new command, create a class library project in the src folder named Library.

dotnet new classlib -lang F# -o src/Library

前のコマンドを実行した後は、次のディレクトリ構造が生成されます。The following directory structure is produced after running the previous command:

└── FSNetCore
    ├── FSNetCore.sln
    └── src
        └── Library
            ├── Library.fs
            └── Library.fsproj

内容を置き換えるLibrary.fsを次のコード。Replace the contents of Library.fs with the following code:

module Library

open Newtonsoft.Json

let getJsonNetJson value =
    sprintf "I used to be %s but now I'm %s thanks to JSON.NET!" value (JsonConvert.SerializeObject(value))

ライブラリ プロジェクトに Newtonsoft.Json NuGet パッケージを追加します。Add the Newtonsoft.Json NuGet package to the Library project.

dotnet add src/Library/Library.fsproj package Newtonsoft.Json

追加、LibraryプロジェクトをFSNetCoreソリューションを使用して、 dotnet sln 追加コマンド。Add the Library project to the FSNetCore solution using the dotnet sln add command:

dotnet sln add src/Library/Library.fsproj

実行dotnet buildプロジェクトをビルドします。Run dotnet build to build the project. 作成するときに、未解決の依存関係が復元されます。Unresolved dependencies will be restored when building.

クラス ライブラリを使用するコンソール アプリケーションを作成します。Write a console application that consumes the class library

使用して、dotnet newコマンド、コンソール アプリケーションを作成、 srcアプリという名前のフォルダー。Use the dotnet new command, create a console application in the src folder named App.

dotnet new console -lang F# -o src/App

前のコマンドを実行した後は、次のディレクトリ構造が生成されます。The following directory structure is produced after running the previous command:

└── FSNetCore
    ├── FSNetCore.sln
    └── src
        ├── App
        │   ├── App.fsproj
        │   ├── Program.fs
        └── Library
            ├── Library.fs
            └── Library.fsproj

内容を置き換える、Program.fsを次のコード ファイル。Replace the contents of the Program.fs file with the following code:

open System
open Library

[<EntryPoint>]
let main argv =
    printfn "Nice command-line arguments! Here's what JSON.NET has to say about them:"

    argv
    |> Array.map getJsonNetJson
    |> Array.iter (printfn "%s")

    0 // return an integer exit code

参照を追加、Libraryプロジェクトを使用してdotnet 参照の追加します。Add a reference to the Library project using dotnet add reference.

dotnet add src/App/App.fsproj reference src/Library/Library.fsproj

追加、AppプロジェクトをFSNetCoreソリューションを使用して、dotnet sln addコマンド。Add the App project to the FSNetCore solution using the dotnet sln add command:

dotnet sln add src/App/App.fsproj

NuGet の依存関係を復元dotnet restore実行dotnet buildプロジェクトをビルドします。Restore the NuGet dependencies, dotnet restore and run dotnet build to build the project.

ディレクトリに、src/Appコンソール プロジェクトとプロジェクトを渡すことを実行Hello World引数として。Change directory to the src/App console project and run the project passing Hello World as arguments:

cd src/App
dotnet run Hello World

次の結果が表示されます。You should see the following results:

Nice command-line arguments! Here's what JSON.NET has to say about them:

I used to be Hello but now I'm ""Hello"" thanks to JSON.NET!
I used to be World but now I'm ""World"" thanks to JSON.NET!

次の手順Next steps

次に、チェック アウト、 F# のツアーを F# のさまざまな機能の詳細を参照してください。Next, check out the Tour of F# to learn more about different F# features.