-
C# 시작하기프로그래밍 언어/c# 2025. 4. 15. 22:59반응형
💡 이 문서는 The Rust Programming Language를 보고, C# 기준으로 재구성하였습니다.
C# 설치하기
C#
을 설치하기 위해서dotnet
CLI 도구를 설치합니다.dotnet
도구는 빌드 도구이자, 패키지 매니저이며C#
개발을 위한 필수적인 도구입니다.리눅스 환경에 설치하기
이 문서에서는
kali-linux
배포판 기준으로 진행합니다. 다음 명령어를 입력하여 설치합니다.$ sudo apt-get update && \ sudo apt-get install -y dotnet-sdk-9.0
⚠️ 이 단계에서 설치가 진행되지 않을 수 있습니다.
현재 운영체제가 기본적으로 dotnet-sdk-9.0 패키지 레포지토리를 인식하지 못할 수 도 있습니다.$ wget https://packages.microsoft.com/config/debian/12/packages-microsoft-prod.deb -O packages-microsoft-prod.deb $ sudo dpkg -i packages-microsoft-prod.deb $ rm packages-microsoft-prod.deb
설치가 완료된 후,
dotnet --version
명령어를 입력하면 현재 버전을 확인할 수 있습니다.$ dotnet --version 9.0.203
업데이트 및 설치
다음 명령어들로
donet
도구를 업데이트 및 삭제할 수 있습니다.업데이트:
$ sudo apt-get update $ sudo apt-get upgraade
삭제:
$ sudo apt-get remove --purge dotnet-sdk-9.0
Hello World!
💡 적절한 코드 에디터 혹은 IDE를 설치하세요!
이 절을 진행하기 이전에, 러스트 개발하기 좋은 코드 에디터 혹은 IDE를 설치해주세요. 대표적인 코드 에디터로는 VSCode, Cursor AI , Wind Surf 가 있고, IDE로는 Visual Studio, Rider 가 있습니다. 이 문서에서는 코드 에디터 Cursor AI 기준으로 합니다.Hello World!
란 프로그래밍 언어를 배울 때, 관례적으로 만드는, 단순히Hello World!
라는 문자열을 출력하는 프로그램입니다.프로젝트 생성하기
먼저
dotnet new
명령어를 이용하여 프로젝트를 생성하세요!# 프로젝트 모음 디렉토리 생성 $ mkdir ~/projects # 프로젝트 모음 디렉토리로 이동 $ cd ~/projects # 콘솔 기반 Hello World! 프로젝트 생성 $ dotnet new console --use-program-main -o HelloWorld The template "Console App" was created successfully. Processing post-creation actions... Restoring /home/gurumee/Workspaces/studies/TheCSharapProgrammingLanguage/HelloWorld/HelloWorld.csproj: Restore succeeded. # Hello World! 프로젝트 이동 $ cd HelloWorld
이제 생성된 프로젝트가 어떻게 구성되었는지 확인해보겠습니다.
# 디렉토리 구성 확인 $ tree . ├── HelloWorld.csproj ├── obj │ ├── HelloWorld.csproj.nuget.dgspec.json │ ├── HelloWorld.csproj.nuget.g.props │ ├── HelloWorld.csproj.nuget.g.targets │ ├── project.assets.json │ └── project.nuget.cache └── Program.cs 2 directories, 7 files
여기서 중요한 파일 몇 가지만 짚고 넘어가겠습니다.
HelloWorld.csproj
: 프로젝트 설정 파일입니다. 현재C#
버전 정보 등의 프로젝트 설정들이 들어있습니다.Program.cs
: 메인 함수가 존재하고 있는C#
파일입니다..cs
확장자는C#
으로 작성된 코드 파일을 의미합니다.
이제 생성된
Program.cs
코드를 확인해봅시다.namespace HelloWorld; class Program { static void Main(string[] args) { Console.WriteLine("Hello, World!"); } }
Hello World! 프로그램 뜯어보기
Program.cs
코드를 분석해봅시다. 먼저 살펴볼 부분은 다음과 같습니다.namespace HelloWorld;
이 부분은
C#
에서 네임스페이스를 지정한 부분입니다.C#
에서 네임스페이스는 고유한 공간을 의미하며, 대규모 프로젝트에서 클래스 및 메서드 이름의 범위를 제어하는 단위입니다.그 다음은 클래스입니다.
// ... class Program { // ... }
C#
의 모든 것은 클래스로 이루어져 있습니다. 클래스는 개체의 속성을 나타내는 필드들과 행동을 정의하는 메소드들을 가질 수 있습니다. 여기서는Main
메소드를 정의하기 위해서 꼭 필요한 구문이다 정도로 이해하고 넘어가도 좋습니다.이제
Main
메소드입니다.// ... static void Main(string[] args) { Console.WriteLine("Hello, World!"); } }
여기서 중요한 부분 몇 가지만 짚고 넘어가겠습니다. 먼저,
Main
메소드는 프로그램의 시작 지점입니다. 아주 특별한 메소드로써, 프로젝트 내에서 단 하나의 클래스에서만 유일하게 존재할 수 있습니다. 메소드는 일종의 작은 코드 조각으로써, 구문들로 구성되어 있다고 합니다.Main
메소드는 Hello, World! 문자열을 출력합니다.Console.WriteLine
은 콘솔 객체의 메소드로 주어진 문자열을 출력하는 메소드입니다. 메소드 이름 뒤에는()
를 꼭 써야 합니다. 이 안에는 인자를 전달합니다. 이 메소드의 인자로"Hello, World!"
문자열이 전달되었습니다.Main
메소드의 인자string[] args
는 특별한 인자입니다. 프로그램 실행 인자로써 외부에서 데이터를 전달 받을 때 사용합니다. 지금은 그냥 이런 것이 있다 정도로만 이해해주시면 됩니다.마지막으로 구문 뒤에는 반드시
;
이 붙습니다.C# 프로젝트 실행하기
이제 프로젝트를 실행해보도록 하겠습니다. 터미널에
dotnet run
이란 명령어를 입력하면 프로젝트를 실행할 수 있습니다.# 프로젝트 실행 $ dotnet run Hello, World!
C# 프로젝트 빌드하기
이제 마지막으로 프로젝트를 빌드하고 실행해보겠습니다. 터미널에
dotnet build
명령어를 입력하면 프로젝트를 빌드할 수 있습니다.$ dotnet build Restore complete (0.3s) HelloWorld succeeded (0.1s) → bin/Debug/net9.0/HelloWorld.dll Build succeeded in 0.6s
기본적으로 빌드하면,
bin/Debug/net9.0
폴더에HelloWorld
란 실행 파일이 생성됩니다. 이제 실행 파일을 생성해봅시다.$ ./bin/Debug/net9.0/HelloWorld Hello, World!
결국
dotnet run
이란 명령어는 빌드 후 실행 파일을 실행하는 것을 축약한 명령어입니다.728x90반응형