「これ」はすでに疲れていると感じたことはありますか? 何か新しいものが欲しいですか? 「これ」は、ゲーム、仕事、車など、何でもかまいません。 毎日繰り返されるもの。 プログラミングでは? カットの下には、C#の疲労に関するストーリーと、より興味深いアプローチがあります。
著者に発言権を与えます。
最近、私はC#に少しうんざりしています。同じタイプのコードの無限の行は、時間の経過とともに私の心を温めなくなります。 そのような瞬間に、時々魂のために何かをしたいことがあります。 私の場合、これらはLinuxとF#です。
ほとんどの場合、私は自分の快適ゾーンから出ることが重要です。 一般に、私はそれだけを行い、システムと言語を変更しました。
休暇を計画していると、どこから始めればいいのかわからないという事実に直面しました。 LinuxでのF#の状況を見てみましょう。
基本:
- 軽量の構文エディターが必要
- F#インタラクティブサポートが必要
- .NET環境が必要
- デバッガが必要(ただし、いつものように)
洗練されたhabrozhiteliは、「 軽量エディター」+ Microsoft = Visual Studio Codeであることをすでに認識しています 。 私はあなたがすでにそれを持っていることを望みます:)
ビジネスに取り掛かろう
そこで、エディターの選択を整理し、他のすべてを順番に並べました。
- ほとんどのLinuxシステムについては、monoおよびfsharpパッケージをインストールする必要があります 。 指示にはArch Linux(およびそれに基づくディストリビューション)は含まれていませんが、これらのパッケージは標準のpacmanリポジトリに存在し、指示はソースからアセンブルする方法を示しているため、問題はありません。
原則として、すでに何かを始めるにはこれで十分ですが、記事はすぐに終わります。
- また、.NET Core 2.0.0(Runtime + SDK)もインストールします。ほとんどのシステムについては、 こちらの手順を参照してください 。 Arch Linuxの場合、AURからdotnetおよびdotnet-sdk-2.0パッケージをインストールするのが最も簡単です。 その場合は、 githubその後、作業用のVSコードの準備に直接進みます。
F#構文、ビルド、およびパッケージ管理Nugetをサポートする拡張機能をインストールします。
完全を期すために、.Net Coreと互換性のあるNugetマネージャーを配置できます。
デバッグ用に拡張機能をインストールします(はい、すべて正しいです。C#で記述されています)。
その後、 このラップをドロップし、指示に従います:
dotnet restore && code .
次に、 VS Code
を再起動し、「デバッガ」の拡張子がパッケージをダウンロードして通常展開するまで待ちます。
実際、ほとんどすべての準備が整ったので、テストするだけです。
- どこかにフォルダを作成し、そこでコンソールを実行します。 次に行うこと:
dotnet new console -lang F# dotnet run
Hello World from F#!
大切なHello World from F#!
入手してHello World from F#!
- このコードフォルダーでVSコードを開きます。
- Program.fsに移動してコードを選択し、Alt + Enterを押します。
待望のF#Interactiveが起動します。
より便利な目的にも使用できます。
次に、アセンブリとデバッグを見てみましょう。
- ビルドディレクティブを設定するには、Ctrl + Shift + Bを押して、.Net Coreを選択します。
自動的に構成されたファイルを変更する必要はありません。
- その後、
Ctrl+Shift+B
もう一度押して、アセンブリが成功することを確認します。
- このF5の後、.Net Coreも選択し、プログラムへのパスを変更します。
- それだけです。その後、ブレークポイント(F9)を唯一の行に配置して、デバッガーをチェックできます。
したがって、マシンは調整され、素晴らしい関数型言語での新しい成果に備えています。 素晴らしいボーナスは、成果をC#プロジェクトに埋め込むことができることです(.dllを接続することにより)。
まあ、あなたは誰が知っていたのか分からない)
著者について
Maximilian Spiridonov -C#開発者、MAI学生、マイクロソフト学生パートナー。 私は学校で.NETの専門能力開発に来ました。 彼は、WPF(MVVM)+ C#の実際のプロジェクトで2.5年以上働いており、MySQL、C#で5.5年以上開発しています。 現在の主な関心分野は、Xamarinでのモバイル開発です。 また、偶然にも、興味のある分野はC / C ++とLinuxでした。
LinuxでのVisual Studio CodeのC / C ++に関するMaximilianの前の記事 。
TelegramのF#でチャットすることもできます。