다음을 통해 공유


C# 및 .NET Framework

업데이트: 2007년 11월

C#은 쉽게 사용할 수 있도록 설계된 강력하고 안전한 프로그래밍 언어입니다. .NET 환경의 일부로 포함된 C#은 .NET Framework와 자연스럽게 연계되어 작동하며, 이를 통해 초고속 서버에서 초소형 모바일 장치에 이르기까지 임의의 대상에 대한 안정적인 소프트웨어를 새로운 방식으로 작성할 수 있습니다.

전통적인 C 및 C++ 코드와 달리 C# 코드는 기계어로 직접 컴파일되지 않습니다. C# 컴파일러는 C# 소스 코드를 어셈블리라고 하는 MSIL(Microsoft Intermediate Language) 파일로 변환합니다. 네이티브 기계어 코드를 만들 수도 있는 Visual C++, Visual J# 및 Visual Basic을 비롯하여 CLR(공용 언어 런타임)을 기반으로 빌드되는 모든 언어에서는 MSIL 파일을 생성합니다. 생성된 MSIL은 대부분의 경우 언어에 상관없이 사실상 동일하므로 다양한 언어로 작성된 다양한 프로그램 구성 요소를 쉽게 결합할 수 있습니다.

다음 다이어그램에서는 사용자가 작성한 C# 코드가 실행 가능한 응용 프로그램으로 변환되는 방법을 보여 줍니다.

C# 소스 코드에서 컴퓨터 실행으로

MSIL 파일은 표준 .exe 또는 .dll 파일로 표시되지만 Windows 플랫폼에서 직접 실행되는 대신 CLR을 통해 실행됩니다. CLR에서는 MSIL 프로그램을 필요에 따라 기계어 코드로 컴파일합니다. 이러한 과정을 JIT(Just-In-Time) 컴파일이라고 합니다. 그런 다음 이 기계어 코드가 직접 실행됩니다. 실제로 필요한 시점이 되기 전까지는 기계어 코드로 변환되지 않는 하드웨어 중립적인 중간 코드를 생성하므로 안전성과 보안 및 이식성이 모두 향상됩니다. 이러한 과정은 대부분 프로그래머에게 숨겨집니다. C# 프로그램은 다른 모든 프로그램과 동일한 방식으로 컴파일, 실행 및 배포됩니다. 컴퓨터에 .NET Framework가 설치되어 있는 한 C# 프로그램은 다른 응용 프로그램과 마찬가지로 실행됩니다.

경우에 따라서는 C# 어셈블리어를 기계어로 영구히 변환하는 것이 좋습니다. 이렇게 하려면 Visual Studio와 함께 제공된 네이티브 이미지 생성기(ngen.exe) 도구를 사용합니다.

.NET Framework에 특화되어 설계된 언어인 C#은 .NET 개발에 특히 적합합니다. 근본적으로 .NET Framework 클래스 라이브러리는 텍스트 및 그래픽 표시 기능, 데이터 저장을 위한 컬렉션, XML 파일과 데이터베이스를 조작하기 위한 도구, 웹 사이트 액세스를 위한 메서드 등 응용 프로그램 개발을 위해 사용자가 필요로 할 수 있는 거의 모든 기능을 응용 프로그램에 제공하는 광범위한 클래스 컬렉션입니다.

.NET Framework는 네임스페이스별로 기능이 구성되어 있으며, 각 네임스페이스는 일반적으로 여러 개의 클래스를 포함하고 있습니다. 예를 들어, System.IO 네임스페이스에는 파일을 읽고 쓰기 위한 여러 클래스가 포함되어 있고 System.Text 네임스페이스에는 문자열 데이터를 처리하는 여러 클래스가 포함되어 있습니다. 다양한 네임스페이스 및 각 네임스페이스에 포함된 클래스에 대해 알려면 .NET Framework 클래스 라이브러리 참조 문서를 살펴보십시오.

관련 항목

참고 항목

작업

방법: 60초 안에 C# 응용 프로그램 빌드

개념

Visual C# Express 기능

참조

다른 언어와 C# 비교

기타 리소스

Visual C# Express

Visual C# Express 시작