
이 강의는 C# 기초 강의 2강입니다.
1강에서는
C#이 어떤 언어인지와
어떤 분야에서 활용되는지를 살펴봤습니다.
이번 강의에서는
C#이 단독으로 실행되는 언어가 아니라,
.NET이라는 실행 환경 위에서 동작한다는 점을
명확히 이해하는 것이 목표입니다.
이 개념은
앞으로 배우게 될 모든 C# 문법의
기초가 됩니다.
C#은 단독으로 실행되지 않는다
가장 먼저
분명히 짚고 가야 할 사실이 있습니다.
C# 코드는
그 자체로는
실행되지 않습니다.
반드시
.NET 환경이 있어야
동작합니다.
역할을 나누면 다음과 같습니다.
- C#
→ 코드를 작성하는 프로그래밍 언어 - .NET
→ 그 코드를 실행해 주는 플랫폼
이 구조를 이해하는 것이
이번 강의의 핵심입니다.
.NET은 C# 프로그램 실행을 담당하는 기반이다
.NET은
단순히 실행만 담당하지 않습니다.
C# 프로그램이 동작하는 데
필요한 다양한 기능을
함께 제공합니다.
대표적으로 다음과 같습니다.
- 프로그램 실행을 위한 런타임
- 기본 클래스 라이브러리 제공
- 메모리 자동 관리(GC)
- 파일 입출력 기능
- 콘솔 출력과 입력 기능
우리가 많은 기능을
별도 구현 없이 사용할 수 있는 이유는
.NET이 이 기능들을
기본으로 제공하기 때문입니다.
C#과 .NET의 관계는 역할 분담으로 이해하는 것이 좋다
처음 배우는 단계에서는
다음처럼 이해하면 가장 쉽습니다.
- C#은
→ 무엇을 할지 작성하는 언어다 - .NET은
→ 그 내용을 실제로 실행하는 환경이다
이 둘은
서로 다른 역할을 가지며,
함께 사용될 때
비로소 프로그램이 됩니다.
C# 코드는 중간 단계를 거쳐 실행된다
C# 코드는
작성 즉시 실행되지 않습니다.
다음과 같은 과정을 거칩니다.
- 개발자가 C# 코드를 작성한다
- 컴파일러가 코드를 중간 언어(IL)로 변환한다
- .NET 런타임이 IL을 실행한다
이 구조 덕분에
C#은 안정성과 생산성을
모두 확보할 수 있습니다.
실제 코드에서 .NET의 존재를 확인해 보자
아래는
가장 기본적인 C# 콘솔 프로그램입니다.
using System;
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Hello World!");
}
}
이 코드에서 사용된
System과 Console은
모두 .NET이 제공하는 기능입니다.
즉,
우리는 이미
.NET 환경 위에서
C# 코드를 실행하고 있습니다.
using System은 .NET 기능을 사용하겠다는 선언이다
using System;은
System 네임스페이스를
사용하겠다는 의미입니다.
System 네임스페이스에는
다음과 같은 기본 기능들이 포함되어 있습니다.
- Console
- String
- Math
- DateTime
앞으로 배우게 될
기초 문법 대부분은
이 영역과 연결됩니다.
.NET은 C#만을 위한 플랫폼이 아니다
중요한 사실 하나 더 있습니다.
.NET은
C# 전용 플랫폼이 아닙니다.
다음 언어들도
.NET 위에서 실행됩니다.
- C#
- F#
- VB.NET
즉,
- C#은 .NET 생태계에 속한 언어다
이렇게 이해하면
전체 구조가 훨씬 명확해집니다.
지금 단계에서 반드시 기억해야 할 핵심
이번 강의에서는
아래 네 가지만
확실히 기억하면 충분합니다.
- C#은 프로그래밍 언어다
- .NET은 실행 환경이자 플랫폼이다
- C# 코드는 .NET 위에서 실행된다
- 기본 기능은 .NET이 제공한다
이번 강의 핵심 정리
이번 강의에서 꼭 기억해야 할 내용입니다.
- C#은 단독으로 실행되지 않는다
- .NET이 있어야 C# 프로그램이 동작한다
- using System은 .NET 기능 사용 선언이다
- C#과 .NET의 역할을 구분해서 이해해야 한다
다음 강의에서는 개발 환경을 직접 준비한다
다음 강의에서는
Visual Studio를 설치하고
C# 개발 환경을 설정합니다.
이제
이론을 넘어
실제 코딩을 시작할 준비를 합니다.
'⚙️ C# > 💻 C# 기초' 카테고리의 다른 글
| [C#] 4강 첫 번째 C# 프로그램 작성해보기 (0) | 2026.03.04 |
|---|---|
| [C#] 3강 Visual Studio 설치와 개발 환경 설정 (0) | 2026.03.03 |
| [C#] 1강 C#이란 무엇인가 (0) | 2026.03.01 |