Membuat aplikasi F#

Selesai

Pada titik ini, Anda telah menggunakan REPL dan bahkan mungkin membuat file skrip fsx. Sekarang Anda berada pada titik di mana aplikasi Anda telah berkembang sehingga Anda perlu menyertakan lebih banyak file, dan kemampuan untuk mengemas dan mendistribusikan aplikasi Anda. Untuk melakukannya, Anda perlu membuat proyek. .NET SDK menyediakan berbagai template proyek untuk membantu Anda mulai membangun semua jenis aplikasi.

Apa itu Template .NET?

Saat menginstal .NET SDK, Anda menerima lebih dari selusin templat bawaan untuk membuat proyek dan file, termasuk:

  • Aplikasi konsol
  • Pustaka kelas
  • Proyek pengujian unit
  • aplikasi web ASP.NET Core
  • File konfigurasi

F# memiliki dukungan untuk berbagai templat, mulai dari pengujian dan web hingga pustaka kelas. Untuk daftar lengkap proyek yang didukung, jalankan dotnet new -l di konsol.

Membuat aplikasi menggunakan template

Untuk membuat aplikasi baru, gunakan perintah .NET CLI dotnet new. Misalnya, jika Anda ingin membuat aplikasi konsol F#, gunakan perintah berikut.

dotnet new console --language F# -o MyFSharpApp

Beberapa shell menafsirkan # sebagai karakter khusus. Dalam hal ini, sertakan bahasa dalam tanda kutip seperti dotnet new console --language "F#" -o MyFSharpApp.

Perintah dotnet new console menggunakan template .NET konsol bawaan untuk membuat perancah aplikasi konsol baru.

Setelah beberapa detik, direktori bernama MyFSharpApp muncul dengan kode untuk aplikasi F# Anda.

Struktur Proyek

Ada dua file di direktori MyFSharpApp :

  • Program.fs - Titik entri untuk aplikasi Anda.
  • MyFSharpApp.fsproj - File proyek MSBuild yang berisi informasi dan instruksi pembangunan. MSBuild adalah platform untuk membangun aplikasi yang menyediakan skema XML untuk file proyek yang mengontrol cara platform pembangunan memproses dan membangun perangkat lunak.

File Program.fs berisi kode berikut:

// Learn more about F# at http://learn.microsoft.com/dotnet/fsharp

open System

// Define a function to construct a message to print
let from whom =
    sprintf "from %s" whom

[<EntryPoint>]
let main argv =
    let message = from "F#" // Call the function
    printfn "Hello world %s" message
    0 // return an integer exit code

Aplikasi ini menggunakan System pustaka kelas, yang diimpor dengan menggunakan open kata kunci.

Fungsi from menggunakan parameter string whom untuk membuat dan memformat pesan string.

Fungsi main adalah titik entri aplikasi. Aplikasi menggunakan fungsi from untuk membuat pesan "dari F#" dan mengikat nilainya ke message. Kemudian, dengan menggunakan fungsi printfn, aplikasi mencetak "Halo dunia dari F#" ke konsol.

Membangun aplikasi

Sekarang setelah Anda membuat aplikasi konsol, saatnya membangun aplikasi konsol menggunakan perintah dotnet build. Perintah dotnet build membangun proyek dan dependensinya ke dalam kumpulan biner. Biner menyertakan kode proyek dalam file Bahasa Perantara (IL) dengan ekstensi .dll. Bergantung pada jenis dan pengaturan proyek, file lain mungkin disertakan, seperti:

  • Executable yang dapat Anda gunakan untuk menjalankan aplikasi, jika jenis proyek adalah penargetan yang dapat dieksekusi .NET Core 3.0 atau yang lebih baru.
  • File simbol yang digunakan untuk penelusuran kesalahan dengan ekstensi .pdb.
  • File .deps.json, yang mencantumkan dependensi aplikasi atau pustaka.
  • File .runtimeconfig.json, yang menentukan runtime bersama dan versinya untuk aplikasi.
  • Pustaka lain tempat proyek bergantung (melalui referensi proyek atau referensi paket NuGet).

File output ditulis ke lokasi default, yaitu bin/<configuration>/<target>. Debug adalah konfigurasi default, tetapi Anda dapat menimpanya menggunakan opsi --configuration. Target mengacu pada kerangka kerja target, yang ditentukan dalam properti TargetFramework dari file fsproj. Kerangka kerja target menetapkan kumpulan API yang ingin Anda sediakan untuk aplikasi atau pustaka. Misalnya jika Anda memiliki aplikasi .NET 5 dan menjalankan dotnet build, output ditempatkan di bin/Debug/net5.0.

Jalankan aplikasi Anda

Untuk aplikasi yang dapat dieksekusi, dotnet run perintah menyediakan opsi yang nyaman untuk menjalankan aplikasi Anda. Perintah dotnet run mencari .dll atau eksekusi di direktori output Anda dan menggunakan driver dotnet untuk menjalankan kode seperti yang ditentukan di titik entri aplikasi (Program.fs).

Tip

Saat Anda menggunakan perintah dotnet run, dotnet build juga dijalankan secara otomatis. Oleh karena itu, Anda dapat melewati langkah membangun aplikasi secara eksplisit.