Visual Studio에서 F# 시작하기

Visual Studio에서 F# 시작하기

Visual Studio의 통합 개발 환경(IDE, Integrated Development Environment)에서 F#을 어떻게 시작하는지 차근차근 살펴볼게요. 프로젝트 하나 만들고, 간단한 F# 코드를 작성한 뒤 실행까지 해보면서 F#의 기본기를 잡는 내용이에요. F#을 처음 만지는 분도 쉽게 따라올 수 있도록 구성되어 있어요.

출처: https://learn.microsoft.com/en-us/dotnet/fsharp/get-started/get-started-visual-studio

본문

F#은 Visual Studio 통합 개발 환경(IDE)에서 지원돼요. 먼저 F#을 지원하는 Visual Studio가 설치되어 있는지만 확인하면 돼요. 아직 F# 지원이 없는 상태라면, F# 지원을 포함해 Visual Studio를 설치하고 시작하세요.

콘솔 애플리케이션 만들기 (Create a console application)

Visual Studio에서 가장 기초적인 프로젝트 중 하나가 콘솔 앱이에요. 만드는 방법을 하나씩 따라가 볼게요.

  1. Visual Studio를 엽니다.
  2. 시작 창에서 Create a new project(새 프로젝트 만들기)를 선택합니다.
  3. Create a new project 페이지의 Language 목록에서 **F#**을 선택합니다.
  4. Console App 템플릿을 선택하고 Next를 누릅니다.
  5. Configure your new project 페이지의 Project name 상자에 이름을 입력하고 Next를 선택합니다.
  6. Additional information 화면에서 기본 .NET 버전을 그대로 두거나 원하는 버전을 선택한 다음, Create를 누릅니다.

Visual Studio가 새 F# 프로젝트를 만들어 주고, Solution Explorer 창에서 확인할 수 있어요.

코드 작성하기 (Write the code)

이제 실제 코드를 조금 써 보면서 시작해 볼게요. Program.fs 파일이 열려 있는지 확인하고, 파일 내용을 다음 코드로 바꿔주세요.

module HelloSquare

let square x = x * x

[<EntryPoint>]
let main argv =
    printfn "%d squared is: %d!" 12 (square 12)
    0 // Return an integer exit code

위 코드는 square라는 함수를 정의하는데요, x라는 입력을 받아서 그 값에 자기 자신을 곱해요. F#은 **형식 추론(Type inference)**을 사용하기 때문에 x의 형식을 직접 지정할 필요가 없어요. F# 컴파일러는 곱셈이 유효한 형식을 이해하고, square가 어떻게 호출되는지에 따라 x의 형식을 알아서 정해줘요. square 위에 마우스를 올려 보면 다음과 같이 표시될 거예요.

val square: x: int -> int

이것이 바로 함수의 **형식 시그니처(type signature)**예요. "square는 정수 x를 받아서 정수를 만들어 내는 함수다"라고 읽으면 돼요. 지금은 컴파일러가 squareint 형식을 잠정적으로 부여해 둔 상태예요.

또 하나의 함수 main이 정의되어 있는데, EntryPoint 특성(attribute)으로 표시되어 있어요. 이 특성은 프로그램 실행이 바로 여기서 시작되어야 한다고 F# 컴파일러에 알려주는 역할을 해요. C 스타일 프로그래밍 언어들과 같은 관례를 따르는데, 명령줄 인자를 이 함수로 전달할 수 있고 정수 코드(보통 0)를 반환해요.

바로 이 진입점 함수 main 안에서 square를 인자 12로 호출하고 있어요. 그러면 F# 컴파일러는 square의 형식을 int -> int(정수를 받아 정수를 만드는 함수)로 정해요. 그다음 printfn 호출은 형식 문자열(format string)을 사용해 결과를(그리고 줄바꿈을) 출력하는 함수예요. 이 형식 문자열은 C 스타일 프로그래밍 언어와 비슷한데, 여기서는 전달된 인자, 즉 12(square 12)에 대응하는 매개변수(%d)를 가지고 있어요.

코드 실행하기 (Run the code)

Ctrl+F5를 누르면 코드를 실행하고 결과를 볼 수 있어요. 또는 최상위 메뉴 모음에서 Debug > Start Without Debugging을 선택해도 돼요. 두 방법 모두 디버깅 없이 프로그램을 실행해요.

Visual Studio가 열어준 콘솔 창에 다음 출력이 찍히게 돼요.

12 squared is: 144!

축하해요! Visual Studio에서 첫 F# 프로젝트를 만들었고, 값을 계산해서 출력하는 F# 함수를 작성하고, 프로젝트를 실행해 결과까지 확인해 봤어요.

다음 단계 (Next steps)

아직 안 해 봤다면 F#의 핵심 기능들을 다루는 **Tour of F#**을 확인해 보세요. F#이 할 수 있는 일들을 훑어볼 수 있고, 복사해서 Visual Studio에서 바로 실행해 볼 수 있는 풍부한 코드 예제도 함께 담겨 있어요.

더 알아보기 (Learn more)