Ugrás a tartalomhoz

F Sharp

A Wikiszótárból, a nyitott szótárból
(F Sharp (programming language) szócikkből átirányítva)


Főnév

F Sharp (tsz. F Sharps)

  1. (informatika) F# (kiejtve: F sharp) egy funkcionális elsődleges programozási nyelv a .NET platformon. A Microsoft Research fejlesztette, Don Syme vezetésével.

Fontos: bár támogatja az objektum-orientált és imperatív stílust is, az F# alapvetően funkcionális → a fő paradigmája:

Immutable adatokFüggvények, mint elsőrendű elemekKifejezés-orientált szemléletErős típusosság, típusinferencia



🌟 Rövid jellemzés

  • Funkcionális → hasonló stílus, mint Haskell vagy OCaml
  • .NET interoperabilitás → tudsz C# kódot hívni és fordítva
  • Tömör, kifejező kód
  • Erős típusinferencia → sokszor nem kell típust kiírni
  • Immutable by default → hibabiztosabb kód
  • Aszinkron és párhuzamos feldolgozás natív támogatással



📝 Egyszerű F# példa

// Egyszerű függvény definíció
let add x y = x + y

// Használat
let result = add 3 5
printfn "Result: %d" result

Magyarázat:

  • let → definiálás kulcsszava
  • A let add x y = x + y → függvény, ami két paramétert ad össze
  • printfn → kiírás (formázott)



🏗 Tipikus alkalmazási területek

  • Pénzügyi alkalmazások (bankok is használják)
  • Adatfeldolgozás / Data science
  • Elemző eszközök
  • Backend szolgáltatások (.NET-en)
  • Compiler és interpreter fejlesztés
  • Játékfejlesztés bizonyos részei (logika)



🔑 Nyelvi elemek

Immutable adatokRekord típusokDiszkrét uniók (discriminated unions) → algebrai adattípusok ✅ Pattern matching (mint Haskell vagy Scala) ✅ Magasabb rendű függvényekAszinkron workflow (async)Pipeline operátor (|>) → olvashatóbb kód ✅ Listák, sorozatok, tömbök beépítve



📚 Kis ízelítő: Pattern Matching

let describeNumber x =
    match x with
    | 0 -> "Zero"
    | 1 -> "One"
    | _ -> "Other"

printfn "%s" (describeNumber 2)

🚀 Miért érdemes használni F#-ot?

Biztonságosabb kód → immutable, típusbiztos ✅ Tömörebb kód → kevesebb boilerplate, mint C#-ban ✅ Kifejezőbb modellezés → discriminated unions ✅ Egyszerű párhuzamosításInteroperabilitás C#-szal és .NET ökoszisztémávalJól használható algoritmikus, matematikai problémákhoz



🌐 F# helye a .NET világban

  • A .NET SDK-val (dotnet CLI) F# is alapból elérhető
  • Használható:
    • Visual Studio
    • VS Code + Ionide plugin
    • Rider (JetBrains)
    • parancssori toolchain is van



TL;DR

F#:

  • Funkcionális nyelv .NET-en
  • Elsőrendű támogatás: immutable adatok, pattern matching, discriminated unions
  • .NET interop
  • Tömör, biztonságos kód
  • Remek választás pénzügy, adatfeldolgozás, háttérrendszerek, toolok esetén