Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Bu makale, .NET CLI ile herhangi bir işletim sisteminde (Windows, macOS veya Linux) F# kullanmaya nasıl başlayabileceğinizi kapsar. Konsol uygulaması tarafından çağrılan bir sınıf kitaplığı ile çok projeli bir çözüm oluşturma işleminden geçer.
Önkoşullar
Başlamak için en son .NET SDK'sını yüklemeniz gerekir.
Bu makalede, komut satırını kullanmayı bildiğiniz ve tercih edilen bir metin düzenleyicisine sahip olduğunuz varsayılır. Henüz kullanmıyorsanız , Visual Studio Code F# için metin düzenleyicisi olarak harika bir seçenektir.
Basit bir çoklu proje çözümü oluşturma
Bir komut istemi/terminal açın ve adlı yeni bir çözüm dosyası oluşturmak için FSharpSample komutunu kullanın:
dotnet new sln -o FSharpSample
Aşağıdaki dizin yapısı, önceki komut çalıştırıldıktan sonra oluşturulur:
FSharpSample
├── FSharpSample.sln
Bir sınıf kütüphanesi yazmak
Dizinleri FSharpSample olarak değiştirin.
dotnet new Library adlı src klasöründe bir sınıf kitaplığı projesi oluşturmak için komutunu kullanın.
dotnet new classlib -lang "F#" -o src/Library
Aşağıdaki dizin yapısı, önceki komut çalıştırıldıktan sonra oluşturulur:
└── FSharpSample
├── FSharpSample.sln
└── src
└── Library
├── Library.fs
└── Library.fsproj
Library.fs içeriğini aşağıdaki kodla değiştirin:
module Library
open System.Text.Json
let getJson value =
let json = JsonSerializer.Serialize(value)
value, json
Library
FSharpSample komutunu kullanarak projeyi çözüme ekleyin. Bu komut, çözümün onu izleyebilmesi ve oluşturabilmesi için projeyi çözüm dosyasına ekler:
dotnet sln add src/Library/Library.fsproj
Projeyi oluşturmak için komutunu çalıştırın dotnet build . Yapı oluşturulurken çözümlenmemiş bağımlılıklar geri yüklenecek.
Sınıf kitaplığını kullanan bir konsol uygulaması yazma
dotnet new Komutunu kullanarak App adlı src klasöründe bir konsol uygulaması oluşturun.
dotnet new console -lang "F#" -o src/App
Aşağıdaki dizin yapısı, önceki komut çalıştırıldıktan sonra oluşturulur:
└── FSharpSample
├── FSharpSample.sln
└── src
├── App
│ ├── App.fsproj
│ ├── Program.fs
└── Library
├── Library.fs
└── Library.fsproj
Program.fs dosyasının içeriğini aşağıdaki kodla değiştirin:
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
Library projeye dotnet reference add komutunu kullanarak referans ekleyin. Bu komut App.fsproj dosyasına bir <ProjectReference> öğe ekler ve derleyiciye Uygulama projesinin Kitaplık projesine bağlı olduğunu söyler:
dotnet add src/App/App.fsproj reference src/Library/Library.fsproj
Önceki komut App.fsproj dosyasına aşağıdaki XML'yi ekler:
<ItemGroup>
<ProjectReference Include="..\Library\Library.fsproj" />
</ItemGroup>
Tavsiye
Bu adımı atlar ve Uygulama projesini derlemeye çalışırsanız, modül bulunamadığından Library bir derleme hatası alırsınız. Böyle bir durumda, dotnet add reference komutunu çalıştırabilirsiniz veya yukarıda gösterilen <ProjectReference> elementini App.fsproj dosyanıza el ile ekleyebilirsiniz.
App komutunu kullanarak projeyi FSharpSample çözüme dotnet sln add ekleyin:
dotnet sln add src/App/App.fsproj
NuGet bağımlılıklarını dotnet restore ile geri yükleyin ve projeyi oluşturmak için dotnet build komutunu çalıştırın.
Dizini src/App konsol projesine değiştirin ve projeyi Hello World bağımsız değişkenleri ile çalıştırın.
cd src/App
dotnet run Hello World
Aşağıdaki sonuçları görmeniz gerekir:
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}
Sonraki adımlar
Ardından farklı F# özellikleri hakkında daha fazla bilgi edinmek için F# Turu'na göz atın.