Note
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de changer d’annuaire.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de changer d’annuaire.
Cette section est une référence pour F#, un langage de programmation multi-paradigme ciblant .NET. F# prend en charge les modèles de programmation fonctionnels, orientés objet et impératif.
Organisation du code F#
Le tableau suivant présente des articles de référence liés à l’organisation de votre code F#.
| Titre | Descriptif |
|---|---|
| Namespaces | Découvrez la prise en charge de l’espace de noms en F#. Un espace de noms vous permet d’organiser le code en zones de fonctionnalités associées en vous permettant d’attacher un nom à un regroupement d’éléments de programme. |
| Modules | Découvrez les modules. Un module F# est semblable à un espace de noms et peut également inclure des valeurs et des fonctions. Le regroupement de code dans les modules permet de regrouper le code associé et d’éviter les conflits de noms dans votre programme. |
open Déclarations |
En savoir plus sur le open fonctionnement. Une open déclaration spécifie un module, un espace de noms ou un type dont vous pouvez faire référence sans utiliser de nom complet. |
| Signatures | Découvrez les signatures et les fichiers de signature. Un fichier de signature contient des informations sur les signatures publiques d’un ensemble d’éléments de programme F#, tels que les types, les espaces de noms et les modules. Il peut être utilisé pour spécifier l’accessibilité de ces éléments de programme. |
| Contrôle d’accès | Découvrez le contrôle d’accès en F#. Le contrôle d’accès signifie déclarer ce que les clients sont en mesure d’utiliser certains éléments de programme, tels que des types, des méthodes, des fonctions, etc. |
| XML Documentation | Découvrez la prise en charge de la génération de fichiers de documentation à partir de commentaires de documents XML, également appelées commentaires à barres obliques triples. Vous pouvez produire de la documentation à partir de commentaires de code en F# comme dans d’autres langages .NET. |
Littéraux et chaînes
Le tableau suivant présente des articles de référence qui décrivent des littéraux et des chaînes en F#.
| Titre | Descriptif |
|---|---|
| littéraux | Découvrez la syntaxe des valeurs littérales dans F# et comment spécifier des informations de type pour les littéraux F#. |
| Chaînes | Découvrez les chaînes en F#. Le string type représente un texte immuable, sous la forme d’une séquence de caractères Unicode.
string est un alias pour System.String .NET. |
| Chaînes interpolées | Découvrez les chaînes interpolées, une forme spéciale de chaîne qui vous permet d’incorporer des expressions F# directement à l’intérieur. |
Valeurs et fonctions
Le tableau suivant présente des articles de référence qui décrivent les concepts de langage liés aux valeurs, letaux liaisons et aux fonctions.
| Titre | Descriptif |
|---|---|
| Valeurs | Découvrez les valeurs, qui sont des quantités immuables qui ont un type spécifique ; les valeurs peuvent être des nombres intégraux ou à virgule flottante, des caractères ou du texte, des listes, des séquences, des tableaux, des tuples, des unions discriminées, des enregistrements, des types de classes ou des valeurs de fonction. |
| Fonctions | Les fonctions sont l’unité fondamentale de l’exécution du programme dans n’importe quel langage de programmation. Une fonction F# a un nom, peut avoir des paramètres et prendre des arguments, et a un corps. F# prend également en charge les constructions de programmation fonctionnelle, telles que le traitement des fonctions comme des valeurs, l’utilisation de fonctions sans nom dans les expressions, la composition de fonctions pour former de nouvelles fonctions, les fonctions curriées et la définition implicite des fonctions par le biais de l’application partielle des arguments de fonction. |
| Expressions de fonction | Découvrez comment utiliser le mot clé F# 'fun' pour définir une expression lambda, qui est une fonction anonyme. |
Boucles et conditions
Le tableau suivant répertorie les articles qui décrivent les boucles F# et les conditions.
| Titre | Descriptif |
|---|---|
Expressions conditionnelles : if...then...else |
Découvrez l’expression if...then...else , qui exécute différentes branches de code et évalue également une valeur différente en fonction de l’expression booléenne donnée. |
Boucles : for...in expression |
Découvrez l’expression for...in , une construction en boucle utilisée pour itérer sur les correspondances d’un modèle dans une collection énumérable telle qu’une expression de plage, une séquence, une liste, un tableau ou une autre construction qui prend en charge l’énumération. |
Boucles : for...to expression |
Découvrez l’expression for...to , qui est utilisée pour itérer dans une boucle sur une plage de valeurs d’une variable de boucle. |
Boucles : while...do expression |
Découvrez l’expression while...do , qui est utilisée pour effectuer une exécution itérative (bouclage) alors qu’une condition de test spécifiée est vraie. |
Critères spéciaux
Le tableau suivant présente des articles de référence qui décrivent les concepts du langage.
| Titre | Descriptif |
|---|---|
| Correspondance de motifs | Découvrez les modèles, qui sont des règles pour transformer les données d’entrée et sont utilisés dans F#. Vous pouvez comparer des données à un modèle, décomposer des données en parties constituantes ou extraire des informations de données de différentes manières. |
| Expressions de correspondance | Découvrez l’expression match , qui fournit un contrôle de branchement basé sur la comparaison d’une expression avec un ensemble de modèles. |
| modèles actifs | Découvrez les modèles actifs. Les modèles actifs vous permettent de définir des partitions nommées qui subdivisent les données d’entrée. Vous pouvez utiliser des modèles actifs pour décomposer des données de façon personnalisée pour chaque partition. |
Gestion des exceptions
Le tableau suivant présente des articles de référence qui décrivent les concepts de langage liés à la gestion des exceptions.
| Titre | Descriptif |
|---|---|
| gestion des exceptions | Contient des informations sur la prise en charge de la gestion des exceptions dans F#. |
The try...with Expression |
Découvrez comment utiliser l’expression pour la try...with gestion des exceptions. |
The try...finally Expression |
Découvrez comment l’expression F# try...finally vous permet d’exécuter du code de nettoyage même si un bloc de code lève une exception. |
Mot use clé |
Découvrez les mots clés use et using, qui peuvent contrôler l’initialisation et la mise en production des ressources. |
| Affirmations | Découvrez l’expression assert , qui est une fonctionnalité de débogage que vous pouvez utiliser pour tester une expression. En cas d’échec en mode Débogage, une assertion génère une boîte de dialogue d’erreur système. |
Types et inférence de type
Le tableau suivant présente des articles de référence qui décrivent le fonctionnement des types et de l’inférence de type en F#.
| Titre | Descriptif |
|---|---|
| Types | Découvrez les types utilisés dans F# et la façon dont les types F# sont nommés et décrits. |
| types de base | Découvrez les types fondamentaux utilisés dans F#. Il fournit également les types .NET correspondants et les valeurs minimales et maximales pour chaque type. |
| Type d’unité | Découvrez le unit type, qui est un type qui indique l’absence d’une valeur spécifique ; le unit type n’a qu’une seule valeur, qui agit comme espace réservé lorsqu’aucune autre valeur n’existe ou n’est nécessaire. |
| Abréviations de type | Découvrez les abréviations de type, qui sont des noms alternatifs pour les types. |
| Inférence de type | Découvrez comment le compilateur F# déduit les types de valeurs, variables, paramètres et valeurs de retour. |
| Conversion et conversion | Découvrez la prise en charge des conversions de types en F#. |
| Génériques | Découvrez les constructions génériques en F#. |
| Généralisation automatique | Découvrez comment F# généralise automatiquement les arguments et les types de fonctions afin qu’ils fonctionnent avec plusieurs types lorsque cela est possible. |
| Contraintes | Découvrez les contraintes qui s’appliquent aux paramètres de type générique pour spécifier les exigences d’un argument de type dans un type ou une fonction générique. |
| Types flexibles | Découvrez les types flexibles. Une annotation de type flexible indique qu’un paramètre, une variable ou une valeur a un type compatible avec le type spécifié, où la compatibilité est déterminée par position dans une hiérarchie orientée objet de classes ou d’interfaces. |
| Unités de mesure | Découvrez les unités de mesure. Les valeurs à virgule flottante en F# peuvent avoir des unités de mesure associées, qui sont généralement utilisées pour indiquer la longueur, le volume, la masse, et ainsi de suite. |
| Byrefs | Découvrez les types byref et byref dans F#, qui sont utilisés pour la programmation de bas niveau. |
Tuples, Listes, Collections, Options
Le tableau suivant présente des articles de référence qui décrivent les types pris en charge par F#.
| Titre | Descriptif |
|---|---|
| Tuples | Découvrez les tuples, qui regroupent des valeurs non nommées mais ordonnées de types possibles. |
| Collections | Vue d’ensemble des types de collection fonctionnelle F#, y compris les types pour les tableaux, les listes, les séquences (seq), les mappages et les ensembles. |
| Listes | En savoir plus sur les listes. Une liste en F# est une série ordonnée et immuable d’éléments du même type. |
| Options | Découvrez le type d’option. Une option en F# est utilisée lorsqu’une valeur peut ou non exister. Une option a un type sous-jacent et peut contenir une valeur de ce type ou elle n’a peut-être pas de valeur. |
| Tableaux | Découvrez les tableaux. Les tableaux sont des séquences mutables de taille fixe, de base zéro, d’éléments de données consécutifs, du même type. |
| Séquences | Découvrez les séquences. Une séquence est une série logique d’éléments d’un seul type. Les éléments de séquence individuels sont calculés uniquement si nécessaire, de sorte que la représentation peut être inférieure à un nombre d’éléments littéral indique. |
| Expressions de séquence | Découvrez les expressions de séquence, qui vous permettent de générer des séquences de données à la demande. |
| Cellules de référence | Découvrez les cellules de référence, qui sont des emplacements de stockage qui vous permettent de créer des variables mutables avec la sémantique de référence. |
Enregistrements et unions discriminatoires
Le tableau suivant présente des articles de référence qui décrivent les définitions de type d’union discriminatoires et d’enregistrement prises en charge par F#.
| Titre | Descriptif |
|---|---|
| Enregistrements | En savoir plus sur les enregistrements. Les enregistrements représentent des agrégats simples de valeurs nommées, éventuellement avec des membres. |
| Enregistrements anonymes | Découvrez comment construire et utiliser des enregistrements anonymes, une fonctionnalité de langage qui aide à manipuler les données. |
| Unions discriminatoires | Découvrez les syndicats discriminatoires, qui prennent en charge les valeurs qui peuvent être l’un des cas nommés, chacun avec des valeurs et des types éventuellement différents. |
| Structs | Découvrez les structs, qui sont des types d’objets compacts qui peuvent être plus efficaces qu’une classe pour les types qui ont une petite quantité de données et un comportement simple. |
| Enumerations | Les énumérations sont des types qui ont un ensemble défini de valeurs nommées. Vous pouvez les utiliser à la place de littéraux pour rendre le code plus lisible et plus facile à gérer. |
Programmation d’objets
Le tableau suivant présente des articles de référence qui décrivent la programmation d’objets F#.
| Titre | Descriptif |
|---|---|
| Classes | Découvrez les classes, qui sont des types qui représentent des objets qui peuvent avoir des propriétés, des méthodes et des événements. |
| Interfaces | Découvrez les interfaces, qui spécifient des ensembles de membres associés implémentés par d’autres classes. |
| classes abstraites | Découvrez les classes abstraites, qui sont des classes qui conservent certains membres ou tous les membres non implémentés, afin que les implémentations puissent être fournies par des classes dérivées. |
| Type Extensions | Découvrez les extensions de type, qui vous permettent d’ajouter de nouveaux membres à un type d’objet précédemment défini. |
| délégués | Découvrez les délégués, qui représentent un appel de fonction en tant qu’objet. |
| Héritage | Découvrez l’héritage, qui est utilisé pour modéliser la relation « is-a » ou la sous-saisie, dans la programmation orientée objet. |
| Membres | Découvrez les membres des types d’objets F#. |
| Paramètres et arguments | Découvrez la prise en charge du langage pour définir des paramètres et passer des arguments à des fonctions, des méthodes et des propriétés. Il inclut des informations sur la façon de passer par référence. |
| Surcharge des opérateurs | Découvrez comment surcharger des opérateurs arithmétiques dans un type de classe ou d’enregistrement et au niveau global. |
| Expressions d’objet | Découvrez les expressions d’objet, qui sont des expressions qui créent de nouvelles instances d’un type d’objet anonyme créé dynamiquement basé sur un type de base, une interface ou un ensemble d’interfaces existant. |
Async, Tasks and Lazy
Le tableau suivant répertorie les rubriques qui décrivent des expressions asynchrones, des tâches et des expressions différées F#.
| Titre | Descriptif |
|---|---|
| Expressions asynchrones | Découvrez les expressions asynchrones, qui vous permettent d’écrire du code asynchrone d’une manière très proche de la façon dont vous écrivez naturellement du code synchrone. |
| Expressions de tâche | Découvrez les expressions de tâche, qui constituent une autre façon d’écrire du code asynchrone utilisé lors de l’interopérabilité avec le code .NET qui consomme ou produit des tâches .NET. |
| Expressions différées | Découvrez les expressions différées, qui sont des calculs qui ne sont pas évalués immédiatement, mais qui sont plutôt évaluées lorsque le résultat est réellement nécessaire. |
Expressions de calcul et requêtes
Le tableau suivant répertorie les rubriques qui décrivent les expressions et requêtes de calcul F#.
| Titre | Descriptif |
|---|---|
| Expressions de calcul | Découvrez les expressions de calcul en F#, qui fournissent une syntaxe pratique pour écrire des calculs qui peuvent être séquencés et combinés à l’aide de constructions et de liaisons de flux de contrôle. Ils peuvent être utilisés pour gérer les données, le contrôle et les effets secondaires dans les programmes fonctionnels. |
| Expressions de requête | Découvrez les expressions de requête, une fonctionnalité de langage qui implémente LINQ pour F# et vous permet d’écrire des requêtes sur une source de données ou une collection énumérable. |
Attributs, réflexion, guillemets et mise en forme de texte brut
Le tableau suivant répertorie les articles qui décrivent les caractéristiques réfléchissantes F#, notamment les attributs, les guillemets nameofet la mise en forme de texte brut.
| Titre | Descriptif |
|---|---|
| Attributs | Découvrez comment les attributs F# permettent aux métadonnées d’être appliquées à une construction de programmation. |
| nameof | Découvrez l’opérateur nameof , une fonctionnalité de métagrammage qui vous permet de produire le nom de n’importe quel symbole dans votre code source. |
| Informations de l’appelant | Découvrez comment utiliser les attributs d’argument d’informations de l’appelant pour obtenir des informations d’appelant à partir d’une méthode. |
| Identificateurs de ligne source, de fichier et de chemin d’accès | Découvrez les identificateurs, __SOURCE_DIRECTORY__et __SOURCE_FILE__les valeurs intégrées __LINE__qui vous permettent d’accéder au numéro de ligne source, au répertoire et au nom de fichier dans votre code. |
| Guillemets de code | Découvrez les guillemets de code, une fonctionnalité de langage qui vous permet de générer et d’utiliser des expressions de code F# par programmation. |
| Mise en forme de texte brut | Découvrez comment utiliser sprintf et d’autres mises en forme de texte brut dans les applications et scripts F#. |
Fournisseurs de type
Le tableau suivant répertorie les articles qui décrivent les fournisseurs de types F#.
| Titre | Descriptif |
|---|---|
| Fournisseurs de type | Découvrez les fournisseurs de types et recherchez des liens vers des procédures pas à pas sur l’utilisation des fournisseurs de types intégrés pour accéder aux bases de données et aux services web. |
| Créer un fournisseur de types | Découvrez comment créer vos propres fournisseurs de types F# en examinant plusieurs fournisseurs de types simples qui illustrent les concepts de base. |
Informations de référence sur l’API de la bibliothèque principale F#
La référence de l’API F# Core Library (FSharp.Core) est la référence pour tous les espaces de noms, modules, types et fonctions de la bibliothèque principale F#.
Tables de référence
Le tableau suivant présente des articles de référence qui fournissent des tables de mots clés, de symboles et de littéraux utilisés comme jetons dans F#.
| Titre | Descriptif |
|---|---|
| Informations de référence sur les mots clés | Contient des liens vers des informations sur tous les mots clés de langage F#. |
| Référence des symboles et des opérateurs | Contient une table de symboles et d’opérateurs utilisés dans F#. |
Constructions prises en charge par le compilateur
Le tableau suivant répertorie les rubriques qui décrivent des constructions spéciales prises en charge par le compilateur.
| Sujet | Descriptif |
|---|---|
| options du compilateur | Décrit les options de ligne de commande pour le compilateur F#. |
| Directives du compilateur | Décrit les directives de processeur et les directives du compilateur prises en charge par le compilateur F#. |