ã¯ããã«
ä¸å°¾ç¾ååããããèªçæ¥ 111æ¥ç® ããã§ã¨ããããã¾ãï¼ nikkieã§ãã
F#ãdotnetã¨ã¯ããã¾ã§ãã¸ãã¹ä¸ã®ä»ãåããªã®ã§ãããHello Worldã§å°ãã ãæãåããã¦ã¿ã¦å¦ã³ãããã¾ããã
ç®æ¬¡
- ã¯ããã«
- ç®æ¬¡
- dotnet newã³ãã³ãã便å©ï¼
- dotnet new webã ãã§Hello World
- Minimal APIã¨ããã®ãã
- æå±å ã®ããã°ã«åãããããè¨äºï¼
- çµããã«
dotnet newã³ãã³ãã便å©ï¼
dotnet new web -lang F#1
% dotnet --version 8.0.411 % mkdir App % cd App % dotnet new web -lang F#
webã®æå®ã§ãASP.NET Core Emptyããæå®
https://learn.microsoft.com/ja-jp/dotnet/core/tools/dotnet-new-sdk-templates#web
dotnet new webã ãã§Hello World
dotnet new webããã ãã§åããã¾ããï¼
% cd .. % dotnet run --project App
Hello Worldã表示ããã¾ãã

ããªãã¿ã®ãã®ã追å
app.MapGet("/", Func<string>(fun () -> "Hello World!")) |> ignore
+ app.MapGet("/sakana", Func<string>(fun () -> "ã¡ãããªãã")) |> ignore
app.Run()

Minimal APIã¨ããã®ãã
颿°åã¾ã¤ãã®å¦ã³ã®1ã¤ã§ãã
ï¼ç§ãã¦ã¼ã¶ãã¼ã¹ã§åãã¦ã¦ãã¸ãã¹ä¸F#æ¸ãããã¨ãããã®ã§ããï¼ããã¯Minimal APIã¨ããã®ã #fp_matsuri_chttps://t.co/M1omIsPmys
— nikkie(ã«ã£ãã¼) / ã«ã£P (@ftnext) 2025å¹´6æ15æ¥
æå±å ã®ããã°ã«åãããããè¨äºï¼
ã¼ãã¤ãã®ã¨ããã¯æªçµé¨ã ã£ãã®ã§ãããã¤ãå¦ã³ãããã¾ããã
dotnetã³ãã³ãã便å©ã§ããã2
dotnet new slnï¼ã½ãªã¥ã¼ã·ã§ã³ãã¡ã¤ã«ä½æï¼- dotnet sln add
ã½ãªã¥ã¼ã·ã§ã³ ãã¡ã¤ã«ã« 1 ã¤ä»¥ä¸ã®ããã¸ã§ã¯ãã追å ãã¾ãã
- dotnet watch
ã½ã¼ã¹ ã³ã¼ãã®å¤æ´ãæ¤åºãããã¨ãã«ãæå®ãããã¢ããªã±ã¼ã·ã§ã³ãåèµ·åã¾ãã¯ããã ãªãã¼ã ããããæå®ãã dotnet ã³ãã³ããå®è¡ãã¾ãã
IResultåãªã©ãHello Worldã®å
ã®å
容ãè¼ã£ã¦ãã¾ãã
颿°åã¾ã¤ãã®çºè¡¨è³æã«ãç¹ããã¾ããï¼åãæ¹ã§ãï¼
çµããã«
èªåã®æã§F#ã»Minimal APIã§Hello Worldãã¦ã¿ã¦ã便å©ãªdotnetã³ãã³ããããã¤ããããã¨ãç¥ãã¾ããã
ãªãã¸ããªã¯ãã®ãããã§ãï¼
-
éå»ã«
consoleãæå®ãããã¨ãããã¾ã ↩ -
æ
£ã親ããã Pythonã§ã¯ã¹ãã£ãã©ã¼ã«ãã£ã³ã°æ©è½ã¯æ¨æºã«ã¯ããã¾ããã
cookiecutterãªã©ãµã¼ããã¼ãã£ãã¼ã«ãèãããã¾ãï¼uvxãpipx runï¼ï¼↩