C# 환경설정, 프로젝트 생성
설치
visual studio Community 2022 ( Community 최신버전 설치)
.net, 언리얼, 유니티 선택
시작하기
콘솔 앱 -> 경로, 파일명 지정, 체크해제 : 솔루션 및 프로젝트를 같은 디렉터리에 배치(D) (C#파일만 생기도록)
-> .NET 6.0 확인, 최상위 문 사용 안함 을 체크 ( 최상위 문은 .NET 9.0버전부터 있는 것인데 이번 학습에 사용하지 않음)
최상위 문 참고 : https://coding-abc.kr/151
최상위문
최상위 문(Top-level statements) 기능의 활성화 여부에 따라 코드 작성 방식이 달라집니다.
✅ 최상위 문 사용 (체크 안 함, 기본값)
최상위 문(Top-level statements) 기능을 사용하면 Main 메서드 없이도 프로그램의 진입점을 정의할 수 있습니다.
이 방식은 특히 간단한 콘솔 애플리케이션을 작성할 때 유용합니다.
예제 코드 (최상위 문 사용)
Console.WriteLine("Hello, World!");
- Main 메서드를 명시적으로 작성하지 않아도 됩니다.
- using 지시문도 생략 가능하며, 일부 using 문은 자동 포함됩니다.
- 코드가 간결해지고 초보자가 빠르게 학습할 수 있도록 도와줍니다.
컴파일러 내부에서 변환되는 형태 (숨겨진 Main 메서드)
internal class Program
{
private static void Main()
{
Console.WriteLine("Hello, World!"); // 파일에 이 코드만 있음
}
}
즉, 최상위 문을 사용하면 컴파일러가 자동으로 Main 메서드를 생성해 줍니다.
❌ 최상위 문 사용 안 함 (체크 O)
이 옵션을 활성화하면 기존의 전통적인 C# 방식대로 명시적인 Main 메서드가 필요합니다.
예제 코드 (최상위 문 사용 안 함)
using System;
class Program
{
static void Main()
{
Console.WriteLine("Hello, World!");
}
}
- Main 메서드를 명시적으로 작성해야 합니다.
- using System; 등을 직접 추가해야 합니다.
- 구조가 명확해지지만, 간단한 프로그램을 작성할 때는 코드가 길어질 수 있습니다.
언제 어떤 방식을 사용할까?
최상위 문 사용 (체크 안 함) | 최상위 문 사용 안 함 (체크 O) | |
장점 | 코드가 간결함, 초보자에게 유용 | 전통적인 명시적 구조, 복잡한 애플리케이션에 적합 |
단점 | 복잡한 프로그램에는 부적합 | 코드가 길어질 수 있음 |
추천 사용 사례 | 간단한 콘솔 앱, 교육용 프로젝트 | 대규모 프로젝트, 명확한 진입점이 필요한 경우 |
- 간단한 콘솔 앱 → 최상위 문 사용 (체크 안 함)
- 전통적인 방식이 필요한 경우 → 최상위 문 사용 안 함 (체크 O)
대부분의 경우 최상위 문을 사용하는 것이 코드가 간결해져서 유리하지만, 팀의 코드 스타일이나 프로젝트 성격에 따라 선택하면 됩니다.
프로젝트 생성 시 using이 없는 이유
전역using 에서 주로 사용되는 using을 이미 포함시켰습니다.
코드에는 없지만 이미 추가된 샹탸입니다.
프로젝트 > 속성 > 전역using
빌드
F6 이나 빌드메뉴나 초록색 세모(.csproj파일선택)
결과
"프로젝트\프로젝트명과똑같은파일\bin\Debug\net9.0\ConsoleApp1.exe" 실행파일 생성
자동완성 기능
namespace ConsoleApp1;
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Hello, World!");
//1. 클레스, 메서드, 변수 등의 이름을 입려할 때 일부를 입력하고 Tab 키를 누르면 자동완성이 됩니다.
// Console.WriteLine()을 입력시 Console까지만 입력하고 Tab 키를 누르면 자동완성이 됩니다.
Console.WriteLine("C#");
// 메서드나 변수를 입력하는 도중에 Ctrl + Space를 눌러 IntelliSense를 호출하면, 해당 메서드나 변수에 대한 정보와 예제를 볼 수 있습니다.
Console.WriteLine("IntelliSense");
// 2. 코드 템플릿을 사용하여 코드를 빠르게 작성할 수 있습니다.
// ex) for문 작성 시, for 키워드를 입력하고, 두번 tap키를 누르면 for문의 기본적인 코드 템플릿이 자동으로 생성됩니다.
for (int i = 0; i < 10; i++)
{
Console.WriteLine(i);
}
}
}
출력
Hello, World!
C#
IntelliSense
0
1
2
3
4
5
6
7
8
9
※Tip
◆ [주석의 종류]
주석의 종류에는 한줄 주석(//), 여러줄 주석(/**/), 자동완성 주석(///)이 있습니다.
자동완성 주석은 사용하고자 하는 함수의 이름 위에 /// 를 치면 자동으로 입력됩니다.
◆ [주석 단축키]
맥에서는 Command + /
윈도우에서는 Ctrl + /
◆ 터미널에서 .net 명령어 모음 보기
dotnet
◆ .csproj 파일이 손상되었거나 존재하지 않아 빌드가 되지 않는 경우에는 1. 파일을 백업하고, 2. 프로젝트를 생성니다.
실행 경로는 ~.csproj 파일이 있는 곳에서
PS V:\Sparta\sparta-C#\ConsoleApp1>
여기서 ConsoleApp1는 프로젝트 이름
1. 프로젝트 새로 생성하는 명령어 : dotnet new
2. 프로젝트 폴더 안의 프로젝터이름과 동일한 폴더 안에 ( cd 프로젝터이름)
3. .csproj파일 만들기 : dotnet restore
4. 빌드 : dotnet build
dotnet new console -n 프로젝트이름
cd 프로젝트이름
dotnet restore
dotnet build
✅ 작업 절차 (한 줄 요약 포함)
1. 프로젝트 새로 생성
터미널 경로를 프로젝트를 만들고 싶은 상위 폴더에서 실행해야 합니다.
dotnet new console -n 프로젝트이름
- -n 옵션은 프로젝트 이름 설정
- 이 명령어는 프로젝트이름이라는 폴더를 만들고, 그 안에 .csproj 파일 포함한 기본 C# 콘솔 앱 파일들을 생성
2. 해당 프로젝트 폴더로 이동
cd 프로젝트이름
- ConsoleApp1이 예시 프로젝트 이름이라면, cd ConsoleApp1 실행
3. 패키지 복원 (필수는 아님)
dotnet restore
- .csproj에 명시된 NuGet 패키지(외부 라이브러리 등)를 복원
- 최신 .NET SDK에서는 dotnet build 시 자동으로 restore가 되긴 함
4. 빌드 실행
dotnet build
- 코드를 컴파일하고 실행 파일을 생성
🔁 전체 흐름 예시
dotnet new console -n ConsoleApp1
cd ConsoleApp1
dotnet restore
dotnet build