Поделиться через


Visual F#

F# — это язык программирования, обеспечивающий поддержку функционального программирования, а также объектно-ориентированного и императивного (процедурного) программирования.Visual F# позволяет разрабатывать приложения F# и расширять другие приложения платформы .NET Framework с помощью кода F#.F# — это член первого класса языков платформы .NET Framework, по многим параметрам напоминающий семейство языков функционального программирования ML.

Данная версия Visual F# содержит версию 3.0 языка F#.Чтобы узнать о новых возможностях, см. раздел MSBuild.

Мультипарадигмальный язык

F# поддерживает следующие конструкции функционального программирования.

  • Функции в качестве значений — позволяет гибко управлять функциями.Дополнительные сведения см. в разделе Функции как значения первого класса (F#).

  • Объединение и конвейеризация функций — позволяет объединять функции для создания новых функций и упрощения кодирования последующих операций с данными.Дополнительные сведения см. в разделе Функции (F#).

  • Определение типа — устраняет необходимость явно вызывать типы без ущерба для безопасности типа.

  • Автоматическое обобщение — позволяет повторно использовать код, упрощая написание кода, который работает с множеством разных типов без дополнительных усилий.

  • Поддержка сопоставления шаблонов, упрощающая сложный код условия, и размеченные объединения, которые оптимизируются для использования с сопоставлением шаблонов.

  • Типы коллекций для работы с неизменяемыми данными, включая типы list и sequence.

  • Лямбда-выражения — важны для многих конструкций функционального программирования.

  • Частичное применение аргументов функций — обеспечивает возможность неявного создания новых функций из существующих.Дополнительные сведения см. в разделе Функции (F#).

  • Кавычки кода — функция, позволяющая программно манипулировать выражениями языка F#.

F# поддерживает объектно-ориентированное программирование и следующие возможности платформы .NET Framework.

  • Объектная модель платформы .NET Framework, в том числе объекты, имеющие свойства, методы и события; полиморфизм или виртуальные функции; наследование и интерфейсы.

  • Инкапсуляция данных или отделение открытого интерфейса типа от реализации.

  • Перегрузка операторов, хорошо работающая с универсальными шаблонами и встроенными простыми типами.

  • Расширения типа, позволяющие легко расширить существующий тип без дополнительных непроизводительных действий по созданию нового производного типа.

  • Выражения объектов, позволяющие при необходимости неявно определять небольшие объекты в выражениях вместо объявления нового типа и создания экземпляра объекта.

  • Доступ к платформе .NET Framework и любым сборкам управляемого кода.

  • Доступ к машинному коду посредством вызова неуправляемого кода.

Visual F# в Visual Studio 2012 расширяет язык F# для поддержки информационно-насыщенного программирования в F#.Эта технология позволяет программировать непосредственно в больших пространствах данных и служб, которые часто сегодня преобладают в промышленном и веб программировании, таких как базы данных, веб-службы, веб-каналы данных и брокеры данных.

Информационно-насыщенное программирование на F# сфокусировано на коде и может использоваться как в скриптах, так и в проектах.Оно также позволяет указывать подключения к базе данных SQL Server и OData непосредственно в коде, определяя строгие типы с помощью IntelliSense.Механизм является расширяемым, позволяя записывать или ссылки на новые поставщики для данных, кода и технологий SharePoint, онтологий как службы Интернета, инструментария управления Windows (WMI), XML и другие источники информации.Технически информационно-насыщенное программирование в F# включает в себя механизмы F# Type Providers, F# Query Expressions и набор встроенных поставщиков типа для базы данных, OData и программирование веб-служб.

Дополнительные сведения см. в разделе MSBuild.

F# также поддерживает все основные конструкции императивного программирования, такие как конструкции ветвления и циклические конструкции.

Библиотеки F#

Visual F# содержит также библиотеку F#, которая имеет много полезных функций и типов.К ним относятся интерфейсы API для таких коллекций, как lists, arrays, maps, sets и sequences.Библиотека F# также поддерживает отражение, события и форматированный ввод-вывод.

Кроме того, библиотека F# поддерживает асинхронные рабочие процессы для обеспечения параллельных вычислений и механизмы для связи между параллельными рабочими процессами.Дополнительные сведения см. в разделах Асинхронные рабочие потоки (F#), Класс Control.Async (F#) и Класс Control.MailboxProcessor<'Msg> (F#).

FSharp.Core.dll — основная библиотека F#.Дополнительные библиотеки можно найти в пакете PowerPack языка F#, доступном на веб-сайте Microsoft F# Developer Center.

Отдельно скомпилированные основные версии библиотеки F# существуют, чтобы поддерживать различные версии .NET Framework.Версия 2.0 поддерживает .NET Framework 2.0, 3,0 и 3.5, а 4.0 поддерживает платформу .NET Framework 4 и более поздние версии платформы .NET Framework.Кроме того, доступны для загрузки основные версии библиотеки F# для Silverlight.

Интерактивные сценарии

Visual F# предоставляет интерактивное окно, интегрированное в среду разработки Visual Studio.Данное окно позволяет вводить код F#, который сразу же компилируется и выполняется.Это позволяет легко создавать прототипы конструкций кода и проверять код при его написании.В интерактивном окне запускается средство интерактивного режима F# (fsi.exe), которое можно также запускать из командной строки.Эта функция предоставляет возможность использовать язык F# в качестве скриптового языка.Дополнительные сведения см. в разделе Справочник по F# Interactive (fsi.exe).

Интеграция с Visual Studio

F# интегрирован с Visual Studio и поддерживает следующие компоненты и возможности.

Связанные разделы

Заголовок

Описание

MSBuild

Содержит сведения о том, что нового в текущем выпуске Visual F#.

Портал разработки в Visual F#

Портал, предоставляющий доступ к разнообразной информации о языке F#.

Использование Visual Studio для написания программ F#

Содержит сведения об использовании языка F# в интегрированной среде разработки (IDE), в том числе о параметрах проектов и об IntelliSense.

Справочник по языку F#

Содержит справочные сведения о языке F#, включая сведения о ключевых словах, символах и операторах.

Справочные материалы по основной библиотеке F#

Содержит справочные сведения об основной библиотеке языка F#, FSharp.Core.dll.

Ссылка на компилятор F# (fsc.exe)

Содержит сведения о компиляторе F# (fsc.exe), включая сведения о параметрах компилятора.

Справочник по F# Interactive (fsi.exe)

Содержит сведения об интепретаторе F# Interactive (fsi.exe), включая сведения о параметрах командной строки и диагностических сообщениях, связанных с этим интепретатором.

Примеры и пошаговые руководства по Visual F#

Содержит ссылки на примеры использования F# и пошаговые руководства.

См. также

Другие ресурсы

Visual Studio