Заметка
Доступ к этой странице требует авторизации. Вы можете попробовать войти в систему или изменить каталог.
Доступ к этой странице требует авторизации. Вы можете попробовать сменить директорию.
В этом разделе приведена ссылка на F#, язык программирования с несколькими парадигмами, предназначенный для .NET. F# поддерживает функциональные, объектно-ориентированные и императивные модели программирования.
Упорядочение кода F#
В следующей таблице показаны справочные статьи, связанные с организацией кода F#.
| Название | Описание |
|---|---|
| Пространства имен | Сведения о поддержке пространства имен в F#. Пространство имен позволяет упорядочивать код в области связанных функциональных возможностей, позволяя прикрепить имя к группировке элементов программы. |
| Модули | Сведения о модулях. Модуль F# похож на пространство имен, а также может включать значения и функции. Группирование кода в модулях помогает держать связанный код вместе и помогает избежать конфликтов имен в программе. |
open Объявления |
Узнайте, как open работает. Объявление open указывает модуль, пространство имен или тип, элементы которого можно ссылаться без использования полного имени. |
| Signatures | Сведения о подписях и файлах подписей. Файл подписи содержит сведения о общедоступных подписях набора элементов программы F#, таких как типы, пространства имен и модули. Его можно использовать для указания специальных возможностей этих элементов программы. |
| Контроль доступа | Сведения об управлении доступом в F#. Управление доступом означает объявление того, какие клиенты могут использовать определенные элементы программы, такие как типы, методы, функции и т. д. |
| XML-документация | Узнайте о поддержке создания файлов документации из комментариев XML-документов, также известных как три косых примечаний. Документацию можно создать из комментариев кода в F#, как и на других языках .NET. |
Литералы и строки
В следующей таблице показаны справочные статьи, описывающие литералы и строки в F#.
| Название | Описание |
|---|---|
| Литералы | Узнайте о синтаксисе для литеральных значений в F# и о том, как указать сведения о типе для литералы F#. |
| строки | Узнайте о строках в F#. Тип string представляет неизменяемый текст в виде последовательности символов Юникода.
string является псевдонимом для System.String в .NET. |
| Интерполированные строки | Узнайте о интерполированных строках, специальной форме строки, которая позволяет внедрять выражения F# непосредственно внутри них. |
Значения и функции
В следующей таблице показаны справочные статьи, описывающие понятия языка, связанные с значениями, letпривязками и функциями.
| Название | Описание |
|---|---|
| Значения | Узнайте о значениях, которые являются неизменяемыми значениями, имеющими определенный тип; значения могут быть целочисленными или числами с плавающей запятой, символами или текстом, списками, последовательности, массивами, кортежами, дискриминированными объединениями, записями, типами классов или значениями функций. |
| Функции | Функции — это основная единица выполнения программы на любом языке программирования. Функция F# имеет имя, может иметь параметры и принимать аргументы и иметь текст. F# также поддерживает функциональные конструкции программирования, такие как обработка функций как значений, использование неименованных функций в выражениях, композиция функций для формирования новых функций, курриированных функций и неявного определения функций путем частичного применения аргументов функций. |
| Выражения функций | Узнайте, как использовать ключевое слово F# fun для определения лямбда-выражения, которое является анонимной функцией. |
Циклы и условные выражения
В следующей таблице перечислены статьи, описывающие циклы и условные условия F#.
| Название | Описание |
|---|---|
Условные выражения: if...then...else |
Узнайте о if...then...else выражении, которое выполняет различные ветви кода, а также оценивается по-разному в зависимости от логического выражения. |
Циклы: for...in выражение |
Узнайте о for...in выражении, цикливной конструкции, которая используется для итерации совпадений шаблона в перечисленной коллекции, такой как выражение диапазона, последовательность, список, массив или другая конструкция, поддерживающая перечисление. |
Циклы: for...to выражение |
Узнайте о for...to выражении, которое используется для итерации в цикле по диапазону значений переменной цикла. |
Циклы: while...do выражение |
Узнайте о while...do выражении, которое используется для выполнения итеративного выполнения (циклирования) в то время как указанное условие теста имеет значение true. |
Сопоставление с шаблоном
В следующей таблице показаны справочные статьи, описывающие основные понятия языка.
| Название | Описание |
|---|---|
| Сопоставление с шаблоном | Узнайте о шаблонах, которые являются правилами преобразования входных данных и используются в F#. Вы можете сравнить данные с шаблоном, разложить данные на составные части или извлечь информацию из данных различными способами. |
| выражения для сопоставления | Узнайте о match выражении, которое предоставляет ветвление, основанное на сравнении выражения с набором шаблонов. |
| Активные шаблоны | Узнайте о активных шаблонах. Активные шаблоны позволяют определять именованные секции, которые подразделяют входные данные. Активные шаблоны можно использовать для разбиения данных в настраиваемом режиме для каждой секции. |
Обработка исключений.
В следующей таблице показаны справочные статьи, описывающие основные понятия языка, связанные с обработкой исключений.
| Название | Описание |
|---|---|
| обработка исключений | Содержит сведения о поддержке обработки исключений в F#. |
try...with Выражение |
Узнайте, как использовать выражение для обработки исключений try...with . |
try...finally Выражение |
Узнайте, как выражение F# try...finally позволяет выполнять код очистки, даже если блок кода создает исключение. |
Ключевое use слово |
Узнайте о ключевых словах и usingвозможностях use управления инициализацией и выпуском ресурсов. |
| Утверждения | Узнайте о assert выражении, которое является функцией отладки, которую можно использовать для тестирования выражения. При сбое в режиме отладки утверждение создает диалоговое окно системной ошибки. |
Типы и вывод типов
В следующей таблице показаны справочные статьи, описывающие, как работают типы и вывод типов в F#.
| Название | Описание |
|---|---|
| Типы | Узнайте о типах, используемых в F# и о том, как называются и описываются типы F#. |
| базовых типов | Узнайте о основных типах, используемых в F#. Он также предоставляет соответствующие типы .NET и минимальные и максимальные значения для каждого типа. |
| Тип единицы | Узнайте о unit типе, который является типом, указывающим на отсутствие определенного значения; unit тип имеет только одно значение, которое выступает в качестве заполнителя, если другое значение не существует или не требуется. |
| Аббревиаций типов | Узнайте об сокращенных типах, которые являются альтернативными именами для типов. |
| Вывод типов | Узнайте, как компилятор F# определяет типы значений, переменных, параметров и возвращаемых значений. |
| Приведение и преобразование | Сведения о поддержке преобразований типов в F#. |
| Обобщения | Узнайте о универсальных конструкциях в F#. |
| Автоматическое обобщение | Узнайте, как F# автоматически обобщает аргументы и типы функций, чтобы они работали с несколькими типами, когда это возможно. |
| Ограничения | Сведения о ограничениях, применяемых к параметрам универсального типа, чтобы указать требования к аргументу типа в универсальном типе или функции. |
| Гибкие типы | Узнайте о гибких типах. Заметка гибкого типа — это указание на то, что параметр, переменная или значение имеют тип, совместимый с указанным типом, где совместимость определяется позицией в объектно-ориентированной иерархии классов или интерфейсов. |
| Единицы измерения | Узнайте о единицах измерения. Значения с плавающей запятой в F# могут иметь связанные единицы измерения, которые обычно используются для указания длины, объема, массы и т. д. |
| Byrefs | Узнайте о типах byref и byref-like в F#, которые используются для низкоуровневого программирования. |
Кортежи, списки, коллекции, параметры
В следующей таблице показаны справочные статьи, описывающие типы, поддерживаемые F#.
| Название | Описание |
|---|---|
| Кортежи | Узнайте о кортежах, которые представляют собой группировки неназванных, но упорядоченных значений, возможно, различных типов. |
| коллекции | Обзор типов функциональных коллекций F#, включая типы массивов, списков, последовательностей (seq), карт и наборов. |
| Списки | Узнайте о списках. Список в F# — это упорядоченный, неизменяемый ряд элементов одного типа. |
| Параметры | Сведения о типе параметра. Параметр в F# используется, если значение может существовать или может не существовать. Параметр имеет базовый тип и может содержать значение этого типа или не иметь значения. |
| Массивы | Узнайте о массивах. Массивы представляют собой фиксированный размер, отсчитываемые от нуля последовательности элементов данных, все один и тот же тип. |
| последовательности | Узнайте о последовательностях. Последовательность — это логический ряд элементов всех одного типа. Отдельные элементы последовательности вычисляются только при необходимости, поэтому представление может быть меньше, чем число литеральных элементов указывает. |
| Выражения последовательности | Узнайте о выражениях последовательности, которые позволяют создавать последовательности данных по запросу. |
| Ссылочные ячейки | Узнайте о ссылочных ячейках, которые являются расположениями хранения, которые позволяют создавать изменяемые переменные с семантикой ссылок. |
Записи и дискриминированные профсоюзы
В следующей таблице приведены справочные статьи, описывающие определения типов профсоюзов, которые описывают определения типов записей и дискриминации, поддерживаемые F#.
| Название | Описание |
|---|---|
| Записи | Узнайте о записях. Записи представляют простые агрегаты именованных значений, при необходимости с элементами. |
| Анонимные записи | Узнайте, как создавать и использовать анонимные записи, функцию языка, которая помогает управлять данными. |
| Дискриминированные профсоюзы | Узнайте о дискриминированных профсоюзах, которые обеспечивают поддержку значений, которые могут быть одним из различных именованных случаев, каждый из которых может иметь разные значения и типы. |
| структуры | Узнайте о структуры, которые представляют собой компактные типы объектов, которые могут быть более эффективными, чем класс для типов с небольшим объемом данных и простым поведением. |
| перечисления | Перечисления — это типы, имеющие определенный набор именованных значений. Их можно использовать вместо литерала, чтобы сделать код более читаемым и поддерживаемым. |
Программирование объектов
В следующей таблице показаны справочные статьи, описывающие программирование объектов F#.
| Название | Описание |
|---|---|
| Классы | Узнайте о классах, которые представляют объекты, которые могут иметь свойства, методы и события. |
| Интерфейсы | Узнайте об интерфейсах, которые указывают наборы связанных элементов, которые реализуют другие классы. |
| абстрактные классы | Узнайте об абстрактных классах, которые являются классами, оставляющими некоторые или все члены неисправными, чтобы реализации могли предоставляться производными классами. |
| Расширения типов | Узнайте о расширениях типов, которые позволяют добавлять новые члены в ранее определенный тип объекта. |
| делегаты | Узнайте о делегатах, представляющих вызов функции в качестве объекта. |
| Наследование | Узнайте о наследовании, которое используется для моделирования отношения "is-a" или подтипирования в объектно-ориентированном программировании. |
| Участники | Узнайте о членах типов объектов F#. |
| Параметры и аргументы | Узнайте о поддержке языка для определения параметров и передачи аргументов в функции, методы и свойства. В ней содержатся сведения о передаче по ссылке. |
| Перегрузка оператора | Узнайте, как перегружать арифметические операторы в классе или типе записей и на глобальном уровне. |
| Выражения объектов | Узнайте о выражениях объектов, которые представляют собой выражения, которые создают новые экземпляры динамически созданного, анонимного типа объекта, основанного на существующем базовом типе, интерфейсе или наборе интерфейсов. |
Асинхронные, задачи и отложенные
В следующей таблице перечислены разделы, описывающие асинхронные выражения F#, задачи и отложенные выражения.
| Название | Описание |
|---|---|
| Асинхронные выражения | Узнайте о асинхронных выражениях, которые позволяют писать асинхронный код таким образом, что очень близко к тому, как вы естественно напишете синхронный код. |
| Выражения задач | Узнайте о выражениях задач, которые являются альтернативным способом написания асинхронного кода, используемого при взаимодействии с кодом .NET, который использует или создает задачи .NET. |
| Отложенные выражения | Узнайте о отложенных выражениях, которые являются вычислениями, которые не оцениваются немедленно, но оцениваются, когда результат действительно необходим. |
Выражения вычислений и запросы
В следующей таблице перечислены разделы, описывающие выражения и запросы вычислений F#.
| Название | Описание |
|---|---|
| Выражения вычислений | Узнайте о выражениях вычислений в F#, которые предоставляют удобный синтаксис для написания вычислений, которые можно выполнить последовательно и объединить с помощью конструкций потока управления и привязок. Их можно использовать для управления данными, контролем и побочными эффектами в функциональных программах. |
| Выражения запросов | Узнайте о выражениях запросов, языковой компонент, реализующий LINQ для F# и позволяющий создавать запросы к источнику данных или перечисленной коллекции. |
Атрибуты, отражение, кавычки и форматирование обычного текста
В следующей таблице перечислены статьи, описывающие отражающие функции F#, включая атрибуты, кавычки и nameofформатирование обычного текста.
| Название | Описание |
|---|---|
| Атрибуты | Узнайте, как атрибуты F# позволяют применять метаданные к конструкции программирования. |
| nameof | Узнайте о nameof операторе, функции метапрограммирования, которая позволяет создавать имя любого символа в исходном коде. |
| Сведения о вызывающем объекте | Узнайте, как использовать атрибуты аргумента сведений о вызывающем объекте для получения сведений о вызывающем объекте из метода. |
| Идентификаторы исходной строки, файла и пути | Сведения об идентификаторах и __SOURCE_DIRECTORY____SOURCE_FILE__встроенных значениях__LINE__, которые позволяют получить доступ к номеру исходной строки, каталогу и имени файла в коде. |
| Кавычки кода | Узнайте о кавычках кода, функции языка, которая позволяет создавать и работать с выражениями кода F#программными средствами. |
| Форматирование обычного текста | Узнайте, как использовать спринт и другое форматирование обычного текста в приложениях и скриптах F#. |
Поставщики типов
В следующей таблице перечислены статьи, описывающие поставщиков типов F#.
| Название | Описание |
|---|---|
| Поставщики типов | Узнайте о поставщиках типов и найдите ссылки на пошаговые руководства по использованию встроенных поставщиков типов для доступа к базам данных и веб-службам. |
| Создание поставщика типов | Узнайте, как создать собственные поставщики типов F#, проверив несколько простых поставщиков типов, которые иллюстрируют основные понятия. |
Справочник по API библиотеки F#
Справочник по API библиотеки F# Core (FSharp.Core) — это справочник по всем пространствам имен библиотеки F# Core, модулям, типам и функциям.
Справочные таблицы
В следующей таблице показаны справочные статьи, предоставляющие таблицы ключевых слов, символов и литералы, которые используются в качестве маркеров в F#.
| Название | Описание |
|---|---|
| Справочник по ключевым словам | Содержит ссылки на сведения обо всех ключевых словах языка F#. |
| Справочник по символам и операторам | Содержит таблицу символов и операторов, используемых в F#. |
Поддерживаемые компилятором конструкции
В следующей таблице перечислены разделы, описывающие специальные конструкции, поддерживаемые компилятором.
| Тема | Описание |
|---|---|
| Параметры компилятора | Описывает параметры командной строки для компилятора F#. |
| Директивы компилятора | Описывает директивы процессора и директивы компилятора, поддерживаемые компилятором F#. |