Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Esta seção é uma referência para F#, uma linguagem de programação de vários paradigmas direcionada ao .NET. O F# dá suporte a modelos de programação funcionais, orientados a objetos e imperativos.
Organizando código F#
A tabela a seguir mostra artigos de referência relacionados à organização do código F#.
Título | Descrição |
---|---|
Namespaces | Saiba mais sobre o suporte ao namespace em F#. Um namespace permite organizar o código em áreas de funcionalidade relacionada, permitindo que você anexe um nome a um agrupamento de elementos do programa. |
Módulos | Saiba mais sobre módulos. Um módulo F# é como um namespace e também pode incluir valores e funções. Agrupar código em módulos ajuda a manter o código relacionado unido e ajuda a evitar conflitos de nome em seu programa. |
open Declarações |
Saiba mais sobre como open funciona. Uma open declaração especifica um módulo, um namespace ou um tipo cujos elementos você pode referenciar sem usar um nome totalmente qualificado. |
Assinaturas | Saiba mais sobre assinaturas e arquivos de assinatura. Um arquivo de assinatura contém informações sobre as assinaturas públicas de um conjunto de elementos do programa F#, como tipos, namespaces e módulos. Ele pode ser usado para especificar a acessibilidade desses elementos de programa. |
Controle de acesso | Saiba mais sobre o controle de acesso em F#. Controle de acesso significa declarar quais clientes são capazes de usar determinados elementos de programa, como tipos, métodos, funções e assim por diante. |
Documentação XML | Saiba mais sobre o suporte para gerar arquivos de documentação de comentários de documentos XML, também conhecidos como comentários de barra tripla. Você pode produzir documentação com base em comentários de código em F# como em outros idiomas do .NET. |
Literais e cadeias de caracteres
A tabela a seguir mostra artigos de referência que descrevem literais e cadeias de caracteres em F#.
Título | Descrição |
---|---|
literais | Saiba mais sobre a sintaxe para valores literais em F# e como especificar informações de tipo para literais F#. |
Cadeias de caracteres | Saiba mais sobre cadeias de caracteres em F#. O string tipo representa um texto imutável, como uma sequência de caracteres Unicode.
string é um alias de System.String no .NET. |
Cadeias de caracteres interpoladas | Saiba mais sobre cadeias de caracteres interpoladas, uma forma especial de cadeia de caracteres que permite inserir expressões F# diretamente dentro delas. |
Valores e funções
A tabela a seguir mostra artigos de referência que descrevem conceitos de linguagem relacionados a valores, let
associações e funções.
Título | Descrição |
---|---|
Valores | Saiba mais sobre valores, que são quantidades imutáveis que têm um tipo específico; os valores podem ser números de ponto integral ou flutuante, caracteres ou texto, listas, sequências, matrizes, tuplas, uniões discriminadas, registros, tipos de classe ou valores de função. |
Funções | As funções são a unidade fundamental da execução do programa em qualquer linguagem de programação. Uma função F# tem um nome, pode ter parâmetros e usar argumentos e tem um corpo. O F# também dá suporte a construções de programação funcionais, como tratar funções como valores, usar funções sem nome em expressões, composição de funções para formar novas funções, funções curried e a definição implícita de funções por meio da aplicação parcial de argumentos de função. |
Expressões de função | Saiba como usar a palavra-chave "fun" F# para definir uma expressão lambda, que é uma função anônima. |
Loops e condicional
A tabela a seguir lista artigos que descrevem loops E condicionais de F#.
Título | Descrição |
---|---|
Expressões condicionais: if...then...else |
Saiba mais sobre a if...then...else expressão, que executa diferentes ramificações de código e também é avaliada como um valor diferente, dependendo da expressão booliana fornecida. |
Loops: for...in Expressão |
Saiba mais sobre a for...in expressão, um constructo de loop que é usado para iterar sobre as correspondências de um padrão em uma coleção enumerável, como uma expressão de intervalo, sequência, lista, matriz ou outro constructo que dá suporte à enumeração. |
Loops: for...to Expressão |
Saiba mais sobre a for...to expressão, que é usada para iterar em um loop sobre um intervalo de valores de uma variável de loop. |
Loops: while...do Expressão |
Saiba mais sobre a while...do expressão, que é usada para executar a execução iterativa (looping), enquanto uma condição de teste especificada é verdadeira. |
Correspondência padrão
A tabela a seguir mostra artigos de referência que descrevem conceitos de linguagem.
Título | Descrição |
---|---|
Correspondência de padrões | Saiba mais sobre padrões, que são regras para transformar dados de entrada e são usados em todo o F#. Você pode comparar dados com um padrão, decompor dados em partes constituintes ou extrair informações de dados de várias maneiras. |
Expressões de correspondência | Saiba mais sobre a match expressão, que fornece controle de ramificação baseado na comparação de uma expressão com um conjunto de padrões. |
Padrões ativos | Saiba mais sobre padrões ativos. Os padrões ativos permitem definir partições nomeadas que subdividem dados de entrada. Você pode usar padrões ativos para decompor os dados de uma maneira personalizada para cada partição. |
Tratamento de exceção
A tabela a seguir mostra artigos de referência que descrevem os conceitos de linguagem relacionados ao tratamento de exceções.
Título | Descrição |
---|---|
Tratamento de Exceções | Contém informações sobre o suporte ao tratamento de exceções em F#. |
A try...with expressão |
Saiba mais sobre como usar a try...with expressão para tratamento de exceções. |
A try...finally expressão |
Saiba mais sobre como a expressão F# try...finally permite que você execute o código de limpeza mesmo que um bloco de código gere uma exceção. |
A use palavra-chave |
Saiba mais sobre as palavras-chave use e using , que podem controlar a inicialização e a liberação de recursos. |
Declarações | Saiba mais sobre a assert expressão, que é um recurso de depuração que você pode usar para testar uma expressão. Após falha no modo de depuração, uma asserção gera uma caixa de diálogo de erro do sistema. |
Tipos e inferência de tipo
A tabela a seguir mostra artigos de referência que descrevem como os tipos e a inferência de tipos funcionam em F#.
Título | Descrição |
---|---|
tipos de | Saiba mais sobre os tipos usados em F# e como os tipos F# são nomeados e descritos. |
Tipos básicos | Saiba mais sobre os tipos fundamentais que são usados em F#. Ele também fornece os tipos .NET correspondentes e os valores mínimo e máximo para cada tipo. |
Tipo de unidade | Saiba mais sobre o unit tipo, que é um tipo que indica a ausência de um valor específico; o unit tipo tem apenas um único valor, que atua como um espaço reservado quando nenhum outro valor existe ou é necessário. |
Abreviações de tipo | Saiba mais sobre abreviações de tipo, que são nomes alternativos para tipos. |
Inferência de tipo | Saiba mais sobre como o compilador F# infere os tipos de valores, variáveis, parâmetros e valores retornados. |
Conversões e conversões | Saiba mais sobre o suporte para conversões de tipo em F#. |
Genéricos | Saiba mais sobre constructos genéricos em F#. |
Generalização Automática | Saiba como o F# generaliza automaticamente os argumentos e tipos de funções para que eles trabalhem com vários tipos quando possível. |
Restrições | Saiba mais sobre restrições que se aplicam a parâmetros de tipo genérico para especificar os requisitos para um argumento de tipo em um tipo ou função genérica. |
Tipos flexíveis | Saiba mais sobre tipos flexíveis. Uma anotação de tipo flexível é uma indicação de que um parâmetro, variável ou valor tem um tipo compatível com o tipo especificado, em que a compatibilidade é determinada por posição em uma hierarquia orientada a objeto de classes ou interfaces. |
Unidades de Medida | Saiba mais sobre unidades de medida. Os valores de ponto flutuante em F# podem ter unidades de medida associadas, que normalmente são usadas para indicar comprimento, volume, massa e assim por diante. |
Byrefs | Saiba mais sobre os tipos byref e byref-like no F#, que são usados para programação de baixo nível. |
Tuplas, listas, coleções, opções
A tabela a seguir mostra artigos de referência que descrevem os tipos com suporte do F#.
Título | Descrição |
---|---|
Tuplas | Saiba mais sobre tuplas, que são agrupamentos de valores não nomeados, mas ordenados, de tipos possivelmente diferentes. |
Coleções | Uma visão geral dos tipos de coleção funcional F#, incluindo tipos de matrizes, listas, sequências (seq), mapas e conjuntos. |
Listas | Saiba mais sobre listas. Uma lista em F# é uma série ordenada e imutável de elementos do mesmo tipo. |
Opções | Saiba mais sobre o tipo de opção. Uma opção em F# é usada quando um valor pode ou não existir. Uma opção tem um tipo subjacente e pode conter um valor desse tipo ou pode não ter um valor. |
Matrizes | Saiba mais sobre matrizes. As matrizes são sequências mutáveis de tamanho fixo, baseado em zero e mutáveis de elementos de dados consecutivos, todos do mesmo tipo. |
Sequências | Saiba mais sobre sequências. Uma sequência é uma série lógica de elementos de um só tipo. Elementos de sequência individuais só são computados se necessário, portanto, a representação pode ser menor do que uma contagem de elementos literal indica. |
Expressões de sequência | Saiba mais sobre expressões de sequência, que permitem gerar sequências de dados sob demanda. |
Células de referência | Saiba mais sobre células de referência, que são locais de armazenamento que permitem criar variáveis mutáveis com semântica de referência. |
Registros e uniões discriminadas
A tabela a seguir mostra artigos de referência que descrevem definições de tipo de união de registro e discriminadas com suporte pelo F#.
Título | Descrição |
---|---|
Registros | Saiba mais sobre registros. Os registros representam agregações simples de valores nomeados, opcionalmente com membros. |
Registros Anônimos | Saiba como construir e usar registros anônimos, um recurso de linguagem que ajuda na manipulação de dados. |
Uniões discriminadas | Saiba mais sobre uniões discriminadas, que dão suporte a valores que podem ser um de uma variedade de casos nomeados, cada um com valores e tipos possivelmente diferentes. |
Estruturas | Saiba mais sobre structs, que são tipos de objetos compactos que podem ser mais eficientes do que uma classe para tipos que têm uma pequena quantidade de dados e comportamento simples. |
Enumerations | Enumerações são tipos que têm um conjunto definido de valores nomeados. Você pode usá-los no lugar de literais para tornar o código mais legível e mantenedível. |
Programação de objeto
A tabela a seguir mostra artigos de referência que descrevem a programação de objeto F#.
Título | Descrição |
---|---|
Classes | Saiba mais sobre classes, que são tipos que representam objetos que podem ter propriedades, métodos e eventos. |
Interfaces | Saiba mais sobre interfaces, que especificam conjuntos de membros relacionados que outras classes implementam. |
classes abstratas | Saiba mais sobre classes abstratas, que são classes que deixam alguns ou todos os membros sem simplificação, para que as implementações possam ser fornecidas por classes derivadas. |
Extensões de tipo | Saiba mais sobre extensões de tipo, que permitem adicionar novos membros a um tipo de objeto definido anteriormente. |
Representantes | Saiba mais sobre delegados, que representam uma chamada de função como um objeto. |
Herança | Saiba mais sobre a herança, que é usada para modelar a relação "is-a", ou subtipagem, na programação orientada a objetos. |
Membros | Saiba mais sobre os membros dos tipos de objeto F#. |
Parâmetros e argumentos | Saiba mais sobre o suporte à linguagem para definir parâmetros e passar argumentos para funções, métodos e propriedades. Ele inclui informações sobre como passar por referência. |
Sobrecarga de operador | Saiba mais sobre como sobrecarregar operadores aritméticos em uma classe ou tipo de registro e no nível global. |
Expressões de objeto | Saiba mais sobre expressões de objeto, que são expressões que criam novas instâncias de um tipo de objeto anônimo criado dinamicamente com base em um tipo de base, interface ou conjunto de interfaces existentes. |
Assíncrono, tarefas e preguiçosos
A tabela a seguir lista tópicos que descrevem expressões assíncronas, de tarefa e lentas do F#.
Título | Descrição |
---|---|
Expressões assíncronas | Saiba mais sobre expressões assíncronas, que permitem que você escreva código assíncrono de uma maneira muito próxima da maneira como você escreveria naturalmente código síncrono. |
Expressões de tarefa | Saiba mais sobre expressões de tarefa, que são uma maneira alternativa de escrever código assíncrono usado ao interoperar com o código .NET que consome ou produz tarefas do .NET. |
Expressões lentas | Saiba mais sobre expressões lentas, que são cálculos que não são avaliados imediatamente, mas são avaliados quando o resultado é realmente necessário. |
Expressões de computação e consultas
A tabela a seguir lista tópicos que descrevem as consultas e expressões de computação F#.
Título | Descrição |
---|---|
Expressões de computação | Saiba mais sobre expressões de computação em F#, que fornecem uma sintaxe conveniente para escrever cálculos que podem ser sequenciados e combinados usando constructos e associações de fluxo de controle. Eles podem ser usados para gerenciar dados, controle e efeitos colaterais em programas funcionais. |
Expressões de consulta | Saiba mais sobre expressões de consulta, um recurso de linguagem que implementa o LINQ for F# e permite que você escreva consultas em uma fonte de dados ou coleção enumerável. |
Atributos, reflexão, aspas e formatação de texto sem formatação
A tabela a seguir lista artigos que descrevem recursos reflexivos de F#, incluindo atributos, aspas nameof
e formatação de texto sem formatação.
Título | Descrição |
---|---|
Atributos | Saiba como os atributos F# permitem que os metadados sejam aplicados a um constructo de programação. |
nameof | Saiba mais sobre o nameof operador, um recurso de metaprogramação que permite produzir o nome de qualquer símbolo no código-fonte. |
Informações do chamador | Saiba mais sobre como usar atributos de argumento de informações de chamador para obter informações de chamador de um método. |
Identificadores de linha de origem, arquivo e caminho | Saiba mais sobre os identificadores __LINE__ , __SOURCE_DIRECTORY__ e __SOURCE_FILE__ quais são valores internos que permitem acessar o número da linha de origem, o diretório e o nome do arquivo em seu código. |
Aspas de código | Saiba mais sobre aspas de código, um recurso de linguagem que permite que você gere e trabalhe com expressões de código F# programaticamente. |
Formatação de texto sem formatação | Saiba como usar sprintf e outra formatação de texto sem formatação em aplicativos e scripts F#. |
Provedores de tipos
A tabela a seguir lista artigos que descrevem provedores de tipo F#.
Título | Descrição |
---|---|
Provedores de tipos | Saiba mais sobre provedores de tipos e encontre links para instruções passo a passo sobre como usar os provedores de tipos internos para acessar bancos de dados e serviços Web. |
Criar um provedor de tipo | Saiba como criar seus próprios provedores de tipo F#examinando vários provedores de tipos simples que ilustram os conceitos básicos. |
Referência da API da Biblioteca Principal do F#
A referência da API F# Core Library (FSharp.Core) é a referência para todos os namespaces, módulos, tipos e funções da Biblioteca Principal do F#.
Tabela de referência
A tabela a seguir mostra artigos de referência que fornecem tabelas de palavras-chave, símbolos e literais que são usados como tokens em F#.
Título | Descrição |
---|---|
Referência de palavra-chave | Contém links para informações sobre todas as palavras-chave da linguagem F#. |
Referência de símbolo e operador | Contém uma tabela de símbolos e operadores que são usados em F#. |
Constructos com suporte do compilador
A tabela a seguir lista os tópicos que descrevem constructos especiais com suporte do compilador.
Tópico | Descrição |
---|---|
Opções do compilador | Descreve as opções de linha de comando para o compilador F#. |
Diretivas do compilador | Descreve as diretivas do processador e as diretivas do compilador compatíveis com o compilador F#. |