Referenční dokumentace jazyka F#

Tato část je referenční informace k jazyku F#, programovacímu jazyku s více paradigmaty, který cílí na .NET. Jazyk F# podporuje funkční, objektově orientované a imperativní programovací modely.

Referenční informace k rozhraní API základní knihovny F#

Referenční informace k rozhraní API F# Core Library (FSharp.Core) jsou odkazem na všechny obory názvů, moduly, typy a funkce základní knihovny F#.

Tokeny F#

Následující tabulka obsahuje referenční články, které poskytují tabulky klíčových slov, symbolů a literálů, které se v jazyce F# používají jako tokeny.

Nadpis Popis
Referenční dokumentace klíčových slov Obsahuje odkazy na informace o všech klíčových slovech jazyka F#.
Referenční dokumentace symbolů a operátorů Obsahuje tabulku symbolů a operátorů, které se používají v jazyce F#.
Literály Popisuje syntaxi hodnot literálů v jazyce F# a způsob zadání informací o typu pro literály jazyka F#.

Koncepty jazyka F#

Následující tabulka obsahuje dostupná referenční témata popisující koncepty jazyka.

Nadpis Popis
Functions Funkce jsou základní jednotkou provádění programu v libovolném programovacím jazyce. Stejně jako v jiných jazycích má funkce jazyka F# název, může mít parametry a přijmout argumenty a tělo. Jazyk F# také podporuje funkční programovací konstrukce, jako je zacházení s funkcemi jako s hodnotami, používání nepojmenovaných funkcí ve výrazech, složení funkcí pro vytváření nových funkcí, kurátorované funkce a implicitní definice funkcí prostřednictvím částečného použití argumentů funkce.
Typy F# Popisuje typy, které se používají v jazyce F# a jak jsou typy jazyka F# pojmenovány a popsány.
Odvození typu Popisuje, jak kompilátor jazyka F# odvodí typy hodnot, proměnných, parametrů a návratových hodnot.
Automatická generalizace Popisuje obecné konstrukce v jazyce F#.
Dědičnost Popisuje dědičnost, která se používá k modelování relace "je-a" nebo podtypování v objektově orientovaném programování.
Členové Popisuje členy typů objektů jazyka F#.
Parametry a argumenty Popisuje jazykovou podporu pro definování parametrů a předávání argumentů funkcím, metodám a vlastnostem. Obsahuje informace o tom, jak předání pomocí odkazu.
Přetížení operátoru Popisuje, jak přetížit aritmetické operátory ve třídě nebo typu záznamu a na globální úrovni.
Přetypování a převody Popisuje podporu převodů typů v jazyce F#.
Řízení přístupu Popisuje řízení přístupu v jazyce F#. Řízení přístupu znamená deklarování toho, kteří klienti mohou používat určité prvky programu, jako jsou typy, metody, funkce atd.
Porovnávání Popisuje vzory, což jsou pravidla pro transformaci vstupních dat a používají se v celém jazyce F#. Můžete porovnat data se vzorem, rozložit data na jednotlivé části nebo extrahovat informace z dat různými způsoby.
Aktivní vzorky Popisuje aktivní vzory. Aktivní vzory umožňují definovat pojmenované oddíly, které rozdělují vstupní data. Aktivní vzory můžete použít k rozložit data přizpůsobeným způsobem pro každý oddíl.
Kontrolní výrazy Popisuje assert výraz, což je funkce ladění, kterou můžete použít k otestování výrazu. Při selhání v režimu ladění kontrolní výraz vygeneruje dialogové okno systémové chyby.
Zpracování výjimek Obsahuje informace o podpoře zpracování výjimek v jazyce F#.
Atributy Popisuje atributy, které umožňují použití metadat na programovací konstruktor.
Správa prostředků: Klíčové use slovo Popisuje klíčová slova a use , které mohou řídit using inicializaci a vydání prostředků.
Obory názvů Popisuje podporu oboru názvů v jazyce F#. Obor názvů umožňuje uspořádat kód do oblastí souvisejících funkcí tím, že umožňuje připojit název k seskupení prvků programu.
Moduly Popisuje moduly. Modul F# je seskupení kódu F#, jako jsou hodnoty, typy a hodnoty funkcí, v programu F#. Seskupení kódu v modulech pomáhá udržet související kód pohromadě a pomáhá zabránit konfliktům názvů v programu.
Deklarace importu: Klíčové open slovo Popisuje, jak open funguje. Deklarace importu určuje modul nebo obor názvů, na jehož prvky můžete odkazovat bez použití plně kvalifikovaného názvu.
Signatury Popisuje podpisy a podpisové soubory. Soubor podpisu obsahuje informace o veřejných podpisech sady prvků programu F#, jako jsou typy, obory názvů a moduly. Lze jej použít k určení přístupnosti těchto prvků programu.
dokumentace XML Popisuje podporu generování souborů dokumentace pro komentáře dokumentace XML, označované také jako komentáře s trojitou lomítkem. Dokumentaci můžete vytvořit z komentářů ke kódu v jazyce F# jako v jiných jazycích .NET.
Podrobná syntaxe Popisuje syntaxi konstruktorů jazyka F#, pokud není povolena zjednodušená syntaxe. Podrobná syntaxe je označena #light "off" direktivou v horní části souboru kódu.
Formátování prostého textu Naučte se používat sprintf a další formátování prostého textu v aplikacích a skriptech F#.

Typy F#

Následující tabulka uvádí dostupná referenční témata, která popisují typy podporované jazykem F#.

Nadpis Popis
Hodnoty Popisuje hodnoty, což jsou neměnné veličiny, které mají konkrétní typ. Hodnoty mohou být integrální čísla nebo čísla s plovoucí desetinnou čárkou, znaky nebo text, seznamy, sekvence, pole, řazené kolekce členů, rozlišovaná sjednocená sjednocená spojení, záznamy, typy tříd nebo hodnoty funkcí.
Základní typy Popisuje základní typy, které se používají v jazyce F#. Poskytuje také odpovídající typy .NET a minimální a maximální hodnoty pro každý typ.
Typ jednotky Popisuje typ, což je typ, který indikuje absenci konkrétní hodnoty; typ má pouze jednu hodnotu, která funguje jako zástupný symbol, pokud neexistuje žádná jiná hodnota nebo unit unit je potřebná.
Řetězce Popisuje řetězce v jazyce F#. Typ string představuje neměnný text jako sekvenci znaků Unicode. stringje alias pro System.String v .NET Framework.
N-tice Popisuje řazené kolekce členů, což jsou seskupení nepojmenovaných, ale seřazených hodnot pravděpodobně různých typů.
Typy kolekcí F# Přehled typů funkčních kolekcí F#, včetně typů polí, seznamů, sekvencí (seq), map a sad.
Seznamy Popisuje seznamy. Seznam v jazyce F# je seřazená neměnná řada prvků stejného typu.
Možnosti Popisuje typ možnosti. Možnost v jazyce F# se používá v případě, že hodnota může nebo nemusí existovat. Možnost má základní typ a může obsahovat hodnotu tohoto typu nebo nemusí mít hodnotu.
Sekvence Popisuje sekvence. Sekvence je logická řada prvků všech typů. Jednotlivé prvky sekvence se počítají jenom v případě potřeby, takže reprezentace může být menší než literálový počet prvků.
Pole Popisuje pole. Pole jsou s pevnou velikostí, od nuly, směšitelné sekvence po sobě jdoucích datových prvků, a to vše stejného typu.
Záznamy Popisuje záznamy. Záznamy představují jednoduché agregace pojmenovaných hodnot, volitelně se členy.
Rozlišovaná sjednocení Popisuje rozlišovaná sjednocená sjednocená spojení, která poskytují podporu pro hodnoty, které mohou být jedním z různých pojmenovaných případů, z nichž každý má možná různé hodnoty a typy.
Výčty Popisuje výčty jsou typy, které mají definovanou sadu pojmenovaných hodnot. Můžete je použít místo literálů, aby byl kód čitelný a udržovatelný.
Referenční buňky Popisuje referenční buňky, což jsou umístění úložiště, která umožňují vytvářet aktualizovatelné proměnné s referenční sémantikou.
Zkratky typů Popisuje zkratky typů, což jsou alternativní názvy typů.
Třídy Popisuje třídy, což jsou typy představující objekty, které mohou mít vlastnosti, metody a události.
Struktury Popisuje struktury, což jsou kompaktní typy objektů, které mohou být efektivnější než třída pro typy, které mají malé množství dat a jednoduché chování.
Rozhraní Popisuje rozhraní, která určují sady souvisejících členů, které implementují jiné třídy.
Abstraktní třídy Popisuje abstraktní třídy, což jsou třídy, které necháte některé nebo všechny členy neimplementované, takže implementace mohou být poskytovány odvozenými třídami.
Rozšíření typů Popisuje rozšíření typů, která umožňují přidat nové členy do dříve definovaného typu objektu.
Flexibilní typy Popisuje flexibilní typy. Flexibilní anotace typu označuje, že parametr, proměnná nebo hodnota má typ, který je kompatibilní se zadaným typem, kde kompatibilita je určena pozicí v objektově orientované hierarchii tříd nebo rozhraní.
Delegáti Popisuje delegáty, které představují volání funkce jako objekt.
Měrné jednotky Popisuje měrné jednotky. Hodnoty s plovoucí desetinnou čárkou v jazyce F# mohou mít přidružené měrné jednotky, které se obvykle používají k označení délky, objemu, hmotnosti atd.
Zprostředkovatelé typů Popisuje typ poskytuje a poskytuje odkazy na návody k použití integrovaných zprostředkovatelů typů pro přístup k databázím a webovým službám.

Výrazy F#

Následující tabulka obsahuje témata, která popisují výrazy jazyka F#.

Nadpis Popis
Podmíněné výrazy: if...then...else Popisuje výraz , který spouští různé větve kódu a také se vyhodnocuje na jinou if...then...else hodnotu v závislosti na daném logickém výrazu.
Výrazy shody Popisuje výraz , který poskytuje ovládací prvek větvení, který je založen na porovnání výrazu match se sadu vzorů.
Smyčky: for...to Výraz Popisuje výraz , který se používá k iteraci ve smyčce v rozsahu for...to hodnot proměnné smyčky.
Smyčky: for...in Výraz Popisuje výraz, konstruktor smyčky, který se používá k iteraci shody vzoru ve výčtové kolekci, jako je například výraz rozsahu, sekvence, seznam, pole nebo jiný konstruktor, který for...in podporuje výčet.
Smyčky: while...do Výraz Popisuje while...do výraz, který se používá k provedení iterativního provádění (smyčky), když je zadaná testovací podmínka pravdivá.
Objektové výrazy Popisuje výrazy objektů, což jsou výrazy, které vytvářejí nové instance dynamicky vytvořeného anonymního typu objektu založeného na existujícím základním typu, rozhraní nebo sadě rozhraní.
Výrazy Lazy Popisuje opožděné výrazy, což jsou výpočty, které nejsou vyhodnocovány okamžitě, ale jsou vyhodnocovány, pokud je výsledek skutečně potřeba.
Výpočetní výrazy Popisuje výpočetní výrazy v jazyce F#, které poskytují pohodlnou syntaxi pro psaní výpočtů, které lze sekvencovat a kombinovat pomocí konstruktorů a vazeb toku řízení. Lze je použít k zajištění vhodné syntaxe pro smyšlové výrazy , funkci funkčního programování, kterou lze použít ke správě dat, řízení a vedlejším efektům ve funkčních programech. Jeden typ výpočetního výrazu, asynchronní pracovní postup, poskytuje podporu pro asynchronní a paralelní výpočty. Další informace najdete v tématu Asynchronní pracovní postupy.
Asynchronní pracovní postupy Popisuje asynchronní pracovní postupy, funkci jazyka, která umožňuje psát asynchronní kód způsobem, který je velmi blízko způsobu, jakým byste přirozeně napsali synchronní kód.
Uvozovky kódu Popisuje uvozovky kódu, funkci jazyka, která umožňuje generovat výrazy kódu F# a pracovat s nich programově.
Výrazy dotazu Popisuje výrazy dotazů, funkci jazyka, která implementuje LINQ for F# a umožňuje psát dotazy na zdroj dat nebo vyčíslitelné kolekce.

Konstrukce podporované kompilátorem

Následující tabulka uvádí témata, která popisují speciální konstruktory podporované kompilátorem.

Téma Popis
Možnosti kompilátoru Popisuje možnosti příkazového řádku pro kompilátor jazyka F#.
Direktivy kompilátoru Popisuje direktivy procesoru a direktivy kompilátoru.
Identifikátory zdrojového řádku, souboru a cesty Popisuje identifikátory , a , což jsou integrované hodnoty, které umožňují přístup k číslu řádku zdroje, adresáři a názvu __LINE__ __SOURCE_DIRECTORY__ souboru ve vašem __SOURCE_FILE__ kódu.