スポンサーリンク

MacでF#の開発環境を構築する

この度F#に新たにチャレンジをしようと思いMacで開発環境を整えたので、備忘も含めて記事にしました。

MacでF#の開発環境を構築する

F#で開発する際のIDEとしてはVisual StudioVisual Studio CodeJetBrain Riderの3つがメジャーみたいです。

自分の場合はVisual Studio Codeが使い慣れているため、今回の記事もVisual Studio Codeを使った環境構築に関して記載していきます。

今回、環境構築に必要なものは以下です。

.NET Core SDKをインストールする

F#のランタイムは.NETとmonoがあるようですが、今回は.NETを使って環境構築を行います。

まずは、.Net Core SDKからSDKをダウンロードしてMacにインストーします。

インストールが完了したらターミナル等で下記のコマンドを実行します。

dotnet --version
インストールを確認する

バージョンが表示されたら無事にインストール完了です。

Visual Studio Codeをインストールする

Visual Studio Codeは既にインストール済みの人が多いかもしれませんので、インストール済みの場合はこの手順はスキップしてVisual Studio Codeの拡張機能のインストールに進んでください。

Visual Studio Codeはここからダウンロードが可能です。

Visual Studio Codeのインストールが完了したら次は拡張機能のインストールに進みます。

Visual Studio Codeの拡張機能をインストールする

今回は2つの拡張機能をインストールします。

Ionide-fsharpは必須で、Bracket Pair Colorizerは任意でインストールします。

Ionide-fsharpをインストールする

Visual Studio Codeを起動し、左側のサイドバーから拡張機能を選択して、Ionide-fsharpを検索します。
※ちなみに頭文字はLの小文字ではなくiの大文字です。

検索したらあとは Install をクリックするだけです。

ionide-fsharpをインストールする

Bracket Pair Colorizerをインストールする

こちらの拡張機能は任意になります。

機能としては対になる括弧を同じ色にしてくれる機能となります。

関数プログラミングの場合は括弧を多用するので、この機能があると便利です。

ただF#の構文はPythonと同じようにのオフサイドルール(括弧ではなく、インデントでコードのブロックを指定する規則)が採用されているため、どこまで活躍するかは勉強前の時点では不明なのですが、自分は一旦インストールしました。

こちらもIonide-fsharpと同様にVisual Studio Codeの拡張機能からBracket Pair Colorizerで検索してインストールします。

Bracket Pair Colorizerをインストールする

検索するとBracket Pair ColorizerBracket Pair Colorizer2の2つが出てくると思います。

Bracket Pair Colorizer2は無印と機能は全く同じであるが、2の方が速度的なパフォーマンスは良いそうです。

ただ2022年以降の開発予定はないって記載があったので、自分は無難に無印を選択しました。

これでVisual Studio Codeの設定も完了です。

せっかく環境構築が完了したので、プロジェクトを作成して簡単にコードを実行してみようと思います。

実際にF#を実行してみる

実際にコードを動かすにあたって今回はテンプレートからアプリケーションを作成して動かそうと思います。

アプリケーションの作成は.Net Core SDKがインストール済みであればコマンドで一発です。

アプリケーションを作成したい任意のディレクトリに移動して、下記のコマンドを実行します。

 dotnet new console -lang F# -o Sample

上記のコマンドを簡単に説明すると、「F#で実装されたSampleという名前のアプリケーションをConsole Applicationのテンプレートを使って作成する」です。

今回の場合はSampleという名前にしたので、コマンドを実行するとSampleというディレクトリが作成されていると思います。

Sampleプロジェクトを作成する

作成したアプリケーションをVisual Studio Codeで開いてみると下図のようになっています。

Visual Studio Codeで開く

問題なくアプリケーションの作成ができたみたいなので、実際に実行してみます。

コンソールからアプリケーションを実行する

実行するには、まずアプリケーションのディレクトリに移動します。

cd Sample

移動したら下記のコマンドを実行します。

dotnet run

するとProgram.fsに実装されているHello from F#が表示されました。

アプリケーションを実行する

VS Codeからアプリケーションを実行する

続いてはVisual Studio Codeから実行またはデバッグできるように設定をしていきます。

まずVisual Studio CodeでSampleディレクトリを開きます。

開くディレクトリに注意

ここではSample.fsprojファイルが配置されているディレクトリをVisual Studio Codeで開く必要があります。

今回の場合だとSampleディレクトリを開きます。

Sampleディレクトリを開く

Program.fsを開いたらF5を押下します。

すると選択肢が表示されると思うので、.NET 5+ and .NET Coreを選択します。

選択肢から選択する

選択するとlaunch.jsonが作成されて、右下にAdd Configurationと表示されるので、Add Configurationを押下します。

Add Configurationを選択する

するとlaunch.jsonの7行目あたりにカーソルが移動すると思うので、そこで.NETと入力します。

.NETを入力する

候補が表示されると思うので、.NET: Launch .NET Core Console Appを選択します。

すると自動で設定が入力されるので、必要な箇所を書き換えていきます。

書き換えが必要な場所は12行目あたりの、target-frameworkproject-name.dllの2つです。

まず、target-frameworkですが、これは使うdotnetのバージョンに依存するもので、Sample.fsprojファイルのTargetFrameworkに記載されているものと同じものに書き換えます。

自分の場合はnet6.0だったのでnet6.0に書き換えました。

続いてはproject-name.dllの書き換えです。これはアプリケーション名になる部分なので、今回の場合はSample.dllと書き換えます。
dllの拡張子も必要なので忘れないようにしてください。

以上を踏まえて変更した結果は下記の通りです。

{
    // Use IntelliSense to learn about possible attributes.
    // Hover to view descriptions of existing attributes.
    // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "name": ".NET Core Launch (console)",
            "type": "coreclr",
            "request": "launch",
            "preLaunchTask": "build",
            "program": "${workspaceFolder}/bin/Debug/net6.0/Sample.dll",
            "args": [],
            "cwd": "${workspaceFolder}",
            "stopAtEntry": false,
            "console": "internalConsole"
        }
    ]
}

書き換えが完了したら改めてF5を押下します。

すると画像のようにエラーメッセージがでると思うので、Configure Taskを押下します。

エラーメッセージが表示される

するとまた選択肢が表示されるのでCreate tasks.json file from templateを選択します。

tasks.jsonの作成を選択する

選択肢の中から.NET Coreを選択します。

.NET Coreを選択する

するとtasks.jsonが作成されると思います。

今はtasks.jsonに手を加える必要はありません。

これで準備は完了です。

再度F5を押下します。

デバッグ実行する

Hello from F#が表示されればOKです。

黄色い文字でたくさんメッセージが出ていますが、これはデバッグ実行によるデバッグメッセージです。

デバッグメッセージを表示したくない場合はControl + F5で通常実行すればOKです。

通常実行すると下図のようにデバッグメッセージが消えます。

通常実行する

これでVisual Studio Codeで実行する設定も完了です。

これで環境構築と動作確認は完了です!

余談

試しにちょっとコードを書いてみましたが、補完も効くようなので便利!

Visual Studio Codeのセットアップの確認

まとめ

今回は環境構築がメインだったのでアプリケーションの作成には一番簡単であろう、Console Applicationを選択しました。

実務レベルで実際にアプリケーションを作成していくとなると、ソリューションを作成したり、プロジェクト作成時の引数を変更して自分が実装したいアプリケーションに近いテンプレートを選択することも考える必要があるのではないかと思います。

実際にどのようなテンプレートが使えるのかは下記のページで記載されています。

dotnet new - .NET CLI
The dotnet new command creates new .NET projects based on the specified template.

F#で使えるのはまだ半分程度ですね。。

とりあえず環境構築が完了したので今回はOKです。

みなさまの役に立ちますと幸いです。

F#環境構築
スポンサーリンク
ibukishをフォローする
スポンサーリンク
ibukish Lab+

コメント

タイトルとURLをコピーしました