Compartilhar via


Visual F#

F# é uma linguagem de programação que oferece suporte à programação funcional, além da programação imperativa e orientada a objeto (procedural) tradicional. O produto Visual F# oferece suporte ao desenvolvimento de aplicativos em F# e extensão de outros aplicativos do .NET Framework usando código F#. F# é membro de primeira classe das linguagens .NET Framework e mantém uma forte semelhança com a família ML de linguagens funcionais.

Esta versão do Visual F# contém a versão F# 3.1 da linguagem.

Linguagem com vários paradigmas

F# oferece suporte a constructos de programação funcional como:

  • Funções como valores que permite a manipulação flexível de funções. Para obter mais informações, consulte Funções como valores de primeira classe (F#).

  • Pipelining e composição de função que permite combinar funções para criar novas funções e simplificar a codificação de operações sucessivas nos dados. Para obter mais informações, consulte Funções (F#).

  • Inferência de tipos que reduz a necessidade de chamar tipos explicitamente sem que seja necessário sacrificar a segurança dos tipos.

  • Generalização automática que promove a reutilização de código ao facilitar escrever código que funcione com vários tipos diferentes sem nenhum esforço adicional.

  • Suporte à Correspondência de padrões que simplifica código condicional complexo e uniões discriminadas que são otimizadas para uso com correspondência de padrões.

  • Tipos de coleção para trabalhar com dados imutáveis, incluindo tipos list e sequence.

  • Expressões lambda que são importantes para vários constructos de programação funcional.

  • Aplicativo parcial de argumentos de função que permite criar implicitamente novas funções a partir das já existentes. Para obter mais informações, consulte Funções (F#).

  • Cotações de código, um recurso que permite manipular programaticamente expressões em F#.

F# oferece suporte à programação orientada a objeto e a recursos do .NET Framework como:

  • O modelo de objeto do .NET Framework, incluindo objetos que contêm propriedades, métodos e eventos; polimorfismo ou funções virtuais; herança; e interfaces.

  • Encapsulamento de dados, ou separação da interface pública de um tipo da implementação.

  • Sobrecarga de operador que funciona bem com tipos primitivos genéricos e internos.

  • Extensões de tipo que permitem estender facilmente um tipo existente sem sobrecarga adicional para criar um novo tipo derivado.

  • Expressões de objetos que permitem que você defina objetos pequenos implicitamente em expressões conforme o necessário em vez de declarar um novo tipo e instanciar um objeto.

  • Acesso ao .NET Framework e a qualquer assembly de código gerenciado.

  • Acesso ao código nativo através de invocação de plataforma.

O Visual F# oferece suporte à programação rica em informações. Essa tecnologia permite que você programe diretamente com base em ricos espaços de dados e serviços que frequentemente dominam a programação corporativa e a Web como bancos de dados, serviços Web, feeds de dados da Web e data brokers.

A programação rica em informações do F# é focada em código e pode ser usada em scripts e projetos. Ela também permite que você especifique conexões de banco de dados OData e SQL Server diretamente em seu código, enquanto oferece tipos fortes com a assistência do IntelliSense. O mecanismo é extensível, permitindo que você escreva ou referencie novos provedores de dados, código e tecnologias de serviços como SharePoint, ontologias da Web, Instrumentação de Gerenciamento do Windows (WMI), XML e outras fontes de informações. Tecnicamente, a programação rica em informações do F# inclui o mecanismo Provedores de Tipos F#, Expressões de Consultas F# e um conjunto de provedores de tipos internos para banco de dados, OData e programação de serviços Web.

F# também oferece suporte a todos os constructos de programação imperativos comuns como constructos de ramificação e loop.

Bibliotecas F#

O produto Visual F# também inclui uma biblioteca F# com várias funções e tipos úteis. Isso inclui APIs para coleções como listas, matrizes, mapas, conjuntos e sequências. A biblioteca F# também oferece suporte a reflexão, eventos e E/S formatada.

Além de isso, a biblioteca F# inclui suporte a fluxos de trabalho assíncronos para suporte a computações paralelas e mecanismos para comunicação entre fluxos de trabalho paralelos. Para obter mais informações, consulte Fluxos de trabalho assíncronos (F#), Classe Control.Async (F#) e Classe Control.MailboxProcessor<'Msg> (F#).

A biblioteca F# principal é FSharp.Core.dll. Bibliotecas adicionais estão disponíveis no F# PowerPack, disponível no site Centro de Desenvolvedores do Microsoft F#.

Há versões compiladas separadamente da biblioteca principal F# que oferecem suporte a diferentes versões do .NET Framework. A versão 2.0 oferece suporte ao .NET Framework 2.0, 3.0 e 3.5 e a versão 4.0 oferece suporte ao .NET Framework 4 e versões posteriores do .NET Framework. Além disso, versões da biblioteca principal F# para o Silverlight estão disponíveis para download.

Script interativo

O Visual F# oferece uma janela interativa que está integrada ao ambiente de desenvolvimento do Visual Studio. Essa janela permite que você insira código F# e que ele seja compilado e executado imediatamente. Isso permite que você crie protótipos facilmente de constructos e teste o seu código enquanto o escreve. A janela interativa executa a ferramenta interativa do F#, fsi.exe, que você também pode executar da linha de comando. Esse recurso permite que o F# seja usado como uma linguagem de script. Para obter mais informações, consulte Referência do F# Interativo (fsi.exe).

Integração com o Visual Studio

O F# está integrado ao Visual Studio e oferece suporte a:

Tópicos relacionados

Título

Descrição

Portal de desenvolvimento do Visual F#

Um gateway para várias informações sobre F#.

Usando o Visual Studio para escrever programas em F#

Fornece informações sobre o uso do F# no Ambiente de Desenvolvimento Integrado (IDE), incluindo configurações de projeto e IntelliSense.

Referência da linguagem F#

Fornece informações de referência sobre a linguagem F#, incluindo informações sobre palavras-chaves, símbolos e operadores.

Referência da biblioteca principal de F#

Fornece informações de referência sobre a biblioteca F# principal, FSharp.Core.dll.

Referência do compilador de F# (fsc.exe)

Fornece informações sobre o compilador F#, fsc.exe, incluindo informações sobre opções do compilador.

Referência do F# Interativo (fsi.exe)

Fornece informações sobre F# interativo, fsi.exe, incluindo informações sobre as opções de linha de comando e mensagens de diagnóstico que são específicas ao F# interativo.

Exemplos e instruções passo a passo do Visual F#

Fornece links para exemplos de F# e guias passo a passo.

Consulte também

Conceitos

Bem-vindo ao Visual Studio 2013