Utilisation de Visual Studio pour écrire des programmes F#

Visual Studio inclut un support d'environnement de développement pour F#, comprenant notamment des fonctionnalités de modification de code et de débogage, IntelliSense, ainsi que des fonctionnalités permettant d'empaqueter et de déployer des applications. Visual F# prend en charge la plupart des fonctionnalités gérées par les autres langages .NET Framework.

Comparaison des scripts et des projets

Il existe deux styles de développement de base prenant en charge Visual F# : les scripts et les projets. Vous pouvez utiliser un script F# lorsque vous souhaitez uniquement exécuter une petite quantité de code non destiné à devenir une application permanente. Pour les applications permanentes, il est préférable d'utiliser un projet.

Pour créer et exécuter un script F#, il n'est pas nécessaire de créer de projet au préalable. Pour créer un script F#, dans le menu Fichier, sélectionnez Nouveau, puis cliquez sur Fichier. Dans la boîte de dialogue Nouveau fichier, sélectionnez Script dans la liste Modèles installés puis Fichier de script F#. Les scripts sont conçus pour une exécution avec F# Interactive (fsi.exe). Pour plus d'informations, consultez Référence de F# Interactive (fsi.exe).

Projets et solutions

Les projets comprennent une collection de fichiers qui produisent un assembly unique. Les projets sont conçus pour une compilation avec fsc.exe et peuvent être exécutés dans le débogueur Visual Studio. L'assembly produit peut être un fichier exécutable ou une bibliothèque (DLL). Un projet se compose de fichiers sources tous écrits dans un même langage de programmation. Une solution est une collection de projets. Les projets d'une solution peuvent être écrits dans des langages différents. Par exemple, il est possible d'avoir une interface utilisateur Visual Basic ou C# pour votre application, ce qui constitue un projet, et une bibliothèque F#, qui constitue un autre projet. L'un de ces projets sera le projet de démarrage, c'est-à-dire, celui configuré pour s'exécuter au moment du démarrage de l'application.

Pour créer un projet F#, dans le menu Fichier, sélectionnez Nouveau, puis cliquez sur Projet. Dans la boîte de dialogue Nouveau projet, sélectionnez un modèle de projet. Visual Studio fournit des modèles vous permettant de créer des projets qui possèdent déjà tous les éléments et paramètres de base prenant en charge les applications et les bibliothèques.

Lorsque vous déployez vos applications pour qu'elles s'exécutent sur des ordinateurs autres que votre ordinateur de développement, vous devez spécifier une option de déploiement et vous assurer que l'exécution F# est incluse dans le déploiement. Pour une description complète des options de déploiement, consultez Déploiement d'applications, de services et de composants.

Projets aller-retour dans Visual Studio

Vous pouvez ouvrir et utiliser les projets F# créés dans Visual Studio 2013 ou Visual Studio 2012 dans l'une ou l'autre version de Visual Studio, sans apporter de modifications. La seule exception est que la première fois que vous ouvrez un projet Visual Studio 2012 dans Visual Studio 2013, Visual Studio apporte une petite modification pour activer le projet à utiliser dans les deux versions. Cette fonction est connue sous le nom d'aller-retour.

Vous pouvez spécifier la version du runtime F# (et de la bibliothèque principale) que vous souhaitez cibler sur l'onglet Application des propriétés du projet. Choisissez F# 3.0 si vous créez une bibliothèque qui doit s'exécuter dans de nombreux contextes ou que vous souhaitez participer à l'aller-retour des projets. Si vous choisissez F# 3.0, vous ne pourrez pas utiliser les nouvelles fonctionnalités de langage de F# 3.1, telles que les cas d'union nommés et le découpage de tableau optimisé. Si vous modifiez le runtime cible en F# 3.1, vous ne pouvez pas rouvrir le projet dans Visual Studio 2012.

Création d'applications avec interface utilisateur

D'autres langages prennent en charge les concepteurs visuels qui vous permettent de créer une interface utilisateur pour des applications. Les programmes F# peuvent cibler directement les bibliothèques .NET Framework, telles que WPF, Windows Forms ou ASP.NET, qui vous permettent de créer des interfaces utilisateur pour des applications en F#. Visual Studio 2012 ne fournit cependant pas de concepteur visuel pour aider à la création d'interfaces. Un scénario typique est la création d'une solution à plusieurs langages avec un projet d'application Visual Basic ou C# contenant l'interface utilisateur, ainsi qu'un ou plusieurs projets de bibliothèque F#.

Projets F#

L'ordre des fichiers est important dans les projets F#. Les fichiers des projets F# sont traités dans l'ordre par le compilateur F#. Le compilateur F# nécessite que vous définissiez toutes les constructions avant de commencer à les utiliser ; par conséquent, les fichiers qui incluent la définition d'une construction F# doivent figurer plus haut dans la liste des fichiers du projet que les fichiers utilisant cette construction. Vous devez également éviter les dépendances circulaires qui couvrent plusieurs fichiers. Pour simplifier le déplacement des fichiers au sein d'un projet, F# fournit des commandes qui vous permettent de déplacer des fichiers vers le haut et vers le bas dans la liste des fichiers dans l'Explorateur de solutions. Vous pouvez accéder à ces commandes en cliquant avec le bouton droit sur les fichiers de la liste ou à l'aide des raccourcis clavier, affichés dans le menu.

Fichiers F# des projets F#

Le tableau suivant répertorie certains des types de fichier pouvant être utilisés dans les projets F#.

Type et extension de fichier

Description

Fichier d'implémentation (.fs)

Utilisé pour le code F#.

Fichier de signature (.fsi)

Utilisé pour spécifier les signatures publiques des modules et types d'un fichier d'implémentation F#. Pour plus d'informations, consultez Signatures (F#).

Script (.fsx)

Utilisé pour inclure du code de test informel en F# sans l'ajouter à votre application ni créer de projet séparé. Par défaut, les fichiers de script ne sont pas inclus dans la build d'un projet, même lorsqu'elles en font partie.

Bibliothèques portables dans F#

Vous utilisez la bibliothèque F#, la bibliothèque portable F# ou le modèle de projet de la bibliothèque portable F# (héritée) lorsque vous créez une DLL et le projet d'application F# lorsque vous créez un fichier exécutable. Vous devez utiliser le projet de bibliothèque portable F# si votre bibliothèque est consommée par les applications qui utilisent le Windows Runtime, telle qu'une application Windows Store, ou une autre plateforme qui utilise le .NET Framework 4.5. Utilisez le modèle de projet Bibliothèque portable (héritée) F# si votre bibliothèque est consommée par des applications portables, telles que des applications Windows Store ou Silverlight 5, qui peuvent s'exécuter sur .NET Framework 4. Vous pouvez également cibler Silverlight à l'aide du modèle de projet Silverlight.

Avertissement

Remarque Si votre application Visual C# utilise une bibliothèque portable F# ou une bibliothèque portable héritée, vous devez ajouter une référence de votre projet Visual C# à la version appropriée de la bibliothèque principale F# (FSharp.Core.dll).Pour ajouter une référence dans votre projet C#, vous devez accéder à la même version de FSharp.Core.dll que celle que votre bibliothèque F# utilise.Pour obtenir le chemin d'accès, choisissez le nœud de FSharp.Core dans la section Références de votre projet F# dans Explorateur de solutions, puis affichez la propriété Chemin d'accès complet dans la fenêtre Propriétés.

Le tableau suivant résume les choix pour les bibliothèques portables F#.

Bibliothèques portables F# dans Visual Studio 2013

Modèle de projet

Version Sous-ensemble portable .NET

Version de bibliothèque principale F#

Types d'application ciblés

Portable

4.5.0.0

3.3.1.0

.NET Framework 4.5 et Windows Store

Bibliothèque portable (héritée)

Bibliothèque Silverlight

4.0.0.0

2.3.5.1

.NET Framework 4, Windows Store et Silverlight

D'autres versions de la bibliothèque principale F# sur disque prennent en charge les projets créés avec des versions antérieures de Visual Studio. Par exemple, si vous avez créé un projet de bibliothèque portable F# dans Visual Studio 2012 et l'ouvrez dans Visual Studio 2013, la version de FSharp.Core référencée sait 2.3.5.0.

Rubriques connexes

Titre

Description

Fonctionnalités de l'environnement de développement F#

Répertorie les fonctionnalités de Visual Studio et indique lesquelles sont prises en charge par Visual F#.

Configuration de projets (F#)

Fournit des informations sur les paramètres de projet en Visual F#.

Référence de l'interface utilisateur du Concepteur de projets

Fournit des liens vers des rubriques répertoriant les boîtes de dialogue Visual Studio appartenant aux projets. Le support pour les projets F# est un sous-ensemble du support Visual Studio.

Visual F#

Présente Visual F# et fournit des liens vers des rubriques associées.

Procédure pas à pas : utilisation de Visual F# pour créer, déboguer et déployer une application

Fournit des instructions pas à pas pour le développement d'applications en Visual F#.

Débogage de F#

Fournit des informations à propos du débogage dans F#.

Visite guidée de Visual F#

Fournit des liens vers des didacticiels d'introduction concernant certains aspects de la programmation en F#