다음을 통해 공유


Visual F#

F#은 일반적인 개체 지향 및 명령형(프로시저) 프로그래밍뿐 아니라 함수형 프로그래밍을 지원하는 프로그래밍 언어입니다. Visual F# 제품에서는 F# 응용 프로그램을 개발하고 F# 코드를 사용하여 다른 .NET Framework 응용 프로그램을 확장할 수 있도록 지원합니다. F#은 .NET Framework 언어의 첫 번째 클래스 멤버이며 ML 계열의 함수형 언어와 매우 비슷합니다.

이 버전의 Visual F#는 F# 3.1 버전의 언어를 포함합니다.

다중 패러다임 언어

F#에서는 다음과 같은 함수형 프로그래밍 구문을 지원합니다.

  • 함수를 값으로 취급하여 함수를 유연하게 조작할 수 있습니다. 자세한 내용은 함수를 고급 값으로 상승(F#)을 참조하십시오.

  • 함수 컴퍼지션 및 파이프라인을 통해 기존 함수를 연결하여 새 함수를 만들고 연속적인 데이터 연산의 코딩을 단순화할 수 있습니다. 자세한 내용은 함수(F#)를 참조하십시오.

  • 형식 유추가 가능하므로 형식을 명시적으로 호출하지 않더라도 형식 안전성을 그대로 유지할 수 있습니다.

  • 자동 일반화를 통해 서로 다른 다양한 형식에 사용 가능한 코드를 쉽게 만들어 코드 재사용률을 높일 수 있습니다.

  • 패턴 일치를 지원하므로 복잡한 조건부 코드를 간소화할 수 있고, 구별된 공용 구조체를 패턴 일치에 최적화하여 사용할 수 있습니다.

  • 목록시퀀스 형식을 포함한 변경 불가능한 데이터에 사용할 수 있는 컬렉션 형식을 지원합니다.

  • 다양한 함수형 프로그래밍 구문에서 중요한 역할을 하는 람다 식을 지원합니다.

  • 함수 인수를 부분 적용하여 기존 함수에서 새 함수를 암시적으로 만들 수 있습니다. 자세한 내용은 함수(F#)를 참조하십시오.

  • F# 식을 프로그래밍 방식으로 조작하는 데 사용할 수 있는 기능인 코드 인용을 지원합니다.

F#에서는 다음과 같은 개체 지향 프로그래밍 및 .NET Framework 기능을 지원합니다.

  • 속성과 메서드 및 이벤트가 있는 개체, 다형성 또는 가상 함수, 상속, 인터페이스 등을 포함한 .NET Framework 개체 모델을 지원합니다.

  • 형식의 공용 인터페이스를 구현에서 분리하는 데이터 캡슐화를 지원합니다.

  • 제네릭 및 기본 제공 형식에 사용할 수 있는 연산자 오버로드를 지원합니다.

  • 파생 형식을 새로 만드는 데 따른 추가 부담 없이 기존 형식을 쉽게 확장할 수 있는 형식 확장을 지원합니다.

  • 새 형식을 선언하고 개체를 인스턴스화하는 대신 필요에 따라 식에서 작은 개체를 암시적으로 정의하는 데 사용할 수 있는 개체 식을 지원합니다.

  • .NET Framework 및 관리 코드 어셈블리에 대한 액세스를 제공합니다.

  • 플랫폼 호출을 통해 네이티브 코드에 액세스할 수 있도록 지원합니다.

Visual F#는 다양한 정보 활용이 가능한 프로그래밍을 지원합니다. 이 기술을 통해 데이터베이스, 웹 서비스, 웹 데이터 피드 및 데이터 브로커와 같이 오늘날 종종 기업과 웹 프로그래밍을 지배하는 다양한 데이터와 서비스 공간에서 직접 프로그래밍할 수 있습니다.

F# 정보가 풍부한 프로그래밍은 코드 중심이며 스크립트와 프로젝트 모두에서 사용할 수 있습니다. 코드에서 직접 OData 및 SQL Server 데이터베이스 연결을 지정하지만 IntelliSense 지원으로 강력한 형식을 제공할 수도 있습니다. 메커니즘은 확장 가능하여 SharePoint, 웹 온톨로지, WMI(Windows Management Instrumentation), XML 및 기타 정보 소스와 같은 데이터, 코드 및 서비스 기술을 위한 새로운 공급자를 작성하거나 참조할 수 있습니다. 기술적으로 정보가 풍부한 F# 프로그래밍은 F# 형식 공급자 메커니즘, F# 쿼리 식 및 데이터베이스, OData와 웹 서비스 프로그래밍을 위한 기본 제공 형식 공급자 집합을 포함합니다.

또한 F#에서는 분기 구문과 루프 구문 같은 일반적인 명령적 프로그래밍 구문을 모두 지원합니다.

F# 라이브러리

Visual F# 제품에서는 여러 가지 유용한 함수와 형식이 포함된 F# 라이브러리도 제공합니다. 여기에는 목록, 배열, , 집합, 시퀀스 등과 같은 컬렉션에 대한 API가 포함되어 있습니다. F# 라이브러리에서는 리플렉션, 이벤트 및 서식이 지정된 I/O도 지원합니다.

또한 F# 라이브러리에서는 병렬 계산을 지원하는 비동기 워크플로와 병렬 워크플로 사이의 통신을 위한 메커니즘도 지원합니다. 자세한 내용은 비동기 워크플로(F#), Control.Async 클래스(F#)Control.MailboxProcessor<'Msg> 클래스(F#)를 참조하십시오.

기본 F# 라이브러리는 FSharp.Core.dll입니다. 추가 라이브러리는 Microsoft F# 개발자 센터 웹 사이트에서 다운로드할 수 있는 F# PowerPack을 통해 제공됩니다.

다른 버전의 .NET Framework를 지원하는 F# 핵심 라이브러리에 대해 개별적으로 컴파일된 버전이 있습니다. 2.0 버전은 .NET Framework 2.0, 3.0 및 3.5를 지원하고 4.0 버전은 .NET Framework의 .NET Framework 4 이상의 버전을 지원합니다. 또한, Silverlight의 F# 핵심 라이브러리 버전을 다운로드 시 사용할 수도 있습니다.

대화형 스크립팅

Visual F#에서는 Visual Studio 개발 환경에 통합되는 대화형 창을 제공합니다. 이 창을 사용하면 F# 코드를 입력하고 해당 코드를 즉시 컴파일 및 실행할 수 있습니다. 이렇게 하면 손쉽게 코드의 프로토타입을 만들 수 있고 코드를 작성하면서 테스트를 함께 진행할 수 있습니다. 대화형 창에서 실행되는 F# 대화형 도구인 fsi.exe를 명령줄에서 실행할 수도 있습니다. 이 기능을 사용하면 F#을 스크립팅 언어로 사용할 수도 있습니다. 자세한 내용은 F# Interactive(fsi.exe) 참조를 참조하십시오.

Visual Studio와의 통합

F#은 Visual Studio와 통합되었으며 다음을 지원합니다.

관련 항목

제목

설명

Visual F# 개발 포털

F#에 대한 다양한 정보를 제공합니다.

Visual Studio를 사용하여 F# 프로그램 작성

프로젝트 설정과 IntelliSense를 포함하여 IDE(통합 개발 환경)에서 F#을 사용하는 방법을 설명합니다.

F# 언어 참조

키워드, 기호, 연산자 등에 대한 정보를 포함하여 F# 언어에 대한 참조 정보를 제공합니다.

F# 주요 라이브러리 참조

F# 핵심 라이브러리인 FSharp.Core.dll에 대한 참조 정보를 제공합니다.

F# 컴파일러(fsc.exe) 참조

컴파일러 옵션에 대한 정보를 포함하여 F# 컴파일러, fsc.exe에 대한 참조 정보를 제공합니다.

F# Interactive(fsi.exe) 참조

F# Interactive에 사용되는 명령줄 옵션과 진단 메시지를 포함하여 F# Interactive(fsi.exe)에 대해 설명합니다.

Visual F# 샘플 및 연습

F# 샘플 및 연습에 대한 링크를 제공합니다.

참고 항목

개념

Visual Studio 2013 시작