F# nyelvi referencia
Ez a szakasz az F#, a .NET-et célzó több paradigma programozási nyelv referenciája. Az F# támogatja a funkcionális, objektumorientált és imperatív programozási modelleket.
F#-kód rendszerezése
Az alábbi táblázat az F#-kód rendszerezésével kapcsolatos referenciacikkeket mutatja be.
Cím | Leírás |
---|---|
Névterek | További információ az F# névtértámogatásáról. A névtér lehetővé teszi a kód kapcsolódó funkciókba rendezését azáltal, hogy lehetővé teszi egy név csatolását a programelemek egy csoportjához. |
Modulok | Tudnivalók a modulokról. Az F#-modulok olyanok, mint a névterek, és értékeket és függvényeket is tartalmazhatnak. A modulokba csoportosított kód segít együtt tartani a kapcsolódó kódot, és segít elkerülni a névütközéseket a programban. |
open Nyilatkozatok |
További információ a open működésről. A open deklaráció olyan modult, névteret vagy típust határoz meg, amelynek elemeire teljes név használata nélkül hivatkozhat. |
Aláírások | Tudnivalók az aláírásokról és az aláírásfájlokról. Az aláírásfájl információkat tartalmaz az F#-programelemek (például típusok, névterek és modulok) nyilvános aláírásairól. Segítségével megadhatja ezeknek a programelemeknek az akadálymentességét. |
Hozzáférés-vezérlés | Tudnivalók az F# hozzáférés-vezérléséről. A hozzáférés-vezérlés azt jelenti, hogy deklarálják, mely ügyfelek használhatnak bizonyos programelemeket, például típusokat, metódusokat, függvényeket stb. |
XML-dokumentáció | Ismerje meg, hogyan lehet dokumentációs fájlokat létrehozni XML-dokumentumbeli megjegyzésekből, más néven tripla perjeles megjegyzésekből. A .NET-nyelvekhez hasonlóan F# nyelven is készíthet dokumentációt a kód megjegyzéseiből. |
Literálok és sztringek
Az alábbi táblázat referenciacikkeket tartalmaz, amelyek az F#-ban lévő literálokat és sztringeket írják le.
Cím | Leírás |
---|---|
Literálok | Ismerje meg az F# literálértékeinek szintaxisát és az F#-literálok típusadatainak megadását. |
Sztringek | Tudnivalók az F# sztringjeiről. A string típus nem módosítható szöveget jelöl Unicode-karakterek sorozataként. string is an alias for System.String in .NET. |
Interpolált sztringek | Megismerkedhet az interpolált sztringekkel, amelyek egy speciális sztringforma, amellyel F#-kifejezéseket ágyazhat be közvetlenül a sztringekbe. |
Értékek és függvények
Az alábbi táblázat referenciacikkeket tartalmaz, amelyek az értékekhez, let
-kötésekhez és függvényekhez kapcsolódó nyelvi fogalmakat ismertetik.
Cím | Leírás |
---|---|
Értékek | Megismerheti azokat az értékeket, amelyek nem módosítható mennyiségek, amelyek egy adott típussal rendelkeznek; az értékek lehetnek egész vagy lebegőpontos számok, karakterek vagy szövegek, listák, sorozatok, tömbök, rekordok, diszkriminált egyesítések, rekordok, osztálytípusok vagy függvényértékek. |
Functions | A függvények a program végrehajtásának alapvető egységei bármely programozási nyelven. Az F#-függvényeknek van neve, lehetnek paramétereik, argumentumokat vehetnek fel, és törzsük is van. Az F# olyan funkcionális programozási szerkezeteket is támogat, mint a függvények értékként való kezelése, névtelen függvények használata kifejezésekben, függvények összetétele új függvények létrehozásához, curried függvények létrehozása, valamint a függvények implicit definíciója a függvényargumentumok részleges alkalmazásával. |
Függvénykifejezések | Megtudhatja, hogyan használhatja az F# "fun" kulcsszót egy lambda kifejezés definiálásához, amely egy névtelen függvény. |
Hurkok és feltételes elemek
Az alábbi táblázat az F#-ciklusokat és a feltételes értékeket leíró cikkeket sorolja fel.
Cím | Leírás |
---|---|
Feltételes kifejezések: if...then...else |
Megismerkedhet a if...then...else kifejezéssel, amely a kód különböző ágait futtatja, és a megadott logikai kifejezéstől függően más értéket ad vissza. |
Hurkok: for...in Kifejezés |
Megismerkedhet a for...in kifejezéssel, egy hurkoló szerkezettel, amely egy enumerálható gyűjtemény mintáinak egyezéseit iterálja, például tartománykifejezést, sorozatot, listát, tömböt vagy más olyan szerkezetet, amely támogatja az enumerálást. |
Hurkok: for...to Kifejezés |
Ismerje meg a for...to kifejezést, amely egy ciklusban egy ciklusváltozó értéktartományán való iterálására szolgál. |
Hurkok: while...do Kifejezés |
Ismerje meg a while...do kifejezést, amely iteratív végrehajtás (ismétlés) végrehajtására szolgál, miközben egy megadott tesztfeltétel teljesül. |
Mintaegyeztetés
Az alábbi táblázat a nyelvi fogalmakat leíró referenciacikkeket mutatja be.
Cím | Leírás |
---|---|
Mintaegyeztetés | Megismerheti a mintákat, amelyek a bemeneti adatok átalakításának szabályai, és az F# teljes területén használhatók. Összehasonlíthatja az adatokat egy mintával, lebonthatja az adatokat alkotó részekre, vagy különböző módokon nyerhet ki információkat az adatokból. |
Kifejezések egyeztetése | Ismerje meg a match kifejezést, amely elágaztatási vezérlőt biztosít, amely egy kifejezés és egy mintakészlet összehasonlításán alapul. |
Aktív minták | Ismerje meg az aktív mintákat. Az aktív minták lehetővé teszik a bemeneti adatok felosztására szolgáló elnevezett partíciók meghatározását. Az aktív mintákkal testre szabott módon bonthatja fel az adatokat az egyes partíciókhoz. |
Kivételkezelés
Az alábbi táblázat referenciacikkeket tartalmaz, amelyek a kivételkezeléssel kapcsolatos nyelvi fogalmakat ismertetik.
Cím | Leírás |
---|---|
Kivételkezelés | Az F# kivételkezelési támogatásával kapcsolatos információkat tartalmaz. |
A try...with kifejezés |
Megtudhatja, hogyan használhatja a kifejezést a try...with kivételkezeléshez. |
A try...finally kifejezés |
Megtudhatja, hogyan teszi lehetővé az F# try...finally -kifejezés a tisztítási kód végrehajtását, még akkor is, ha egy kódblokk kivételt jelez. |
A use kulcsszó |
Megismerheti az erőforrások inicializálását és kiadását szabályozó kulcsszavakat use és using azokat. |
Állításokat | Megismerkedhet a assert kifejezéssel, amely egy kifejezés tesztelésére használható hibakeresési funkció. Hibakeresési módban történő hiba esetén egy helyességi feltétel rendszerhiba-párbeszédpanelt hoz létre. |
Típusok és típuskövetkeztetés
Az alábbi táblázat referenciacikkeket tartalmaz, amelyek ismertetik a típus- és típuskövetkeztetés működését az F#-ban.
Cím | Leírás |
---|---|
Típusok | Megismerheti az F# nyelvben használt típusokat, valamint az F#-típusok elnevezésének és leírásának módját. |
Alaptípusok | Megismerheti az F#-ban használt alapvető típusokat. Emellett biztosítja a megfelelő .NET-típusokat, valamint az egyes típusokhoz tartozó minimális és maximális értékeket. |
Egység típusa | Ismerje meg a unit típust, amely egy adott érték hiányát jelzi; a unit típus csak egyetlen értékkel rendelkezik, amely helyőrzőként működik, ha nincs más érték, vagy ha nincs szükség rá. |
Rövidítések beírása | Ismerje meg a típus rövidítéseit, amelyek a típusok alternatív nevei. |
Típuskövetkeztetés | Ismerje meg, hogyan következtet az F#-fordító az értékek, változók, paraméterek és visszatérési értékek típusára. |
Öntés és átalakítások | További információ a típuskonverziók támogatásáról az F#-ban. |
Generikus | Tudnivalók az F# általános szerkezeteiről. |
Automatikus általánosítás | Megtudhatja, hogyan általánosítja automatikusan az F# az argumentumokat és a függvénytípusokat, hogy lehetőség szerint több típussal is működhessenek. |
Korlátozások | Megismerheti az általános típusparaméterekre vonatkozó korlátozásokat egy általános típus vagy függvény típusargumentumára vonatkozó követelmények meghatározásához. |
Rugalmas típusok | Ismerje meg a rugalmas típusokat. A rugalmas típusú széljegyzetek azt jelzik, hogy egy paraméter, változó vagy érték olyan típussal rendelkezik, amely kompatibilis a megadott típussal, ahol a kompatibilitást az osztályok vagy interfészek objektumorientált hierarchiájában elfoglalt pozíció határozza meg. |
Mértékegységek | Tudnivalók a mértékegységekről. Az F#-ban a lebegőpontos értékekhez hozzárendelt mértékegységek lehetnek, amelyek általában a hossz, a mennyiség, a tömeg stb. jelzésére szolgálnak. |
Byrefs | Megismerheti az F# byref és byref-szerű típusait, amelyek alacsony szintű programozáshoz használhatók. |
Tuples, Lists, Collections, Options
Az alábbi táblázat az F# által támogatott típusokat leíró referenciacikkeket mutatja be.
Cím | Leírás |
---|---|
Rekordok | Megismerheti a rekordokat, amelyek névtelen, de esetleg különböző típusú rendezett értékek csoportosítását képezik. |
Gyűjtemények | Az F# funkcionális gyűjteménytípusainak áttekintése, beleértve a tömbök, listák, szekvenciák (seq), térképek és készletek típusait. |
Listák | További információ a listákról. Az F#-beli lista az azonos típusú elemek rendezett, nem módosítható sorozata. |
Beállítások | További információ a beállítástípusról. Az F# egyik beállítását akkor használja a rendszer, ha egy érték esetleg létezik vagy nem létezik. Egy lehetőség mögöttes típussal rendelkezik, és vagy rendelkezik ilyen típusú értékkel, vagy nem rendelkezik értékkel. |
Tömbök | Tudnivalók a tömbökről. A tömbök állandó méretű, nulla alapú, egymást követő adatelemekből álló, azonos típusú, módosítható sorozatok. |
Sorozatok | További információ a sorozatokról. A szekvencia egy logikai elemsorozat, amely egyetlen típusból áll. Az egyes szekvenciális elemeket csak szükség esetén számítja ki a rendszer, így a reprezentáció kisebb lehet, mint a konstanselemek száma. |
Szekvenciakifejezések | Megismerheti a szekvenciakifejezéseket, amelyekkel igény szerint hozhat létre adatsorozatokat. |
Hivatkozáscellák | Megismerheti a referenciacellákat, amelyek olyan tárolási helyek, amelyek lehetővé teszik a változók referencia-szemantikával történő létrehozását. |
Nyilvántartások és diszkriminált uniók
Az alábbi táblázat olyan referenciacikkeket tartalmaz, amelyek az F# által támogatott rekord- és megkülönböztetésmentes egyesítő típusdefiníciókat ismertetik.
Cím | Leírás |
---|---|
Rekordok | Tudnivalók a rekordokról. A rekordok a névvel ellátott értékek egyszerű összesítéseit jelölik, opcionálisan a tagokkal együtt. |
Névtelen rekordok | Megtudhatja, hogyan hozhat létre és használhat névtelen rekordokat, amelyek segítenek az adatok kezelésében. |
Megkülönböztetésen áteső uniók | Megismerheti a megkülönböztetésen áteső egyesítőket, amelyek támogatják azokat az értékeket, amelyek a különböző nevesített esetek egyikét jelenthetik, amelyek mindegyike különböző értékekkel és típusokkal rendelkezik. |
Struktúrák | Megismerheti a szerkezeteket, amelyek olyan kompakt objektumtípusok, amelyek hatékonyabbak lehetnek, mint egy osztály a kis mennyiségű adatokkal és egyszerű viselkedéssel rendelkező típusok esetében. |
Enumerálások | Az enumerálások olyan típusok, amelyek nevesített értékek meghatározott készletével rendelkeznek. A literálok helyett használva olvashatóbbá és karbantarthatóbbá teheti a kódot. |
Objektumprogramozás
Az alábbi táblázat az F#-objektumprogramozást leíró referenciacikkeket mutatja be.
Cím | Leírás |
---|---|
Osztályok | Megismerheti az osztályokat, amelyek olyan típusok, amelyek tulajdonságokat, metódusokat és eseményeket tartalmazó objektumokat képviselnek. |
Interfészek | Megismerheti a felületeket, amelyek a más osztályok által implementálható kapcsolódó tagok csoportjait határozzák meg. |
Absztrakt osztályok | Megismerheti az absztrakt osztályokat, amelyek olyan osztályok, amelyek néhány vagy az összes tagot akadálytalanul hagynak, hogy az implementációkat származtatott osztályok biztosíthassák. |
Típusbővítmények | Ismerje meg a típusbővítményeket, amelyekkel új tagokat adhat hozzá egy korábban definiált objektumtípushoz. |
Delegáltak | Megismerheti a delegáltakat, amelyek egy függvényhívást jelölnek objektumként. |
Öröklődés | Megismerheti az öröklődést, amely az "is-a" kapcsolat vagy altípus modellezésére szolgál az objektumorientált programozásban. |
Tagok | Megismerheti az F#-objektumtípusok tagjait. |
Paraméterek és argumentumok | Megismerheti a paraméterek definiálásának nyelvi támogatását, valamint az argumentumok függvényeknek, metódusoknak és tulajdonságoknak való átadását. A hivatkozás alapján történő továbbítással kapcsolatos információkat tartalmaz. |
Operátor túlterhelése | Megtudhatja, hogyan lehet túlterhelni az aritmetikai operátorokat egy osztály- vagy rekordtípusban, valamint globális szinten. |
Objektumkifejezések | Megismerheti az objektumkifejezéseket, amelyek olyan kifejezések, amelyek egy dinamikusan létrehozott, névtelen objektumtípus új példányait hozzák létre, amelyek egy meglévő alaptípuson, interfészen vagy illesztőkészleten alapulnak. |
Async, Tasks és Lazy
Az alábbi táblázat az F#-aszinkron, feladat- és lusta kifejezéseket leíró témaköröket sorolja fel.
Cím | Leírás |
---|---|
Aszinkron kifejezések | Megismerheti az aszinkron kifejezéseket, amelyekkel aszinkron kódot írhat olyan módon, amely nagyon közel áll ahhoz, ahogyan természetesen szinkron kódot írna. |
Tevékenységkifejezések | Megismerheti a feladatkifejezéseket, amelyek a .NET-feladatokat használó vagy azokat előállító .NET-kódokkal való együttműködés során használt aszinkron kód írásának alternatív módjai. |
Lusta kifejezések | Megismerheti a szakaszolt kifejezéseket, amelyek olyan számítások, amelyeket nem azonnal, hanem akkor értékelnek ki, amikor ténylegesen szükség van az eredményre. |
Számítási kifejezések és lekérdezések
Az alábbi táblázat az F#-számítási kifejezéseket és lekérdezéseket leíró témaköröket sorolja fel.
Cím | Leírás |
---|---|
Számítási kifejezések | Megismerheti az F#-ban használt számítási kifejezéseket, amelyek kényelmes szintaxist biztosítanak olyan számítások írásához, amelyek sorrendbe állíthatók és kombinálhatók vezérlőfolyamat-szerkezetekkel és kötésekkel. Segítségével kezelhetők az adatok, a vezérlés és a mellékhatások a funkcionális programokban. |
Lekérdezési kifejezések | Ismerje meg a lekérdezési kifejezéseket, amelyek az F#-hoz készült LINQ-t implementálják, és lehetővé teszik, hogy lekérdezéseket írjon egy adatforrásra vagy egy számba írható gyűjteményre. |
Attribútumok, tükröződés, idézőjelek és egyszerű szövegformázás
Az alábbi táblázat az F#-reflektív jellemzőket, például attribútumokat, idézőjeleket nameof
és egyszerű szövegformázást ismertető cikkeket sorolja fel.
Cím | Leírás |
---|---|
Attribútumok | Megtudhatja, hogyan teszik lehetővé az F#-attribútumok a metaadatok programozási szerkezetre való alkalmazását. |
név | Ismerje meg az nameof operátort, amely egy metaprogramozási funkció, amellyel bármilyen szimbólum nevét előállíthatja a forráskódban. |
Hívó adatai | Megtudhatja, hogyan használhatja a hívó információ argumentumattribútumait a hívó információk metódusból való lekéréséhez. |
Forrásvonal-, fájl- és elérésiút-azonosítók | Megismerheti az azonosítókat __LINE__ , __SOURCE_DIRECTORY__ és __SOURCE_FILE__ azokat a beépített értékeket, amelyek lehetővé teszik a forrássor számának, könyvtárának és fájlnevének elérését a kódban. |
Kódajánlatok | Ismerje meg a kód idézőjeleit, amely egy olyan nyelvi funkció, amellyel programozott módon hozhat létre és használhat F#-kódkifejezéseket. |
Egyszerű szövegformázás | Ismerje meg, hogyan használható a sprintf és más egyszerű szövegformázás F#-alkalmazásokban és -szkriptekben. |
Típusszolgáltatók
Az alábbi táblázat az F#-típusszolgáltatókat ismertető cikkeket sorolja fel.
Cím | Leírás |
---|---|
Típusszolgáltatók | Megismerheti a típusszolgáltatókat, és hivatkozásokat találhat az adatbázisokhoz és webszolgáltatásokhoz való hozzáféréshez a beépített típusszolgáltatók használatával kapcsolatos útmutatókhoz. |
Típusszolgáltató létrehozása | Megtudhatja, hogyan hozhat létre saját F#-típusszolgáltatókat az alapfogalmakat szemléltető egyszerű típusszolgáltatók vizsgálatával. |
F# Core Library API-referencia
Az F# Core Library (FSharp.Core) API-referenciája az F# Core Library összes névterének, moduljának, típusának és függvényének referenciája.
Referenciatáblák
Az alábbi táblázat hivatkozási cikkeket tartalmaz, amelyek kulcsszavakat, szimbólumokat és literálokat tartalmazó táblázatokat biztosítanak, amelyeket az F#-ban tokenként használnak.
Cím | Leírás |
---|---|
Kulcsszóreferencia | Hivatkozásokat tartalmaz az összes F#-nyelv kulcsszóval kapcsolatos információkra. |
Szimbólumok és operátorok referenciája | Az F# nyelvben használt szimbólumok és operátorok táblázatát tartalmazza. |
Fordító által támogatott szerkezetek
Az alábbi táblázat a speciális fordító által támogatott szerkezeteket leíró témaköröket sorolja fel.
Témakör | Description |
---|---|
Fordító beállításai | Az F#-fordító parancssori beállításait ismerteti. |
Fordítói irányelvek | Az F#-fordító által támogatott processzor- és fordítóirányelvek ismertetése. |